From 899f99f81132d203c2b3726b96c1b3f50c0233ec Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Dec 2023 06:59:00 +0000 Subject: [PATCH 01/30] Bump golang.org/x/net from 0.10.0 to 0.17.0 Bumps [golang.org/x/net](https://github.com/golang/net) from 0.10.0 to 0.17.0. - [Commits](https://github.com/golang/net/compare/v0.10.0...v0.17.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] --- go.mod | 10 +++++----- go.sum | 20 ++++++++++---------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/go.mod b/go.mod index ea7d90778..f383faff6 100644 --- a/go.mod +++ b/go.mod @@ -24,8 +24,8 @@ require ( github.com/stretchr/testify v1.8.3 github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954 github.com/wk8/go-ordered-map v1.0.0 - golang.org/x/crypto v0.9.0 - golang.org/x/sys v0.8.0 // indirect + golang.org/x/crypto v0.14.0 + golang.org/x/sys v0.13.0 // indirect golang.org/x/time v0.0.0-20201208040808-7e3f01d25324 google.golang.org/protobuf v1.30.0 ) @@ -77,9 +77,9 @@ require ( gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 // indirect gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 // indirect golang.org/x/arch v0.3.0 // indirect - golang.org/x/net v0.10.0 // indirect - golang.org/x/term v0.8.0 // indirect - golang.org/x/text v0.9.0 // indirect + golang.org/x/net v0.17.0 // indirect + golang.org/x/term v0.13.0 // indirect + golang.org/x/text v0.13.0 // indirect gopkg.in/square/go-jose.v2 v2.3.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index cefe53266..291d72819 100644 --- a/go.sum +++ b/go.sum @@ -435,8 +435,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191206172530-e9b2fee46413/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.9.0 h1:LF6fAI+IutBocDJ2OT0Q1g8plpYljMZ4+lty+dsqw3g= -golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0= +golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc= +golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -497,8 +497,8 @@ golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.10.0 h1:X2//UzNDwYmtCLn7To6G58Wr6f5ahEAQgKNzv9Y951M= -golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -551,17 +551,17 @@ golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.8.0 h1:EBmGv8NaZBZTWvrbjNoL6HVt+IVy3QDQpJs7VRIw3tU= -golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.8.0 h1:n5xxQn2i3PC0yLAbjTpNT85q/Kgzcr2gIoX9OrJUols= -golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= +golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek= +golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE= -golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190921001708-c4c64cad1fd0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= From f9e72110c36069ff78093e419f6b022dc8478a48 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 18 Dec 2023 23:55:58 +0000 Subject: [PATCH 02/30] Bump golang.org/x/crypto from 0.14.0 to 0.17.0 Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.14.0 to 0.17.0. - [Commits](https://github.com/golang/crypto/compare/v0.14.0...v0.17.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- go.mod | 8 ++++---- go.sum | 16 ++++++++-------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/go.mod b/go.mod index f383faff6..168390e10 100644 --- a/go.mod +++ b/go.mod @@ -24,8 +24,8 @@ require ( github.com/stretchr/testify v1.8.3 github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954 github.com/wk8/go-ordered-map v1.0.0 - golang.org/x/crypto v0.14.0 - golang.org/x/sys v0.13.0 // indirect + golang.org/x/crypto v0.17.0 + golang.org/x/sys v0.15.0 // indirect golang.org/x/time v0.0.0-20201208040808-7e3f01d25324 google.golang.org/protobuf v1.30.0 ) @@ -78,8 +78,8 @@ require ( gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 // indirect golang.org/x/arch v0.3.0 // indirect golang.org/x/net v0.17.0 // indirect - golang.org/x/term v0.13.0 // indirect - golang.org/x/text v0.13.0 // indirect + golang.org/x/term v0.15.0 // indirect + golang.org/x/text v0.14.0 // indirect gopkg.in/square/go-jose.v2 v2.3.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 291d72819..9a97083b5 100644 --- a/go.sum +++ b/go.sum @@ -435,8 +435,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191206172530-e9b2fee46413/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc= -golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= +golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= +golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -551,17 +551,17 @@ golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE= -golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek= -golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= +golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc= +golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4= +golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= -golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190921001708-c4c64cad1fd0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= From 2485e657176ddbc1e4865b3f92cb0565435bd861 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 7 Dec 2023 06:59:12 +0000 Subject: [PATCH 03/30] Bump crypto-js from 4.1.1 to 4.2.0 in /dashboard/web Bumps [crypto-js](https://github.com/brix/crypto-js) from 4.1.1 to 4.2.0. - [Commits](https://github.com/brix/crypto-js/compare/4.1.1...4.2.0) --- updated-dependencies: - dependency-name: crypto-js dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- dashboard/web/package.json | 2 +- dashboard/web/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dashboard/web/package.json b/dashboard/web/package.json index f447baa4c..dbc3a8c24 100644 --- a/dashboard/web/package.json +++ b/dashboard/web/package.json @@ -15,7 +15,7 @@ "@nuxtjs/axios": "^5.13.6", "@nuxtjs/pwa": "^3.3.5", "@nuxtjs/vuetify": "^1.12.3", - "crypto-js": "^4.1.1", + "crypto-js": "^4.2.0", "decimal.js": "^10.3.1", "lodash": "^4.17.21", "nuxt": "^2.15.8", diff --git a/dashboard/web/yarn.lock b/dashboard/web/yarn.lock index 30e8e1559..674ee537f 100644 --- a/dashboard/web/yarn.lock +++ b/dashboard/web/yarn.lock @@ -3900,10 +3900,10 @@ crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" -crypto-js@^4.1.1: - version "4.1.1" - resolved "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf" - integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw== +crypto-js@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.2.0.tgz#4d931639ecdfd12ff80e8186dba6af2c2e856631" + integrity sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q== crypto-random-string@^2.0.0: version "2.0.0" From fd3048c889e4ead647a5ad59ede5bff0db2943d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 00:38:10 +0000 Subject: [PATCH 04/30] Bump ip from 1.1.5 to 1.1.9 in /dashboard/web Bumps [ip](https://github.com/indutny/node-ip) from 1.1.5 to 1.1.9. - [Commits](https://github.com/indutny/node-ip/compare/v1.1.5...v1.1.9) --- updated-dependencies: - dependency-name: ip dependency-type: indirect ... Signed-off-by: dependabot[bot] --- dashboard/web/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dashboard/web/yarn.lock b/dashboard/web/yarn.lock index 674ee537f..b622870a9 100644 --- a/dashboard/web/yarn.lock +++ b/dashboard/web/yarn.lock @@ -6003,9 +6003,9 @@ invariant@^2.2.2: loose-envify "^1.0.0" ip@^1.1.5: - version "1.1.5" - resolved "https://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" - integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + version "1.1.9" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.9.tgz#8dfbcc99a754d07f425310b86a99546b1151e396" + integrity sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ== is-absolute-url@^2.0.0: version "2.1.0" From 4fd555c658983e7179799575ebafafd9248e35cd Mon Sep 17 00:00:00 2001 From: Yilun Date: Thu, 29 Feb 2024 02:49:22 -0800 Subject: [PATCH 05/30] Change ci badge from travis-ci to github actions Signed-off-by: Yilun --- .travis.yml | 4 ---- README.md | 4 ++-- 2 files changed, 2 insertions(+), 6 deletions(-) delete mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 668850aef..000000000 --- a/.travis.yml +++ /dev/null @@ -1,4 +0,0 @@ -language: go - -go: - - 1.13 diff --git a/README.md b/README.md index e5a1ced2b..5e7516cde 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ ### *Official Go implementation of NKN full node.*
-[![GitHub license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![Go Report Card](https://goreportcard.com/badge/github.com/nknorg/nkn)](https://goreportcard.com/report/github.com/nknorg/nkn) [![Build Status](https://travis-ci.org/nknorg/nkn.svg?branch=master)](https://travis-ci.org/nknorg/nkn) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](#contributing) +[![GitHub license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![Go Report Card](https://goreportcard.com/badge/github.com/nknorg/nkn)](https://goreportcard.com/report/github.com/nknorg/nkn) [![Build Status](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml/badge.svg)](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](#contributing) ### Dev Status: V2 line, Production (Stable and Feature-Complete) --- @@ -99,7 +99,7 @@ This command should be run once every time you update the code base. ### Building from source -To build from source, you need a properly configured Go environment (lookup the required version within [go.mod](https://github.com/nknorg/nkn/blob/master/go.mod#L3), and +To build from source, you need a properly configured Go environment (lookup the required version within [go.mod](https://github.com/nknorg/nkn/blob/master/go.mod#L3), and see [Go Official Installation Documentation](https://golang.org/doc/install) for install instructions). Build the source code with make From 9afba598bf69b376dcbfc49aa96745853a9a892b Mon Sep 17 00:00:00 2001 From: Yilun Date: Thu, 29 Feb 2024 03:15:24 -0800 Subject: [PATCH 06/30] Regenerate dashboard yarn.lock using official npm registry Signed-off-by: Yilun --- dashboard/web/yarn.lock | 11426 ++++++++-------- web/200.html | 6 +- web/_nuxt/053da87.js | 1 - web/_nuxt/0bef078.js | 1 + web/_nuxt/1bda8e9.js | 1 - web/_nuxt/20192fe.js | 1 + web/_nuxt/28dc56b.js | 1 - web/_nuxt/2a9d932.js | 1 - web/_nuxt/{9e7acd9.js => 3473120.js} | 2 +- web/_nuxt/360c845.js | 1 + web/_nuxt/3bf9dee.js | 1 - web/_nuxt/43751e2.js | 1 - web/_nuxt/4453a17.js | 1 + web/_nuxt/4870dc8.js | 1 + web/_nuxt/4d17bbe.js | 1 + web/_nuxt/527c0fd.js | 1 + web/_nuxt/5f31938.js | 1 + web/_nuxt/61cf625.js | 1 - web/_nuxt/7ce8642.js | 1 - web/_nuxt/804eed3.js | 1 + web/_nuxt/83bc148.js | 1 - web/_nuxt/8508054.js | 1 - web/_nuxt/8907d22.js | 1 + web/_nuxt/8aae2b3.js | 1 + web/_nuxt/8f38c9a.js | 1 - web/_nuxt/9679639.js | 1 + web/_nuxt/9eb53ed.js | 1 - web/_nuxt/a40565c.js | 1 - web/_nuxt/a9a0706.js | 1 + web/_nuxt/bf82328.js | 1 + web/_nuxt/cd8a821.js | 1 - web/_nuxt/d0ef79d.js | 1 - web/_nuxt/d9fab66.js | 1 - web/_nuxt/db1ba01.js | 1 + web/_nuxt/ec07b71.js | 1 - web/_nuxt/eecab47.js | 1 + web/_nuxt/{2c7ab12.js => fb6f4ec.js} | 2 +- web/_nuxt/ffd1baf.js | 1 + .../fonts/MaterialIcons-Regular.08cefa1.woff | Bin 0 -> 160576 bytes .../fonts/MaterialIcons-Regular.28d729e.eot | Bin 142571 -> 0 bytes .../fonts/MaterialIcons-Regular.2d80174.woff2 | Bin 0 -> 125116 bytes ....ttf => MaterialIcons-Regular.698bd85.ttf} | Bin 345516 -> 347588 bytes .../fonts/MaterialIcons-Regular.824b570.woff | Bin 159604 -> 0 bytes .../fonts/MaterialIcons-Regular.97b9b18.woff2 | Bin 124404 -> 0 bytes .../fonts/MaterialIcons-Regular.af9a28e.eot | Bin 0 -> 143452 bytes web/_nuxt/fonts/fa-brands-400.6205fd0.ttf | Bin 0 -> 207972 bytes web/_nuxt/fonts/fa-brands-400.8d3cabf.woff2 | Bin 0 -> 117372 bytes web/_nuxt/fonts/fa-brands-400.b823fc0.ttf | Bin 181852 -> 0 bytes web/_nuxt/fonts/fa-brands-400.ebb7a12.woff2 | Bin 105536 -> 0 bytes web/_nuxt/fonts/fa-regular-400.0caf4c6.woff2 | Bin 23940 -> 0 bytes web/_nuxt/fonts/fa-regular-400.0d03b1b.ttf | Bin 60520 -> 0 bytes web/_nuxt/fonts/fa-regular-400.adc51aa.ttf | Bin 0 -> 68004 bytes web/_nuxt/fonts/fa-regular-400.e931bc0.woff2 | Bin 0 -> 25452 bytes web/_nuxt/fonts/fa-solid-900.45a265d.ttf | Bin 0 -> 419720 bytes web/_nuxt/fonts/fa-solid-900.59edf72.woff2 | Bin 154228 -> 0 bytes web/_nuxt/fonts/fa-solid-900.e615bbc.ttf | Bin 388460 -> 0 bytes web/_nuxt/fonts/fa-solid-900.fb8184a.woff2 | Bin 0 -> 156496 bytes .../fonts/fa-v4compatibility.2eb7b3e.ttf | Bin 0 -> 10832 bytes .../fonts/fa-v4compatibility.4baccb5.ttf | Bin 10556 -> 0 bytes .../fonts/fa-v4compatibility.afac895.woff2 | Bin 4960 -> 0 bytes .../fonts/fa-v4compatibility.b3049b1.woff2 | Bin 0 -> 4792 bytes .../materialdesignicons-webfont.059ea00.woff | Bin 0 -> 553704 bytes .../materialdesignicons-webfont.4c0f6c2.woff2 | Bin 366844 -> 0 bytes .../materialdesignicons-webfont.a926f7a.woff | Bin 528804 -> 0 bytes ...> materialdesignicons-webfont.ac55aef.ttf} | Bin 1166604 -> 1223172 bytes .../materialdesignicons-webfont.d5cba82.woff2 | Bin 0 -> 381688 bytes ...> materialdesignicons-webfont.de316c4.eot} | Bin 1166824 -> 1223392 bytes web/index.html | 6 +- web/loading/index.html | 6 +- web/nodeStatus/index.html | 6 +- web/overview/index.html | 6 +- web/settings/index.html | 6 +- web/sw.js | 2 +- web/wallet/create/index.html | 6 +- web/wallet/open/index.html | 6 +- web/zh/index.html | 6 +- web/zh/loading/index.html | 6 +- web/zh/nodeStatus/index.html | 6 +- web/zh/overview/index.html | 6 +- web/zh/settings/index.html | 6 +- web/zh/wallet/create/index.html | 6 +- web/zh/wallet/open/index.html | 6 +- 82 files changed, 5786 insertions(+), 5770 deletions(-) delete mode 100644 web/_nuxt/053da87.js create mode 100644 web/_nuxt/0bef078.js delete mode 100644 web/_nuxt/1bda8e9.js create mode 100644 web/_nuxt/20192fe.js delete mode 100644 web/_nuxt/28dc56b.js delete mode 100644 web/_nuxt/2a9d932.js rename web/_nuxt/{9e7acd9.js => 3473120.js} (99%) create mode 100644 web/_nuxt/360c845.js delete mode 100644 web/_nuxt/3bf9dee.js delete mode 100644 web/_nuxt/43751e2.js create mode 100644 web/_nuxt/4453a17.js create mode 100644 web/_nuxt/4870dc8.js create mode 100644 web/_nuxt/4d17bbe.js create mode 100644 web/_nuxt/527c0fd.js create mode 100644 web/_nuxt/5f31938.js delete mode 100644 web/_nuxt/61cf625.js delete mode 100644 web/_nuxt/7ce8642.js create mode 100644 web/_nuxt/804eed3.js delete mode 100644 web/_nuxt/83bc148.js delete mode 100644 web/_nuxt/8508054.js create mode 100644 web/_nuxt/8907d22.js create mode 100644 web/_nuxt/8aae2b3.js delete mode 100644 web/_nuxt/8f38c9a.js create mode 100644 web/_nuxt/9679639.js delete mode 100644 web/_nuxt/9eb53ed.js delete mode 100644 web/_nuxt/a40565c.js create mode 100644 web/_nuxt/a9a0706.js create mode 100644 web/_nuxt/bf82328.js delete mode 100644 web/_nuxt/cd8a821.js delete mode 100644 web/_nuxt/d0ef79d.js delete mode 100644 web/_nuxt/d9fab66.js create mode 100644 web/_nuxt/db1ba01.js delete mode 100644 web/_nuxt/ec07b71.js create mode 100644 web/_nuxt/eecab47.js rename web/_nuxt/{2c7ab12.js => fb6f4ec.js} (98%) create mode 100644 web/_nuxt/ffd1baf.js create mode 100644 web/_nuxt/fonts/MaterialIcons-Regular.08cefa1.woff delete mode 100644 web/_nuxt/fonts/MaterialIcons-Regular.28d729e.eot create mode 100644 web/_nuxt/fonts/MaterialIcons-Regular.2d80174.woff2 rename web/_nuxt/fonts/{MaterialIcons-Regular.24a6611.ttf => MaterialIcons-Regular.698bd85.ttf} (97%) delete mode 100644 web/_nuxt/fonts/MaterialIcons-Regular.824b570.woff delete mode 100644 web/_nuxt/fonts/MaterialIcons-Regular.97b9b18.woff2 create mode 100644 web/_nuxt/fonts/MaterialIcons-Regular.af9a28e.eot create mode 100644 web/_nuxt/fonts/fa-brands-400.6205fd0.ttf create mode 100644 web/_nuxt/fonts/fa-brands-400.8d3cabf.woff2 delete mode 100644 web/_nuxt/fonts/fa-brands-400.b823fc0.ttf delete mode 100644 web/_nuxt/fonts/fa-brands-400.ebb7a12.woff2 delete mode 100644 web/_nuxt/fonts/fa-regular-400.0caf4c6.woff2 delete mode 100644 web/_nuxt/fonts/fa-regular-400.0d03b1b.ttf create mode 100644 web/_nuxt/fonts/fa-regular-400.adc51aa.ttf create mode 100644 web/_nuxt/fonts/fa-regular-400.e931bc0.woff2 create mode 100644 web/_nuxt/fonts/fa-solid-900.45a265d.ttf delete mode 100644 web/_nuxt/fonts/fa-solid-900.59edf72.woff2 delete mode 100644 web/_nuxt/fonts/fa-solid-900.e615bbc.ttf create mode 100644 web/_nuxt/fonts/fa-solid-900.fb8184a.woff2 create mode 100644 web/_nuxt/fonts/fa-v4compatibility.2eb7b3e.ttf delete mode 100644 web/_nuxt/fonts/fa-v4compatibility.4baccb5.ttf delete mode 100644 web/_nuxt/fonts/fa-v4compatibility.afac895.woff2 create mode 100644 web/_nuxt/fonts/fa-v4compatibility.b3049b1.woff2 create mode 100644 web/_nuxt/fonts/materialdesignicons-webfont.059ea00.woff delete mode 100644 web/_nuxt/fonts/materialdesignicons-webfont.4c0f6c2.woff2 delete mode 100644 web/_nuxt/fonts/materialdesignicons-webfont.a926f7a.woff rename web/_nuxt/fonts/{materialdesignicons-webfont.616f0de.ttf => materialdesignicons-webfont.ac55aef.ttf} (90%) create mode 100644 web/_nuxt/fonts/materialdesignicons-webfont.d5cba82.woff2 rename web/_nuxt/fonts/{materialdesignicons-webfont.599efba.eot => materialdesignicons-webfont.de316c4.eot} (90%) diff --git a/dashboard/web/yarn.lock b/dashboard/web/yarn.lock index b622870a9..aaa57a5a9 100644 --- a/dashboard/web/yarn.lock +++ b/dashboard/web/yarn.lock @@ -2,1050 +2,918 @@ # yarn lockfile v1 -"@ampproject/remapping@^2.1.0": - version "2.1.2" - resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz#4edca94973ded9630d20101cd8559cedb8d8bd34" - integrity sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg== - dependencies: - "@jridgewell/trace-mapping" "^0.3.0" - -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" - integrity sha1-Fo2ho26Q2miujUnA8bSMfGJJITo= +"@ampproject/remapping@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== dependencies: - "@babel/highlight" "^7.10.4" + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" -"@babel/code-frame@^7.12.13", "@babel/code-frame@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" - integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.23.5.tgz#9009b69a8c602293476ad598ff53e4562e15c244" + integrity sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA== dependencies: - "@babel/highlight" "^7.16.7" - -"@babel/compat-data@^7.13.11", "@babel/compat-data@^7.14.0", "@babel/compat-data@^7.16.8", "@babel/compat-data@^7.17.0", "@babel/compat-data@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz#078d8b833fbbcc95286613be8c716cef2b519fa2" - integrity sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ== + "@babel/highlight" "^7.23.4" + chalk "^2.4.2" -"@babel/core@^7.1.0": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.10.4.tgz?cache=0&sync_timestamp=1593521230897&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcore%2Fdownload%2F%40babel%2Fcore-7.10.4.tgz#780e8b83e496152f8dd7df63892b2e052bf1d51d" - integrity sha1-eA6Lg+SWFS+N199jiSsuBSvx1R0= - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.4" - "@babel/helper-module-transforms" "^7.10.4" - "@babel/helpers" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - convert-source-map "^1.7.0" - debug "^4.1.0" - gensync "^1.0.0-beta.1" - json5 "^2.1.2" - lodash "^4.17.13" - resolve "^1.3.2" - semver "^5.4.1" - source-map "^0.5.0" - -"@babel/core@^7.12.3", "@babel/core@^7.14.0", "@babel/core@^7.7.2", "@babel/core@^7.8.0": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.17.8.tgz#3dac27c190ebc3a4381110d46c80e77efe172e1a" - integrity sha512-OdQDV/7cRBtJHLSOBqqbYNkOcydOgnX59TZx4puf41fzcVtN3e/4yqY8lMQsK+5X2lJtAdmA+6OHqsj1hBJ4IQ== - dependencies: - "@ampproject/remapping" "^2.1.0" - "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.17.7" - "@babel/helper-compilation-targets" "^7.17.7" - "@babel/helper-module-transforms" "^7.17.7" - "@babel/helpers" "^7.17.8" - "@babel/parser" "^7.17.8" - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.17.3" - "@babel/types" "^7.17.0" - convert-source-map "^1.7.0" +"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" + integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== + +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.23.7", "@babel/core@^7.7.2", "@babel/core@^7.8.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.0.tgz#56cbda6b185ae9d9bed369816a8f4423c5f2ff1b" + integrity sha512-fQfkg0Gjkza3nf0c7/w6Xf34BW4YvzNfACRLmmb7XRLa6XHdR+K9AlJlxneFfWYf6uhOzuzZVTjF/8KfndZANw== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.23.5" + "@babel/generator" "^7.23.6" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helpers" "^7.24.0" + "@babel/parser" "^7.24.0" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.0" + "@babel/types" "^7.24.0" + convert-source-map "^2.0.0" debug "^4.1.0" gensync "^1.0.0-beta.2" - json5 "^2.1.2" - semver "^6.3.0" + json5 "^2.2.3" + semver "^6.3.1" -"@babel/generator@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/generator/download/@babel/generator-7.10.4.tgz#e49eeed9fe114b62fa5b181856a43a5e32f5f243" - integrity sha1-5J7u2f4RS2L6WxgYVqQ6XjL18kM= +"@babel/generator@^7.23.6", "@babel/generator@^7.7.2": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.6.tgz#9e1fca4811c77a10580d17d26b57b036133f3c2e" + integrity sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw== dependencies: - "@babel/types" "^7.10.4" + "@babel/types" "^7.23.6" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" - lodash "^4.17.13" - source-map "^0.5.0" -"@babel/generator@^7.17.3", "@babel/generator@^7.17.7", "@babel/generator@^7.7.2": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.17.7.tgz#8da2599beb4a86194a3b24df6c085931d9ee45ad" - integrity sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w== +"@babel/helper-annotate-as-pure@^7.18.6", "@babel/helper-annotate-as-pure@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" + integrity sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg== dependencies: - "@babel/types" "^7.17.0" - jsesc "^2.5.1" - source-map "^0.5.0" + "@babel/types" "^7.22.5" -"@babel/helper-annotate-as-pure@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-annotate-as-pure/download/@babel/helper-annotate-as-pure-7.10.4.tgz?cache=0&sync_timestamp=1593522926826&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-annotate-as-pure%2Fdownload%2F%40babel%2Fhelper-annotate-as-pure-7.10.4.tgz#5bf0d495a3f757ac3bda48b5bf3b3ba309c72ba3" - integrity sha1-W/DUlaP3V6w72ki1vzs7ownHK6M= - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-annotate-as-pure@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" - integrity sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw== +"@babel/helper-builder-binary-assignment-operator-visitor@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz#5426b109cf3ad47b91120f8328d8ab1be8b0b956" + integrity sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw== dependencies: - "@babel/types" "^7.16.7" + "@babel/types" "^7.22.15" -"@babel/helper-builder-binary-assignment-operator-visitor@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz#38d138561ea207f0f69eb1626a418e4f7e6a580b" - integrity sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA== +"@babel/helper-compilation-targets@^7.22.15", "@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" + integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== dependencies: - "@babel/helper-explode-assignable-expression" "^7.16.7" - "@babel/types" "^7.16.7" - -"@babel/helper-compilation-targets@^7.13.0", "@babel/helper-compilation-targets@^7.13.16", "@babel/helper-compilation-targets@^7.16.7", "@babel/helper-compilation-targets@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz#a3c2924f5e5f0379b356d4cfb313d1414dc30e46" - integrity sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w== - dependencies: - "@babel/compat-data" "^7.17.7" - "@babel/helper-validator-option" "^7.16.7" - browserslist "^4.17.5" - semver "^6.3.0" - -"@babel/helper-create-class-features-plugin@^7.16.10", "@babel/helper-create-class-features-plugin@^7.16.7", "@babel/helper-create-class-features-plugin@^7.17.6": - version "7.17.6" - resolved "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.17.6.tgz#3778c1ed09a7f3e65e6d6e0f6fbfcc53809d92c9" - integrity sha512-SogLLSxXm2OkBbSsHZMM4tUi8fUzjs63AT/d0YQIzr6GSd8Hxsbk2KYDX0k0DweAzGMj/YWeiCsorIdtdcW8Eg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-function-name" "^7.16.7" - "@babel/helper-member-expression-to-functions" "^7.16.7" - "@babel/helper-optimise-call-expression" "^7.16.7" - "@babel/helper-replace-supers" "^7.16.7" - "@babel/helper-split-export-declaration" "^7.16.7" - -"@babel/helper-create-regexp-features-plugin@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-create-regexp-features-plugin/download/@babel/helper-create-regexp-features-plugin-7.10.4.tgz#fdd60d88524659a0b6959c0579925e425714f3b8" - integrity sha1-/dYNiFJGWaC2lZwFeZJeQlcU87g= - dependencies: - "@babel/helper-annotate-as-pure" "^7.10.4" - "@babel/helper-regex" "^7.10.4" - regexpu-core "^4.7.0" - -"@babel/helper-create-regexp-features-plugin@^7.16.7": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz#1dcc7d40ba0c6b6b25618997c5dbfd310f186fe1" - integrity sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.7" - regexpu-core "^5.0.1" - -"@babel/helper-define-polyfill-provider@^0.3.1": - version "0.3.1" - resolved "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.1.tgz#52411b445bdb2e676869e5a74960d2d3826d2665" - integrity sha512-J9hGMpJQmtWmj46B3kBHmL38UhJGhYX7eqkcq+2gsstyYt341HmPeWspihX43yVRA0mS+8GGk2Gckc7bY/HCmA== + "@babel/compat-data" "^7.23.5" + "@babel/helper-validator-option" "^7.23.5" + browserslist "^4.22.2" + lru-cache "^5.1.1" + semver "^6.3.1" + +"@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.21.0", "@babel/helper-create-class-features-plugin@^7.22.15", "@babel/helper-create-class-features-plugin@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.0.tgz#fc7554141bdbfa2d17f7b4b80153b9b090e5d158" + integrity sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-member-expression-to-functions" "^7.23.0" + "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + semver "^6.3.1" + +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.15", "@babel/helper-create-regexp-features-plugin@^7.22.5": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz#5ee90093914ea09639b01c711db0d6775e558be1" + integrity sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + regexpu-core "^5.3.1" + semver "^6.3.1" + +"@babel/helper-define-polyfill-provider@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.5.0.tgz#465805b7361f461e86c680f1de21eaf88c25901b" + integrity sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q== dependencies: - "@babel/helper-compilation-targets" "^7.13.0" - "@babel/helper-module-imports" "^7.12.13" - "@babel/helper-plugin-utils" "^7.13.0" - "@babel/traverse" "^7.13.0" + "@babel/helper-compilation-targets" "^7.22.6" + "@babel/helper-plugin-utils" "^7.22.5" debug "^4.1.1" lodash.debounce "^4.0.8" resolve "^1.14.2" - semver "^6.1.2" - -"@babel/helper-environment-visitor@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" - integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== - dependencies: - "@babel/types" "^7.16.7" - -"@babel/helper-explode-assignable-expression@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz#12a6d8522fdd834f194e868af6354e8650242b7a" - integrity sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ== - dependencies: - "@babel/types" "^7.16.7" -"@babel/helper-function-name@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-function-name/download/@babel/helper-function-name-7.10.4.tgz#d2d3b20c59ad8c47112fa7d2a94bc09d5ef82f1a" - integrity sha1-0tOyDFmtjEcRL6fSqUvAnV74Lxo= - dependencies: - "@babel/helper-get-function-arity" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-function-name@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" - integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== - dependencies: - "@babel/helper-get-function-arity" "^7.16.7" - "@babel/template" "^7.16.7" - "@babel/types" "^7.16.7" - -"@babel/helper-get-function-arity@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-get-function-arity/download/@babel/helper-get-function-arity-7.10.4.tgz?cache=0&sync_timestamp=1593522926422&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-get-function-arity%2Fdownload%2F%40babel%2Fhelper-get-function-arity-7.10.4.tgz#98c1cbea0e2332f33f9a4661b8ce1505b2c19ba2" - integrity sha1-mMHL6g4jMvM/mkZhuM4VBbLBm6I= - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-get-function-arity@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" - integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== - dependencies: - "@babel/types" "^7.16.7" +"@babel/helper-environment-visitor@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" + integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== -"@babel/helper-hoist-variables@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" - integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== +"@babel/helper-function-name@^7.22.5", "@babel/helper-function-name@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" + integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== dependencies: - "@babel/types" "^7.16.7" + "@babel/template" "^7.22.15" + "@babel/types" "^7.23.0" -"@babel/helper-member-expression-to-functions@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-member-expression-to-functions/download/@babel/helper-member-expression-to-functions-7.10.4.tgz?cache=0&sync_timestamp=1593522926997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-member-expression-to-functions%2Fdownload%2F%40babel%2Fhelper-member-expression-to-functions-7.10.4.tgz#7cd04b57dfcf82fce9aeae7d4e4452fa31b8c7c4" - integrity sha1-fNBLV9/Pgvzprq59TkRS+jG4x8Q= - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-member-expression-to-functions@^7.16.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz#a34013b57d8542a8c4ff8ba3f747c02452a4d8c4" - integrity sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw== - dependencies: - "@babel/types" "^7.17.0" - -"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-module-imports/download/@babel/helper-module-imports-7.10.4.tgz#4c5c54be04bd31670a7382797d75b9fa2e5b5620" - integrity sha1-TFxUvgS9MWcKc4J5fXW5+i5bViA= - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.13.12", "@babel/helper-module-imports@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" - integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== - dependencies: - "@babel/types" "^7.16.7" - -"@babel/helper-module-transforms@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-module-transforms/download/@babel/helper-module-transforms-7.10.4.tgz#ca1f01fdb84e48c24d7506bb818c961f1da8805d" - integrity sha1-yh8B/bhOSMJNdQa7gYyWHx2ogF0= - dependencies: - "@babel/helper-module-imports" "^7.10.4" - "@babel/helper-replace-supers" "^7.10.4" - "@babel/helper-simple-access" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" - lodash "^4.17.13" - -"@babel/helper-module-transforms@^7.16.7", "@babel/helper-module-transforms@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz#3943c7f777139e7954a5355c815263741a9c1cbd" - integrity sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw== - dependencies: - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-module-imports" "^7.16.7" - "@babel/helper-simple-access" "^7.17.7" - "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/helper-validator-identifier" "^7.16.7" - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.17.3" - "@babel/types" "^7.17.0" - -"@babel/helper-optimise-call-expression@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-optimise-call-expression/download/@babel/helper-optimise-call-expression-7.10.4.tgz?cache=0&sync_timestamp=1593522928231&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-optimise-call-expression%2Fdownload%2F%40babel%2Fhelper-optimise-call-expression-7.10.4.tgz#50dc96413d594f995a77905905b05893cd779673" - integrity sha1-UNyWQT1ZT5lad5BZBbBYk813lnM= - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-optimise-call-expression@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz#a34e3560605abbd31a18546bd2aad3e6d9a174f2" - integrity sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w== - dependencies: - "@babel/types" "^7.16.7" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.8.0": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-plugin-utils/download/@babel/helper-plugin-utils-7.10.4.tgz?cache=0&sync_timestamp=1593521089859&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-plugin-utils%2Fdownload%2F%40babel%2Fhelper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" - integrity sha1-L3WoMSadT2d95JmG3/WZJ1M883U= - -"@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.13.0", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.16.7", "@babel/helper-plugin-utils@^7.8.3": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz#aa3a8ab4c3cceff8e65eb9e73d87dc4ff320b2f5" - integrity sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA== - -"@babel/helper-regex@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-regex/download/@babel/helper-regex-7.10.4.tgz?cache=0&sync_timestamp=1593521091742&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-regex%2Fdownload%2F%40babel%2Fhelper-regex-7.10.4.tgz#59b373daaf3458e5747dece71bbaf45f9676af6d" - integrity sha1-WbNz2q80WOV0feznG7r0X5Z2r20= - dependencies: - lodash "^4.17.13" - -"@babel/helper-remap-async-to-generator@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz#29ffaade68a367e2ed09c90901986918d25e57e3" - integrity sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-wrap-function" "^7.16.8" - "@babel/types" "^7.16.8" - -"@babel/helper-replace-supers@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-replace-supers/download/@babel/helper-replace-supers-7.10.4.tgz#d585cd9388ea06e6031e4cd44b6713cbead9e6cf" - integrity sha1-1YXNk4jqBuYDHkzUS2cTy+rZ5s8= - dependencies: - "@babel/helper-member-expression-to-functions" "^7.10.4" - "@babel/helper-optimise-call-expression" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helper-replace-supers@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz#e9f5f5f32ac90429c1a4bdec0f231ef0c2838ab1" - integrity sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw== - dependencies: - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-member-expression-to-functions" "^7.16.7" - "@babel/helper-optimise-call-expression" "^7.16.7" - "@babel/traverse" "^7.16.7" - "@babel/types" "^7.16.7" - -"@babel/helper-simple-access@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-simple-access/download/@babel/helper-simple-access-7.10.4.tgz#0f5ccda2945277a2a7a2d3a821e15395edcf3461" - integrity sha1-D1zNopRSd6KnotOoIeFTle3PNGE= +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== dependencies: - "@babel/template" "^7.10.4" - "@babel/types" "^7.10.4" + "@babel/types" "^7.22.5" -"@babel/helper-simple-access@^7.17.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz#aaa473de92b7987c6dfa7ce9a7d9674724823367" - integrity sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA== +"@babel/helper-member-expression-to-functions@^7.22.15", "@babel/helper-member-expression-to-functions@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz#9263e88cc5e41d39ec18c9a3e0eced59a3e7d366" + integrity sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA== dependencies: - "@babel/types" "^7.17.0" + "@babel/types" "^7.23.0" + +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" + integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== + dependencies: + "@babel/types" "^7.22.15" -"@babel/helper-skip-transparent-expression-wrappers@^7.16.0": - version "7.16.0" - resolved "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz#0ee3388070147c3ae051e487eca3ebb0e2e8bb09" - integrity sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw== +"@babel/helper-module-transforms@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz#d7d12c3c5d30af5b3c0fcab2a6d5217773e2d0f1" + integrity sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-validator-identifier" "^7.22.20" + +"@babel/helper-optimise-call-expression@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" + integrity sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.20.2", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.8.0", "@babel/helper-plugin-utils@^7.8.3": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz#945681931a52f15ce879fd5b86ce2dae6d3d7f2a" + integrity sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w== + +"@babel/helper-remap-async-to-generator@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz#7b68e1cb4fa964d2996fd063723fb48eca8498e0" + integrity sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-wrap-function" "^7.22.20" + +"@babel/helper-replace-supers@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz#e37d367123ca98fe455a9887734ed2e16eb7a793" + integrity sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-member-expression-to-functions" "^7.22.15" + "@babel/helper-optimise-call-expression" "^7.22.5" + +"@babel/helper-simple-access@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" + integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" + integrity sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-string-parser@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" + integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== + +"@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + +"@babel/helper-validator-option@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" + integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== + +"@babel/helper-wrap-function@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz#15352b0b9bfb10fc9c76f79f6342c00e3411a569" + integrity sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw== + dependencies: + "@babel/helper-function-name" "^7.22.5" + "@babel/template" "^7.22.15" + "@babel/types" "^7.22.19" + +"@babel/helpers@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.0.tgz#a3dd462b41769c95db8091e49cfe019389a9409b" + integrity sha512-ulDZdc0Aj5uLc5nETsa7EPx2L7rM0YJM8r7ck7U73AXi7qOV44IHHRAYZHY6iU1rr3C5N4NtTmMRUJP6kwCWeA== dependencies: - "@babel/types" "^7.16.0" - -"@babel/helper-split-export-declaration@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-split-export-declaration/download/@babel/helper-split-export-declaration-7.10.4.tgz#2c70576eaa3b5609b24cb99db2888cc3fc4251d1" - integrity sha1-LHBXbqo7VgmyTLmdsoiMw/xCUdE= - dependencies: - "@babel/types" "^7.10.4" - -"@babel/helper-split-export-declaration@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" - integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== - dependencies: - "@babel/types" "^7.16.7" - -"@babel/helper-validator-identifier@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helper-validator-identifier/download/@babel/helper-validator-identifier-7.10.4.tgz?cache=0&sync_timestamp=1593521090675&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" - integrity sha1-p4x6clHgH2FlEtMbEK3PUq2l4NI= - -"@babel/helper-validator-identifier@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" - integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== - -"@babel/helper-validator-option@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz#b203ce62ce5fe153899b617c08957de860de4d23" - integrity sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ== - -"@babel/helper-wrap-function@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz#58afda087c4cd235de92f7ceedebca2c41274200" - integrity sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw== - dependencies: - "@babel/helper-function-name" "^7.16.7" - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.16.8" - "@babel/types" "^7.16.8" - -"@babel/helpers@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/helpers/download/@babel/helpers-7.10.4.tgz#2abeb0d721aff7c0a97376b9e1f6f65d7a475044" - integrity sha1-Kr6w1yGv98Cpc3a54fb2XXpHUEQ= - dependencies: - "@babel/template" "^7.10.4" - "@babel/traverse" "^7.10.4" - "@babel/types" "^7.10.4" - -"@babel/helpers@^7.17.8": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.8.tgz#288450be8c6ac7e4e44df37bcc53d345e07bc106" - integrity sha512-QcL86FGxpfSJwGtAvv4iG93UL6bmqBdmoVY0CMCU2g+oD2ezQse3PT5Pa+jiD6LJndBQi0EDlpzOWNlLuhz5gw== - dependencies: - "@babel/template" "^7.16.7" - "@babel/traverse" "^7.17.3" - "@babel/types" "^7.17.0" - -"@babel/highlight@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.10.4.tgz?cache=0&sync_timestamp=1593521118780&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" - integrity sha1-fRvf1ldTU4+r5sOFls23bZrGAUM= - dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - chalk "^2.0.0" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.0" + "@babel/types" "^7.24.0" + +"@babel/highlight@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.23.4.tgz#edaadf4d8232e1a961432db785091207ead0621b" + integrity sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" js-tokens "^4.0.0" -"@babel/highlight@^7.16.7": - version "7.16.10" - resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" - integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== - dependencies: - "@babel/helper-validator-identifier" "^7.16.7" - chalk "^2.0.0" - js-tokens "^4.0.0" +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.14.9", "@babel/parser@^7.20.7", "@babel/parser@^7.23.5", "@babel/parser@^7.24.0", "@babel/parser@^7.9.6": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.0.tgz#26a3d1ff49031c53a97d03b604375f028746a9ac" + integrity sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg== -"@babel/parser@^7.1.0", "@babel/parser@^7.10.4", "@babel/parser@^7.9.6": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.10.4.tgz?cache=0&sync_timestamp=1593521090327&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fparser%2Fdownload%2F%40babel%2Fparser-7.10.4.tgz#9eedf27e1998d87739fb5028a5120557c06a1a64" - integrity sha1-nu3yfhmY2Hc5+1AopRIFV8BqGmQ= - -"@babel/parser@^7.14.7", "@babel/parser@^7.14.9", "@babel/parser@^7.16.7", "@babel/parser@^7.17.3", "@babel/parser@^7.17.8": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.17.8.tgz#2817fb9d885dd8132ea0f8eb615a6388cca1c240" - integrity sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ== - -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.16.7.tgz#4eda6d6c2a0aa79c70fa7b6da67763dfe2141050" - integrity sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg== +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.23.3.tgz#5cd1c87ba9380d0afb78469292c954fee5d2411a" + integrity sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz#cc001234dfc139ac45f6bcf801866198c8c72ff9" - integrity sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw== +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.23.3.tgz#f6652bb16b94f8f9c20c50941e16e9756898dc5d" + integrity sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" - "@babel/plugin-proposal-optional-chaining" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/plugin-transform-optional-chaining" "^7.23.3" -"@babel/plugin-proposal-async-generator-functions@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz#3bdd1ebbe620804ea9416706cd67d60787504bc8" - integrity sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.23.7": + version "7.23.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.23.7.tgz#516462a95d10a9618f197d39ad291a9b47ae1d7b" + integrity sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-remap-async-to-generator" "^7.16.8" - "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-proposal-class-properties@^7.13.0", "@babel/plugin-proposal-class-properties@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz#925cad7b3b1a2fcea7e59ecc8eb5954f961f91b0" - integrity sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww== +"@babel/plugin-proposal-class-properties@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz#b110f59741895f7ec21a6fff696ec46265c446a3" + integrity sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-class-static-block@^7.16.7": - version "7.17.6" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.17.6.tgz#164e8fd25f0d80fa48c5a4d1438a6629325ad83c" - integrity sha512-X/tididvL2zbs7jZCeeRJ8167U/+Ac135AM6jCAx6gYXDUviZV5Ku9UDvWS2NCuWlFjIRXklYhwo6HhAC7ETnA== +"@babel/plugin-proposal-decorators@^7.23.7": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.24.0.tgz#845b42189e7441faa60a37682de1038eae97c382" + integrity sha512-LiT1RqZWeij7X+wGxCoYh3/3b8nVOX6/7BZ9wiQgAIyjoeQWdROaodJCgT+dwtbjHaz0r7bEbHJzjSbVfcOyjQ== dependencies: - "@babel/helper-create-class-features-plugin" "^7.17.6" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-class-static-block" "^7.14.5" - -"@babel/plugin-proposal-decorators@^7.13.15": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.17.8.tgz#4f0444e896bee85d35cf714a006fc5418f87ff00" - integrity sha512-U69odN4Umyyx1xO1rTII0IDkAEC+RNlcKXtqOblfpzqy1C+aOplb76BQNq0+XdpVkOaPlpEDwd++joY8FNFJKA== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.17.6" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-replace-supers" "^7.16.7" - "@babel/plugin-syntax-decorators" "^7.17.0" - charcodes "^0.2.0" - -"@babel/plugin-proposal-dynamic-import@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz#c19c897eaa46b27634a00fee9fb7d829158704b2" - integrity sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-dynamic-import" "^7.8.3" + "@babel/helper-create-class-features-plugin" "^7.24.0" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-syntax-decorators" "^7.24.0" -"@babel/plugin-proposal-export-namespace-from@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz#09de09df18445a5786a305681423ae63507a6163" - integrity sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA== +"@babel/plugin-proposal-nullish-coalescing-operator@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" + integrity sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-export-namespace-from" "^7.8.3" - -"@babel/plugin-proposal-json-strings@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz#9732cb1d17d9a2626a08c5be25186c195b6fa6e8" - integrity sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-json-strings" "^7.8.3" - -"@babel/plugin-proposal-logical-assignment-operators@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz#be23c0ba74deec1922e639832904be0bea73cdea" - integrity sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" - -"@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz#141fc20b6857e59459d430c850a0011e36561d99" - integrity sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.18.6" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-proposal-numeric-separator@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz#d6b69f4af63fb38b6ca2558442a7fb191236eba9" - integrity sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw== +"@babel/plugin-proposal-optional-chaining@^7.21.0": + version "7.21.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz#886f5c8978deb7d30f678b2e24346b287234d3ea" + integrity sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-numeric-separator" "^7.10.4" - -"@babel/plugin-proposal-object-rest-spread@^7.16.7": - version "7.17.3" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz#d9eb649a54628a51701aef7e0ea3d17e2b9dd390" - integrity sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw== - dependencies: - "@babel/compat-data" "^7.17.0" - "@babel/helper-compilation-targets" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-transform-parameters" "^7.16.7" - -"@babel/plugin-proposal-optional-catch-binding@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz#c623a430674ffc4ab732fd0a0ae7722b67cb74cf" - integrity sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - -"@babel/plugin-proposal-optional-chaining@^7.13.12", "@babel/plugin-proposal-optional-chaining@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz#7cd629564724816c0e8a969535551f943c64c39a" - integrity sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.13.0", "@babel/plugin-proposal-private-methods@^7.16.11": - version "7.16.11" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.11.tgz#e8df108288555ff259f4527dbe84813aac3a1c50" - integrity sha512-F/2uAkPlXDr8+BHpZvo19w3hLFKge+k75XUprE6jaqKxjGkSYcK+4c+bup5PdW/7W/Rpjwql7FTVEDW+fRAQsw== - dependencies: - "@babel/helper-create-class-features-plugin" "^7.16.10" - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-proposal-private-property-in-object@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz#b0b8cef543c2c3d57e59e2c611994861d46a3fce" - integrity sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ== +"@babel/plugin-proposal-private-methods@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" + integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== dependencies: - "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-create-class-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + "@babel/helper-create-class-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-proposal-unicode-property-regex@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz#635d18eb10c6214210ffc5ff4932552de08188a2" - integrity sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" +"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": + version "7.21.0-placeholder-for-preset-env.2" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703" + integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w== -"@babel/plugin-proposal-unicode-property-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-unicode-property-regex/download/@babel/plugin-proposal-unicode-property-regex-7.10.4.tgz#4483cda53041ce3413b7fe2f00022665ddfaa75d" - integrity sha1-RIPNpTBBzjQTt/4vAAImZd36p10= +"@babel/plugin-proposal-private-property-in-object@^7.21.11": + version "7.21.11" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz#69d597086b6760c4126525cfa154f34631ff272c" + integrity sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-annotate-as-pure" "^7.18.6" + "@babel/helper-create-class-features-plugin" "^7.21.0" + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-async-generators/download/@babel/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" - integrity sha1-qYP7Gusuw/btBCohD2QOkOeG/g0= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-bigint@^7.8.3": version "7.8.3" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-bigint/download/@babel/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha1-TJpvZp9dDN8bkKFnHpoUa+UwDOo= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.12.13": +"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== dependencies: "@babel/helper-plugin-utils" "^7.12.13" -"@babel/plugin-syntax-class-properties@^7.8.3": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-class-properties/download/@babel/plugin-syntax-class-properties-7.10.4.tgz?cache=0&sync_timestamp=1593521094537&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-class-properties%2Fdownload%2F%40babel%2Fplugin-syntax-class-properties-7.10.4.tgz#6644e6a0baa55a61f9e3231f6c9eeb6ee46c124c" - integrity sha1-ZkTmoLqlWmH54yMfbJ7rbuRsEkw= - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-class-static-block@^7.14.5": version "7.14.5" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz#195df89b146b4b78b3bf897fd7a257c84659d406" integrity sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-decorators@^7.17.0": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.17.0.tgz#a2be3b2c9fe7d78bd4994e790896bc411e2f166d" - integrity sha512-qWe85yCXsvDEluNP0OyeQjH63DlhAR3W7K9BxxU1MvbDb48tgBG+Ao6IJJ6smPDrrVzSQZrbF6donpkFBMcs3A== +"@babel/plugin-syntax-decorators@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.24.0.tgz#7a15e20aeaf412469c53ed0d5666f31a1fc41215" + integrity sha512-MXW3pQCu9gUiVGzqkGqsgiINDVYXoAnrY8FYF/rmb+OfufNF0zHMpHPN4ulRrinxYT8Vk/aZJxYqOKsDECjKAw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.24.0" "@babel/plugin-syntax-dynamic-import@^7.8.3": version "7.8.3" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-export-namespace-from@^7.8.3": version "7.8.3" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz#028964a9ba80dbc094c915c487ad7c4e7a66465a" integrity sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q== dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-import-meta@^7.8.3": +"@babel/plugin-syntax-import-assertions@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.23.3.tgz#9c05a7f592982aff1a2768260ad84bcd3f0c77fc" + integrity sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-syntax-import-attributes@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.23.3.tgz#992aee922cf04512461d7dae3ff6951b90a2dc06" + integrity sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-syntax-import-meta@^7.10.4", "@babel/plugin-syntax-import-meta@^7.8.3": version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-import-meta/download/@babel/plugin-syntax-import-meta-7.10.4.tgz?cache=0&sync_timestamp=1593524789921&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-import-meta%2Fdownload%2F%40babel%2Fplugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha1-7mATSMNw+jNNIge+FYd3SWUh/VE= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-json-strings/download/@babel/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" - integrity sha1-AcohtmjNghjJ5kDLbdiMVBKyyWo= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-jsx@^7.2.0": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-jsx/download/@babel/plugin-syntax-jsx-7.10.4.tgz?cache=0&sync_timestamp=1593522976735&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-jsx%2Fdownload%2F%40babel%2Fplugin-syntax-jsx-7.10.4.tgz#39abaae3cbf710c4373d8429484e6ba21340166c" - integrity sha1-Oauq48v3EMQ3PYQpSE5rohNAFmw= + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz#8f2e4f8a9b5f9aa16067e142c1ac9cd9f810f473" + integrity sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg== dependencies: - "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": version "7.8.3" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-nullish-coalescing-operator/download/@babel/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz?cache=0&sync_timestamp=1578952518069&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-nullish-coalescing-operator%2Fdownload%2F%40babel%2Fplugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" - integrity sha1-Fn7XA2iIYIH3S1w2xlqIwDtm0ak= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-numeric-separator/download/@babel/plugin-syntax-numeric-separator-7.10.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-numeric-separator%2Fdownload%2F%40babel%2Fplugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" - integrity sha1-ubBws+M1cM2f0Hun+pHA3Te5r5c= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== dependencies: "@babel/helper-plugin-utils" "^7.10.4" "@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-object-rest-spread/download/@babel/plugin-syntax-object-rest-spread-7.8.3.tgz?cache=0&sync_timestamp=1578950070697&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-object-rest-spread%2Fdownload%2F%40babel%2Fplugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" - integrity sha1-YOIl7cvZimQDMqLnLdPmbxr1WHE= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-catch-binding@^7.8.3": version "7.8.3" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-optional-catch-binding/download/@babel/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" - integrity sha1-YRGiZbz7Ag6579D9/X0mQCue1sE= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-optional-chaining@^7.8.3": version "7.8.3" - resolved "https://registry.npm.taobao.org/@babel/plugin-syntax-optional-chaining/download/@babel/plugin-syntax-optional-chaining-7.8.3.tgz?cache=0&sync_timestamp=1578952519472&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-syntax-optional-chaining%2Fdownload%2F%40babel%2Fplugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" - integrity sha1-T2nCq5UWfgGAzVM2YT+MV4j31Io= + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== dependencies: "@babel/helper-plugin-utils" "^7.8.0" "@babel/plugin-syntax-private-property-in-object@^7.14.5": version "7.14.5" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz#0dc6671ec0ea22b6e94a1114f857970cd39de1ad" integrity sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": version "7.14.5" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" "@babel/plugin-syntax-typescript@^7.7.2": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.16.7.tgz#39c9b55ee153151990fb038651d58d3fd03f98f8" - integrity sha512-YhUIJHHGkqPgEcMYkPCKTyGUdoGKWtopIycQyjJH8OjvRgOYsXsaKehLVPScKJWAULPxMa4N1vCe6szREFlZ7A== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-arrow-functions@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz#44125e653d94b98db76369de9c396dc14bef4154" - integrity sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-async-to-generator@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz#b83dff4b970cf41f1b819f8b49cc0cfbaa53a808" - integrity sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg== - dependencies: - "@babel/helper-module-imports" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-remap-async-to-generator" "^7.16.8" - -"@babel/plugin-transform-block-scoped-functions@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz#4d0d57d9632ef6062cdf354bb717102ee042a620" - integrity sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-block-scoping@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz#f50664ab99ddeaee5bc681b8f3a6ea9d72ab4f87" - integrity sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-classes@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz#8f4b9562850cd973de3b498f1218796eb181ce00" - integrity sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ== - dependencies: - "@babel/helper-annotate-as-pure" "^7.16.7" - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-function-name" "^7.16.7" - "@babel/helper-optimise-call-expression" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-replace-supers" "^7.16.7" - "@babel/helper-split-export-declaration" "^7.16.7" + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz#24f460c85dbbc983cd2b9c4994178bcc01df958f" + integrity sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-syntax-unicode-sets-regex@^7.18.6": + version "7.18.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" + integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.18.6" + "@babel/helper-plugin-utils" "^7.18.6" + +"@babel/plugin-transform-arrow-functions@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.23.3.tgz#94c6dcfd731af90f27a79509f9ab7fb2120fc38b" + integrity sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-async-generator-functions@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.9.tgz#9adaeb66fc9634a586c5df139c6240d41ed801ce" + integrity sha512-8Q3veQEDGe14dTYuwagbRtwxQDnytyg1JFu4/HwEMETeofocrB0U0ejBJIXoeG/t2oXZ8kzCyI0ZZfbT80VFNQ== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-remap-async-to-generator" "^7.22.20" + "@babel/plugin-syntax-async-generators" "^7.8.4" + +"@babel/plugin-transform-async-to-generator@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.23.3.tgz#d1f513c7a8a506d43f47df2bf25f9254b0b051fa" + integrity sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw== + dependencies: + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-remap-async-to-generator" "^7.22.20" + +"@babel/plugin-transform-block-scoped-functions@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.23.3.tgz#fe1177d715fb569663095e04f3598525d98e8c77" + integrity sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-block-scoping@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.4.tgz#b2d38589531c6c80fbe25e6b58e763622d2d3cf5" + integrity sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-class-properties@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.23.3.tgz#35c377db11ca92a785a718b6aa4e3ed1eb65dc48" + integrity sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-class-static-block@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.23.4.tgz#2a202c8787a8964dd11dfcedf994d36bfc844ab5" + integrity sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-class-static-block" "^7.14.5" + +"@babel/plugin-transform-classes@^7.23.8": + version "7.23.8" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.23.8.tgz#d08ae096c240347badd68cdf1b6d1624a6435d92" + integrity sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-replace-supers" "^7.22.20" + "@babel/helper-split-export-declaration" "^7.22.6" globals "^11.1.0" -"@babel/plugin-transform-computed-properties@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz#66dee12e46f61d2aae7a73710f591eb3df616470" - integrity sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw== +"@babel/plugin-transform-computed-properties@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.23.3.tgz#652e69561fcc9d2b50ba4f7ac7f60dcf65e86474" + integrity sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/template" "^7.22.15" -"@babel/plugin-transform-destructuring@^7.16.7": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz#49dc2675a7afa9a5e4c6bdee636061136c3408d1" - integrity sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ== +"@babel/plugin-transform-destructuring@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.3.tgz#8c9ee68228b12ae3dff986e56ed1ba4f3c446311" + integrity sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-dotall-regex@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz#6b2d67686fab15fb6a7fd4bd895d5982cfc81241" - integrity sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ== +"@babel/plugin-transform-dotall-regex@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.23.3.tgz#3f7af6054882ede89c378d0cf889b854a993da50" + integrity sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-regexp-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-dotall-regex@^7.4.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/plugin-transform-dotall-regex/download/@babel/plugin-transform-dotall-regex-7.10.4.tgz#469c2062105c1eb6a040eaf4fac4b488078395ee" - integrity sha1-RpwgYhBcHragQOr0+sS0iAeDle4= +"@babel/plugin-transform-duplicate-keys@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.23.3.tgz#664706ca0a5dfe8d066537f99032fc1dc8b720ce" + integrity sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.10.4" - "@babel/helper-plugin-utils" "^7.10.4" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-duplicate-keys@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz#2207e9ca8f82a0d36a5a67b6536e7ef8b08823c9" - integrity sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw== +"@babel/plugin-transform-dynamic-import@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.23.4.tgz#c7629e7254011ac3630d47d7f34ddd40ca535143" + integrity sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-dynamic-import" "^7.8.3" -"@babel/plugin-transform-exponentiation-operator@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz#efa9862ef97e9e9e5f653f6ddc7b665e8536fe9b" - integrity sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA== +"@babel/plugin-transform-exponentiation-operator@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.23.3.tgz#ea0d978f6b9232ba4722f3dbecdd18f450babd18" + integrity sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ== dependencies: - "@babel/helper-builder-binary-assignment-operator-visitor" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-builder-binary-assignment-operator-visitor" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-for-of@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz#649d639d4617dff502a9a158c479b3b556728d8c" - integrity sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg== +"@babel/plugin-transform-export-namespace-from@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.23.4.tgz#084c7b25e9a5c8271e987a08cf85807b80283191" + integrity sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-export-namespace-from" "^7.8.3" -"@babel/plugin-transform-function-name@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz#5ab34375c64d61d083d7d2f05c38d90b97ec65cf" - integrity sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA== +"@babel/plugin-transform-for-of@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.23.6.tgz#81c37e24171b37b370ba6aaffa7ac86bcb46f94e" + integrity sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw== dependencies: - "@babel/helper-compilation-targets" "^7.16.7" - "@babel/helper-function-name" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" -"@babel/plugin-transform-literals@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz#254c9618c5ff749e87cb0c0cef1a0a050c0bdab1" - integrity sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ== +"@babel/plugin-transform-function-name@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.23.3.tgz#8f424fcd862bf84cb9a1a6b42bc2f47ed630f8dc" + integrity sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-member-expression-literals@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz#6e5dcf906ef8a098e630149d14c867dd28f92384" - integrity sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw== +"@babel/plugin-transform-json-strings@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.23.4.tgz#a871d9b6bd171976efad2e43e694c961ffa3714d" + integrity sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-json-strings" "^7.8.3" -"@babel/plugin-transform-modules-amd@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz#b28d323016a7daaae8609781d1f8c9da42b13186" - integrity sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g== +"@babel/plugin-transform-literals@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.23.3.tgz#8214665f00506ead73de157eba233e7381f3beb4" + integrity sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ== dependencies: - "@babel/helper-module-transforms" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-modules-commonjs@^7.16.8": - version "7.17.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.7.tgz#d86b217c8e45bb5f2dbc11eefc8eab62cf980d19" - integrity sha512-ITPmR2V7MqioMJyrxUo2onHNC3e+MvfFiFIR0RP21d3PtlVb6sfzoxNKiphSZUOM9hEIdzCcZe83ieX3yoqjUA== +"@babel/plugin-transform-logical-assignment-operators@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.23.4.tgz#e599f82c51d55fac725f62ce55d3a0886279ecb5" + integrity sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg== dependencies: - "@babel/helper-module-transforms" "^7.17.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-simple-access" "^7.17.7" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-transform-modules-systemjs@^7.16.7": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz#81fd834024fae14ea78fbe34168b042f38703859" - integrity sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw== +"@babel/plugin-transform-member-expression-literals@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.23.3.tgz#e37b3f0502289f477ac0e776b05a833d853cabcc" + integrity sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag== dependencies: - "@babel/helper-hoist-variables" "^7.16.7" - "@babel/helper-module-transforms" "^7.17.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-validator-identifier" "^7.16.7" - babel-plugin-dynamic-import-node "^2.3.3" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-modules-umd@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz#23dad479fa585283dbd22215bff12719171e7618" - integrity sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ== +"@babel/plugin-transform-modules-amd@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.3.tgz#e19b55436a1416829df0a1afc495deedfae17f7d" + integrity sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw== dependencies: - "@babel/helper-module-transforms" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-named-capturing-groups-regex@^7.16.8": - version "7.16.8" - resolved "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz#7f860e0e40d844a02c9dcf9d84965e7dfd666252" - integrity sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw== +"@babel/plugin-transform-modules-commonjs@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.3.tgz#661ae831b9577e52be57dd8356b734f9700b53b4" + integrity sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.7" + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-simple-access" "^7.22.5" -"@babel/plugin-transform-new-target@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz#9967d89a5c243818e0800fdad89db22c5f514244" - integrity sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg== +"@babel/plugin-transform-modules-systemjs@^7.23.9": + version "7.23.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.9.tgz#105d3ed46e4a21d257f83a2f9e2ee4203ceda6be" + integrity sha512-KDlPRM6sLo4o1FkiSlXoAa8edLXFsKKIda779fbLrvmeuc3itnjCtaO6RrtoaANsIJANj+Vk1zqbZIMhkCAHVw== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" -"@babel/plugin-transform-object-super@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz#ac359cf8d32cf4354d27a46867999490b6c32a94" - integrity sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw== +"@babel/plugin-transform-modules-umd@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.23.3.tgz#5d4395fccd071dfefe6585a4411aa7d6b7d769e9" + integrity sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-replace-supers" "^7.16.7" + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-parameters@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz#a1721f55b99b736511cb7e0152f61f17688f331f" - integrity sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw== +"@babel/plugin-transform-named-capturing-groups-regex@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz#67fe18ee8ce02d57c855185e27e3dc959b2e991f" + integrity sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-create-regexp-features-plugin" "^7.22.5" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-property-literals@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz#2dadac85155436f22c696c4827730e0fe1057a55" - integrity sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw== +"@babel/plugin-transform-new-target@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.23.3.tgz#5491bb78ed6ac87e990957cea367eab781c4d980" + integrity sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-regenerator@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz#9e7576dc476cb89ccc5096fff7af659243b4adeb" - integrity sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q== - dependencies: - regenerator-transform "^0.14.2" +"@babel/plugin-transform-nullish-coalescing-operator@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.23.4.tgz#45556aad123fc6e52189ea749e33ce090637346e" + integrity sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" -"@babel/plugin-transform-reserved-words@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz#1d798e078f7c5958eec952059c460b220a63f586" - integrity sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg== +"@babel/plugin-transform-numeric-separator@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.23.4.tgz#03d08e3691e405804ecdd19dd278a40cca531f29" + integrity sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q== dependencies: - "@babel/helper-plugin-utils" "^7.16.7" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-runtime@^7.13.15": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.17.0.tgz#0a2e08b5e2b2d95c4b1d3b3371a2180617455b70" - integrity sha512-fr7zPWnKXNc1xoHfrIU9mN/4XKX4VLZ45Q+oMhfsYIaHvg7mHgmhfOy/ckRWqDK7XF3QDigRpkh5DKq6+clE8A== +"@babel/plugin-transform-object-rest-spread@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.0.tgz#7b836ad0088fdded2420ce96d4e1d3ed78b71df1" + integrity sha512-y/yKMm7buHpFFXfxVFS4Vk1ToRJDilIa6fKRioB9Vjichv58TDGXTvqV0dN7plobAmTW5eSEGXDngE+Mm+uO+w== dependencies: - "@babel/helper-module-imports" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - babel-plugin-polyfill-corejs2 "^0.3.0" - babel-plugin-polyfill-corejs3 "^0.5.0" - babel-plugin-polyfill-regenerator "^0.3.0" - semver "^6.3.0" + "@babel/compat-data" "^7.23.5" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-transform-parameters" "^7.23.3" + +"@babel/plugin-transform-object-super@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.23.3.tgz#81fdb636dcb306dd2e4e8fd80db5b2362ed2ebcd" + integrity sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-replace-supers" "^7.22.20" + +"@babel/plugin-transform-optional-catch-binding@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.23.4.tgz#318066de6dacce7d92fa244ae475aa8d91778017" + integrity sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + +"@babel/plugin-transform-optional-chaining@^7.23.3", "@babel/plugin-transform-optional-chaining@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.4.tgz#6acf61203bdfc4de9d4e52e64490aeb3e52bd017" + integrity sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + +"@babel/plugin-transform-parameters@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.23.3.tgz#83ef5d1baf4b1072fa6e54b2b0999a7b2527e2af" + integrity sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-private-methods@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.23.3.tgz#b2d7a3c97e278bfe59137a978d53b2c2e038c0e4" + integrity sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g== + dependencies: + "@babel/helper-create-class-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-private-property-in-object@^7.23.4": + version "7.23.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.23.4.tgz#3ec711d05d6608fd173d9b8de39872d8dbf68bf5" + integrity sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/plugin-syntax-private-property-in-object" "^7.14.5" + +"@babel/plugin-transform-property-literals@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.23.3.tgz#54518f14ac4755d22b92162e4a852d308a560875" + integrity sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-regenerator@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.23.3.tgz#141afd4a2057298602069fce7f2dc5173e6c561c" + integrity sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + regenerator-transform "^0.15.2" + +"@babel/plugin-transform-reserved-words@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.23.3.tgz#4130dcee12bd3dd5705c587947eb715da12efac8" + integrity sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-runtime@^7.23.7": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.24.0.tgz#e308fe27d08b74027d42547081eefaf4f2ffbcc9" + integrity sha512-zc0GA5IitLKJrSfXlXmp8KDqLrnGECK7YRfQBmEKg1NmBOQ7e+KuclBEKJgzifQeUYLdNiAw4B4bjyvzWVLiSA== + dependencies: + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-plugin-utils" "^7.24.0" + babel-plugin-polyfill-corejs2 "^0.4.8" + babel-plugin-polyfill-corejs3 "^0.9.0" + babel-plugin-polyfill-regenerator "^0.5.5" + semver "^6.3.1" + +"@babel/plugin-transform-shorthand-properties@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.23.3.tgz#97d82a39b0e0c24f8a981568a8ed851745f59210" + integrity sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-spread@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.23.3.tgz#41d17aacb12bde55168403c6f2d6bdca563d362c" + integrity sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + +"@babel/plugin-transform-sticky-regex@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.23.3.tgz#dec45588ab4a723cb579c609b294a3d1bd22ff04" + integrity sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-shorthand-properties@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz#e8549ae4afcf8382f711794c0c7b6b934c5fbd2a" - integrity sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-spread@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz#a303e2122f9f12e0105daeedd0f30fb197d8ff44" - integrity sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-skip-transparent-expression-wrappers" "^7.16.0" - -"@babel/plugin-transform-sticky-regex@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz#c84741d4f4a38072b9a1e2e3fd56d359552e8660" - integrity sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-template-literals@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz#f3d1c45d28967c8e80f53666fc9c3e50618217ab" - integrity sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-typeof-symbol@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz#9cdbe622582c21368bd482b660ba87d5545d4f7e" - integrity sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-unicode-escapes@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz#da8717de7b3287a2c6d659750c964f302b31ece3" - integrity sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q== - dependencies: - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/plugin-transform-unicode-regex@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz#0f7aa4a501198976e25e82702574c34cfebe9ef2" - integrity sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q== - dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - -"@babel/preset-env@^7.14.1": - version "7.16.11" - resolved "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.11.tgz#5dd88fd885fae36f88fd7c8342475c9f0abe2982" - integrity sha512-qcmWG8R7ZW6WBRPZK//y+E3Cli151B20W1Rv7ln27vuPaXU/8TKms6jFdiJtF7UDTxcrb7mZd88tAeK9LjdT8g== - dependencies: - "@babel/compat-data" "^7.16.8" - "@babel/helper-compilation-targets" "^7.16.7" - "@babel/helper-plugin-utils" "^7.16.7" - "@babel/helper-validator-option" "^7.16.7" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.16.7" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.16.7" - "@babel/plugin-proposal-async-generator-functions" "^7.16.8" - "@babel/plugin-proposal-class-properties" "^7.16.7" - "@babel/plugin-proposal-class-static-block" "^7.16.7" - "@babel/plugin-proposal-dynamic-import" "^7.16.7" - "@babel/plugin-proposal-export-namespace-from" "^7.16.7" - "@babel/plugin-proposal-json-strings" "^7.16.7" - "@babel/plugin-proposal-logical-assignment-operators" "^7.16.7" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.16.7" - "@babel/plugin-proposal-numeric-separator" "^7.16.7" - "@babel/plugin-proposal-object-rest-spread" "^7.16.7" - "@babel/plugin-proposal-optional-catch-binding" "^7.16.7" - "@babel/plugin-proposal-optional-chaining" "^7.16.7" - "@babel/plugin-proposal-private-methods" "^7.16.11" - "@babel/plugin-proposal-private-property-in-object" "^7.16.7" - "@babel/plugin-proposal-unicode-property-regex" "^7.16.7" +"@babel/plugin-transform-template-literals@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.23.3.tgz#5f0f028eb14e50b5d0f76be57f90045757539d07" + integrity sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-typeof-symbol@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.23.3.tgz#9dfab97acc87495c0c449014eb9c547d8966bca4" + integrity sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-unicode-escapes@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.23.3.tgz#1f66d16cab01fab98d784867d24f70c1ca65b925" + integrity sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q== + dependencies: + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-unicode-property-regex@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.23.3.tgz#19e234129e5ffa7205010feec0d94c251083d7ad" + integrity sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-unicode-regex@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.23.3.tgz#26897708d8f42654ca4ce1b73e96140fbad879dc" + integrity sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/plugin-transform-unicode-sets-regex@^7.23.3": + version "7.23.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.23.3.tgz#4fb6f0a719c2c5859d11f6b55a050cc987f3799e" + integrity sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw== + dependencies: + "@babel/helper-create-regexp-features-plugin" "^7.22.15" + "@babel/helper-plugin-utils" "^7.22.5" + +"@babel/preset-env@^7.23.8": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.24.0.tgz#11536a7f4b977294f0bdfad780f01a8ac8e183fc" + integrity sha512-ZxPEzV9IgvGn73iK0E6VB9/95Nd7aMFpbE0l8KQFDG70cOV9IxRP7Y2FUPmlK0v6ImlLqYX50iuZ3ZTVhOF2lA== + dependencies: + "@babel/compat-data" "^7.23.5" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-validator-option" "^7.23.5" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.23.3" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.23.3" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.23.7" + "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-class-properties" "^7.12.13" "@babel/plugin-syntax-class-static-block" "^7.14.5" "@babel/plugin-syntax-dynamic-import" "^7.8.3" "@babel/plugin-syntax-export-namespace-from" "^7.8.3" + "@babel/plugin-syntax-import-assertions" "^7.23.3" + "@babel/plugin-syntax-import-attributes" "^7.23.3" + "@babel/plugin-syntax-import-meta" "^7.10.4" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" @@ -1055,206 +923,487 @@ "@babel/plugin-syntax-optional-chaining" "^7.8.3" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" "@babel/plugin-syntax-top-level-await" "^7.14.5" - "@babel/plugin-transform-arrow-functions" "^7.16.7" - "@babel/plugin-transform-async-to-generator" "^7.16.8" - "@babel/plugin-transform-block-scoped-functions" "^7.16.7" - "@babel/plugin-transform-block-scoping" "^7.16.7" - "@babel/plugin-transform-classes" "^7.16.7" - "@babel/plugin-transform-computed-properties" "^7.16.7" - "@babel/plugin-transform-destructuring" "^7.16.7" - "@babel/plugin-transform-dotall-regex" "^7.16.7" - "@babel/plugin-transform-duplicate-keys" "^7.16.7" - "@babel/plugin-transform-exponentiation-operator" "^7.16.7" - "@babel/plugin-transform-for-of" "^7.16.7" - "@babel/plugin-transform-function-name" "^7.16.7" - "@babel/plugin-transform-literals" "^7.16.7" - "@babel/plugin-transform-member-expression-literals" "^7.16.7" - "@babel/plugin-transform-modules-amd" "^7.16.7" - "@babel/plugin-transform-modules-commonjs" "^7.16.8" - "@babel/plugin-transform-modules-systemjs" "^7.16.7" - "@babel/plugin-transform-modules-umd" "^7.16.7" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.16.8" - "@babel/plugin-transform-new-target" "^7.16.7" - "@babel/plugin-transform-object-super" "^7.16.7" - "@babel/plugin-transform-parameters" "^7.16.7" - "@babel/plugin-transform-property-literals" "^7.16.7" - "@babel/plugin-transform-regenerator" "^7.16.7" - "@babel/plugin-transform-reserved-words" "^7.16.7" - "@babel/plugin-transform-shorthand-properties" "^7.16.7" - "@babel/plugin-transform-spread" "^7.16.7" - "@babel/plugin-transform-sticky-regex" "^7.16.7" - "@babel/plugin-transform-template-literals" "^7.16.7" - "@babel/plugin-transform-typeof-symbol" "^7.16.7" - "@babel/plugin-transform-unicode-escapes" "^7.16.7" - "@babel/plugin-transform-unicode-regex" "^7.16.7" - "@babel/preset-modules" "^0.1.5" - "@babel/types" "^7.16.8" - babel-plugin-polyfill-corejs2 "^0.3.0" - babel-plugin-polyfill-corejs3 "^0.5.0" - babel-plugin-polyfill-regenerator "^0.3.0" - core-js-compat "^3.20.2" - semver "^6.3.0" - -"@babel/preset-modules@^0.1.5": - version "0.1.5" - resolved "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz#ef939d6e7f268827e1841638dc6ff95515e115d9" - integrity sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA== + "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" + "@babel/plugin-transform-arrow-functions" "^7.23.3" + "@babel/plugin-transform-async-generator-functions" "^7.23.9" + "@babel/plugin-transform-async-to-generator" "^7.23.3" + "@babel/plugin-transform-block-scoped-functions" "^7.23.3" + "@babel/plugin-transform-block-scoping" "^7.23.4" + "@babel/plugin-transform-class-properties" "^7.23.3" + "@babel/plugin-transform-class-static-block" "^7.23.4" + "@babel/plugin-transform-classes" "^7.23.8" + "@babel/plugin-transform-computed-properties" "^7.23.3" + "@babel/plugin-transform-destructuring" "^7.23.3" + "@babel/plugin-transform-dotall-regex" "^7.23.3" + "@babel/plugin-transform-duplicate-keys" "^7.23.3" + "@babel/plugin-transform-dynamic-import" "^7.23.4" + "@babel/plugin-transform-exponentiation-operator" "^7.23.3" + "@babel/plugin-transform-export-namespace-from" "^7.23.4" + "@babel/plugin-transform-for-of" "^7.23.6" + "@babel/plugin-transform-function-name" "^7.23.3" + "@babel/plugin-transform-json-strings" "^7.23.4" + "@babel/plugin-transform-literals" "^7.23.3" + "@babel/plugin-transform-logical-assignment-operators" "^7.23.4" + "@babel/plugin-transform-member-expression-literals" "^7.23.3" + "@babel/plugin-transform-modules-amd" "^7.23.3" + "@babel/plugin-transform-modules-commonjs" "^7.23.3" + "@babel/plugin-transform-modules-systemjs" "^7.23.9" + "@babel/plugin-transform-modules-umd" "^7.23.3" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.22.5" + "@babel/plugin-transform-new-target" "^7.23.3" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.23.4" + "@babel/plugin-transform-numeric-separator" "^7.23.4" + "@babel/plugin-transform-object-rest-spread" "^7.24.0" + "@babel/plugin-transform-object-super" "^7.23.3" + "@babel/plugin-transform-optional-catch-binding" "^7.23.4" + "@babel/plugin-transform-optional-chaining" "^7.23.4" + "@babel/plugin-transform-parameters" "^7.23.3" + "@babel/plugin-transform-private-methods" "^7.23.3" + "@babel/plugin-transform-private-property-in-object" "^7.23.4" + "@babel/plugin-transform-property-literals" "^7.23.3" + "@babel/plugin-transform-regenerator" "^7.23.3" + "@babel/plugin-transform-reserved-words" "^7.23.3" + "@babel/plugin-transform-shorthand-properties" "^7.23.3" + "@babel/plugin-transform-spread" "^7.23.3" + "@babel/plugin-transform-sticky-regex" "^7.23.3" + "@babel/plugin-transform-template-literals" "^7.23.3" + "@babel/plugin-transform-typeof-symbol" "^7.23.3" + "@babel/plugin-transform-unicode-escapes" "^7.23.3" + "@babel/plugin-transform-unicode-property-regex" "^7.23.3" + "@babel/plugin-transform-unicode-regex" "^7.23.3" + "@babel/plugin-transform-unicode-sets-regex" "^7.23.3" + "@babel/preset-modules" "0.1.6-no-external-plugins" + babel-plugin-polyfill-corejs2 "^0.4.8" + babel-plugin-polyfill-corejs3 "^0.9.0" + babel-plugin-polyfill-regenerator "^0.5.5" + core-js-compat "^3.31.0" + semver "^6.3.1" + +"@babel/preset-modules@0.1.6-no-external-plugins": + version "0.1.6-no-external-plugins" + resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a" + integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" - "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" - "@babel/plugin-transform-dotall-regex" "^7.4.4" "@babel/types" "^7.4.4" esutils "^2.0.2" -"@babel/runtime@^7.14.0", "@babel/runtime@^7.15.4": - version "7.17.8" - resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.8.tgz#3e56e4aff81befa55ac3ac6a0967349fd1c5bca2" - integrity sha512-dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA== +"@babel/regjsgen@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@babel/regjsgen/-/regjsgen-0.8.0.tgz#f0ba69b075e1f05fb2825b7fad991e7adbb18310" + integrity sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA== + +"@babel/runtime@^7.15.4", "@babel/runtime@^7.23.8", "@babel/runtime@^7.8.4": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.24.0.tgz#584c450063ffda59697021430cb47101b085951e" + integrity sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw== + dependencies: + regenerator-runtime "^0.14.0" + +"@babel/template@^7.22.15", "@babel/template@^7.24.0", "@babel/template@^7.3.3": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" + integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== + dependencies: + "@babel/code-frame" "^7.23.5" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" + +"@babel/traverse@^7.14.9", "@babel/traverse@^7.24.0", "@babel/traverse@^7.7.2": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e" + integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw== + dependencies: + "@babel/code-frame" "^7.23.5" + "@babel/generator" "^7.23.6" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" + debug "^4.3.1" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.19", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.24.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.0.tgz#3b951f435a92e7333eba05b7566fd297960ea1bf" + integrity sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w== dependencies: - regenerator-runtime "^0.13.4" + "@babel/helper-string-parser" "^7.23.4" + "@babel/helper-validator-identifier" "^7.22.20" + to-fast-properties "^2.0.0" -"@babel/runtime@^7.8.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.10.4.tgz?cache=0&sync_timestamp=1593521094781&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fruntime%2Fdownload%2F%40babel%2Fruntime-7.10.4.tgz#a6724f1a6b8d2f6ea5236dbfe58c7d7ea9c5eb99" - integrity sha1-pnJPGmuNL26lI22/5Yx9fqnF65k= +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@csstools/cascade-layer-name-parser@^1.0.8": + version "1.0.8" + resolved "https://registry.yarnpkg.com/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-1.0.8.tgz#24d841d80e78f6c2970a36d53e6b58e8fcea41f6" + integrity sha512-xHxXavWvXB5nAA9IvZtjEzkONM3hPXpxqYK4cEw60LcqPiFjq7ZlEFxOyYFPrG4UdANKtnucNtRVDy7frjq6AA== + +"@csstools/color-helpers@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@csstools/color-helpers/-/color-helpers-4.0.0.tgz#a1d6ffcefe5c1d389cbcca15f46da3cdaf241443" + integrity sha512-wjyXB22/h2OvxAr3jldPB7R7kjTUEzopvjitS8jWtyd8fN6xJ8vy1HnHu0ZNfEkqpBJgQ76Q+sBDshWcMvTa/w== + +"@csstools/css-calc@^1.1.7": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@csstools/css-calc/-/css-calc-1.1.7.tgz#89b5cde81ecb4686d9abd66b7eb54015cf39c442" + integrity sha512-+7bUzB5I4cI97tKmBJA8ilTl/YRo6VAOdlrnd/4x2NyK60nvYurGKa5TZpE1zcgIrTC97iJRE0/V65feyFytuw== + +"@csstools/css-color-parser@^1.5.2": + version "1.5.2" + resolved "https://registry.yarnpkg.com/@csstools/css-color-parser/-/css-color-parser-1.5.2.tgz#4fdf8e23960b4724913f7cbfd4f413eb8f35724b" + integrity sha512-5GEkuuUxD5dael3xoWjyf7gAPAi4pwm8X8JW/nUMhxntGY4Wo4Lp7vKlex4V5ZgTfAoov14rZFsZyOantdTatg== dependencies: - regenerator-runtime "^0.13.4" + "@csstools/color-helpers" "^4.0.0" + "@csstools/css-calc" "^1.1.7" -"@babel/template@^7.10.4", "@babel/template@^7.3.3": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/template/download/@babel/template-7.10.4.tgz#3251996c4200ebc71d1a8fc405fba940f36ba278" - integrity sha1-MlGZbEIA68cdGo/EBfupQPNrong= +"@csstools/css-parser-algorithms@^2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.6.0.tgz#b45d3c7cbdd4214261724c82f96e33c746fedd58" + integrity sha512-YfEHq0eRH98ffb5/EsrrDspVWAuph6gDggAE74ZtjecsmyyWpW768hOyiONa8zwWGbIWYfa2Xp4tRTrpQQ00CQ== + +"@csstools/css-tokenizer@^2.2.3": + version "2.2.3" + resolved "https://registry.yarnpkg.com/@csstools/css-tokenizer/-/css-tokenizer-2.2.3.tgz#b099d543ea57b64f495915a095ead583866c50c6" + integrity sha512-pp//EvZ9dUmGuGtG1p+n17gTHEOqu9jO+FiCUjNN3BDmyhdA2Jq9QsVeR7K8/2QCK17HSsioPlTW9ZkzoWb3Lg== + +"@csstools/media-query-list-parser@^2.1.8": + version "2.1.8" + resolved "https://registry.yarnpkg.com/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.8.tgz#36157fbe54ea30d5f2b1767c69fcdf92048a7b1d" + integrity sha512-DiD3vG5ciNzeuTEoh74S+JMjQDs50R3zlxHnBnfd04YYfA/kh2KiBCGhzqLxlJcNq+7yNQ3stuZZYLX6wK/U2g== + +"@csstools/postcss-cascade-layers@^4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-4.0.3.tgz#2805dbb8dec661101928298b2e16599edf3c2bea" + integrity sha512-RbkQoOH23yGhWVetgBTwFgIOHEyU2tKMN7blTz/YAKKabR6tr9pP7mYS23Q9snFY2hr8WSaV8Le64KdM9BtUSA== + dependencies: + "@csstools/selector-specificity" "^3.0.2" + postcss-selector-parser "^6.0.13" + +"@csstools/postcss-color-function@^3.0.10": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-3.0.10.tgz#708d34f24daf5ff9978d2d4e8d3413f638a41158" + integrity sha512-jxiXmSl4ZYX8KewFjL5ef6of9uW73VkaHeDb2tqb5q4ZDPYxjusNX1KJ8UXY8+7ydqS5QBo42tVMrSMGy+rDmw== + dependencies: + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-color-mix-function@^2.0.10": + version "2.0.10" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-2.0.10.tgz#fd86d1f3b334fb59a3558d33f121ce5dff758da8" + integrity sha512-zeD856+FDCUjB077pPS+Z9OnTQnqpiJrao3TW+sasCb/gJ3vZCX7sRSRFsRUo0/MntTtJu9hkKv9eMkFmfjydA== + dependencies: + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-exponential-functions@^1.0.4": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-1.0.4.tgz#c8c3773d4f761428717b80803302722ed2f849f1" + integrity sha512-frMf0CFVnZoGEKAHlxLy3s4g/tpjyFn5+A+h895UJNm9Uc+ewGT7+EeK7Kh9IHH4pD4FkaGW1vOQtER00PLurQ== + dependencies: + "@csstools/css-calc" "^1.1.7" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + +"@csstools/postcss-font-format-keywords@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-3.0.2.tgz#b504cfc60588ac39fa5d1c67ef3da802b1bd7701" + integrity sha512-E0xz2sjm4AMCkXLCFvI/lyl4XO6aN1NCSMMVEOngFDJ+k2rDwfr6NDjWljk1li42jiLNChVX+YFnmfGCigZKXw== + dependencies: + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-gamut-mapping@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-1.0.3.tgz#e5323fb1bf46f6d32d760e98028a8e9da9d8fe4b" + integrity sha512-P0+ude1KyCy9LXOe2pHJmpcXK4q/OQbr2Sn2wQSssMw0rALGmny2MfHiCqEu8n6mf2cN6lWDZdzY8enBk8WHXQ== + dependencies: + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + +"@csstools/postcss-gradients-interpolation-method@^4.0.10": + version "4.0.11" + resolved "https://registry.yarnpkg.com/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-4.0.11.tgz#4e6cf5d6917672058d532d963c709e3776b9ab36" + integrity sha512-LFom5jCVUfzF+iuiOZvhvX7RRN8vc+tKpcKo9s4keEBAU2mPwV5/Fgz5iylEfXP/DZbEdq2C0At20urMi/lupw== + dependencies: + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-hwb-function@^3.0.9": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-3.0.9.tgz#15c5b8d43cffe62283b6175494188d6957712d91" + integrity sha512-S3/Z+mGHWIKAex7DLsHFDiku5lBEK34avT2My6sGPNCXB38TZjrKI0rd7JdN9oulem5sn+CU7oONyIftui24oQ== + dependencies: + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-ic-unit@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-3.0.4.tgz#9f4bffaed6ece2a79e1e15fbd7ba6aea8d61c851" + integrity sha512-OB6ojl33/TQHhjVx1NI+n3EnYbdUM6Q/mSUv3WFATdcz7IrH/CmBaZt7P1R6j1Xdp58thIa6jm4Je7saGs+2AA== + dependencies: + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-initial@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-initial/-/postcss-initial-1.0.1.tgz#5aa378de9bfd0e6e377433f8986bdecf579e1268" + integrity sha512-wtb+IbUIrIf8CrN6MLQuFR7nlU5C7PwuebfeEXfjthUha1+XZj2RVi+5k/lukToA24sZkYAiSJfHM8uG/UZIdg== + +"@csstools/postcss-is-pseudo-class@^4.0.5": + version "4.0.5" + resolved "https://registry.yarnpkg.com/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-4.0.5.tgz#c2b9a89e8c2f4cb80c3587dae1ed544447bbd16e" + integrity sha512-qG3MI7IN3KY9UwdaE9E7G7sFydscVW7nAj5OGwaBP9tQPEEVdxXTGI+l1ZW5EUpZFSj+u3q/22fH5+8HI72+Bg== + dependencies: + "@csstools/selector-specificity" "^3.0.2" + postcss-selector-parser "^6.0.13" + +"@csstools/postcss-light-dark-function@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-1.0.0.tgz#31407d716f0083bb386097dc07a084b09356d73d" + integrity sha512-KHo633V16DGo6tmpr1ARAwO73CPBNmDI3PfSQYe7ZBMiv60WEizbcEroK75fHjxKYJ4tj9uCCzp5sYG4cEUqqw== + dependencies: + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-logical-float-and-clear@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-2.0.1.tgz#c70ed8293cc376b1572bf56794219f54dc58c54d" + integrity sha512-SsrWUNaXKr+e/Uo4R/uIsqJYt3DaggIh/jyZdhy/q8fECoJSKsSMr7nObSLdvoULB69Zb6Bs+sefEIoMG/YfOA== + +"@csstools/postcss-logical-overflow@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-overflow/-/postcss-logical-overflow-1.0.1.tgz#d14631369f43ef989c7e32f051ddb6952a8ce35c" + integrity sha512-Kl4lAbMg0iyztEzDhZuQw8Sj9r2uqFDcU1IPl+AAt2nue8K/f1i7ElvKtXkjhIAmKiy5h2EY8Gt/Cqg0pYFDCw== + +"@csstools/postcss-logical-overscroll-behavior@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-overscroll-behavior/-/postcss-logical-overscroll-behavior-1.0.1.tgz#9305a6f0d08bb7b5f1a228272951f72d3bf9d44f" + integrity sha512-+kHamNxAnX8ojPCtV8WPcUP3XcqMFBSDuBuvT6MHgq7oX4IQxLIXKx64t7g9LiuJzE7vd06Q9qUYR6bh4YnGpQ== + +"@csstools/postcss-logical-resize@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-resize/-/postcss-logical-resize-2.0.1.tgz#a46c1b51055db96fb63af3bfe58909c773aea377" + integrity sha512-W5Gtwz7oIuFcKa5SmBjQ2uxr8ZoL7M2bkoIf0T1WeNqljMkBrfw1DDA8/J83k57NQ1kcweJEjkJ04pUkmyee3A== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-logical-viewport-units@^2.0.6": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-2.0.6.tgz#1f91e865e73f5d135038c519957a3b95ffe552ad" + integrity sha512-6hV0ngZh8J7HqNY3kyt+z5ABN/XE18qvrU7ne4YSkKfltrWDnQgGiW/Q+h7bdQz8/W5juAefcdCCAJUIBE7erg== + dependencies: + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-media-minmax@^1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@csstools/postcss-media-minmax/-/postcss-media-minmax-1.1.3.tgz#87ff7af309916b36fe00e1f4ad6e03a5c16e74b9" + integrity sha512-W9AFRQSLvT+Dxtp20AewzGTUxzkJ21XSKzqRALwQdAv0uJGXkR76qgdhkoX0L/tcV4gXtgDfVtGYL/x2Nz/M5Q== + dependencies: + "@csstools/css-calc" "^1.1.7" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/media-query-list-parser" "^2.1.8" + +"@csstools/postcss-media-queries-aspect-ratio-number-values@^2.0.6": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-2.0.6.tgz#ca6dae6949bfb0f274a4029776614720e243acbe" + integrity sha512-awc2qenSDvx6r+w6G9xxENp+LsbvHC8mMMV23KYmk4pR3YL8JxeKPDSiDhmqd93FQ9nNNDc/CaCQEcvP+GV4rw== + dependencies: + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/media-query-list-parser" "^2.1.8" + +"@csstools/postcss-nested-calc@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-nested-calc/-/postcss-nested-calc-3.0.2.tgz#72ae4d087987ab5596397f5c2e5db4403b81c4a9" + integrity sha512-ySUmPyawiHSmBW/VI44+IObcKH0v88LqFe0d09Sb3w4B1qjkaROc6d5IA3ll9kjD46IIX/dbO5bwFN/swyoyZA== + dependencies: + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" + +"@csstools/postcss-normalize-display-values@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-3.0.2.tgz#9013e6ade2fbd4cd725438c9ff0b1000062cf20d" + integrity sha512-fCapyyT/dUdyPtrelQSIV+d5HqtTgnNP/BEG9IuhgXHt93Wc4CfC1bQ55GzKAjWrZbgakMQ7MLfCXEf3rlZJOw== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-oklab-function@^3.0.10": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-3.0.10.tgz#9f230ce28a266de8a8e264025aebce41313d4053" + integrity sha512-s9trs1c+gUMtaTtwrrIpdVQkUbRuwi6bQ9rBHaqwt4kd3kEnEYfP85uLY1inFx6Rt8OM2XVg3PSYbfnFSAO51A== + dependencies: + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + +"@csstools/postcss-progressive-custom-properties@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-3.1.0.tgz#e4d6143b3ba50d1f7435932fd112db31e18f05af" + integrity sha512-Mfb1T1BHa6pktLI+poMEHI7Q+VYvAsdwJZPFsSkIB2ZUsawCiPxXLw06BKSVPITxFlaY/FEUzfpyOTfX9YCE2w== + dependencies: + postcss-value-parser "^4.2.0" + +"@csstools/postcss-relative-color-syntax@^2.0.10": + version "2.0.10" + resolved "https://registry.yarnpkg.com/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-2.0.10.tgz#07b9484c841623e32777bd7becac7679ce62c08d" + integrity sha512-IkTIk9Eq2VegSN4lgsljGY8boyfX3l3Pw58e+R9oyPe/Ye7r3NwuiQ3w0nkXoQ+RC+d240V6n7eZme2mEPqQvg== dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/types" "^7.10.4" + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" -"@babel/template@^7.16.7": - version "7.16.7" - resolved "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" - integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== +"@csstools/postcss-scope-pseudo-class@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-3.0.1.tgz#c5454ea2fb3cf9beaf212d3a631a5c18cd4fbc14" + integrity sha512-3ZFonK2gfgqg29gUJ2w7xVw2wFJ1eNWVDONjbzGkm73gJHVCYK5fnCqlLr+N+KbEfv2XbWAO0AaOJCFB6Fer6A== dependencies: - "@babel/code-frame" "^7.16.7" - "@babel/parser" "^7.16.7" - "@babel/types" "^7.16.7" + postcss-selector-parser "^6.0.13" -"@babel/traverse@^7.10.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/traverse/download/@babel/traverse-7.10.4.tgz#e642e5395a3b09cc95c8e74a27432b484b697818" - integrity sha1-5kLlOVo7CcyVyOdKJ0MrSEtpeBg= - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/generator" "^7.10.4" - "@babel/helper-function-name" "^7.10.4" - "@babel/helper-split-export-declaration" "^7.10.4" - "@babel/parser" "^7.10.4" - "@babel/types" "^7.10.4" - debug "^4.1.0" - globals "^11.1.0" - lodash "^4.17.13" - -"@babel/traverse@^7.13.0", "@babel/traverse@^7.14.9", "@babel/traverse@^7.16.7", "@babel/traverse@^7.16.8", "@babel/traverse@^7.17.3", "@babel/traverse@^7.7.2": - version "7.17.3" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" - integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw== - dependencies: - "@babel/code-frame" "^7.16.7" - "@babel/generator" "^7.17.3" - "@babel/helper-environment-visitor" "^7.16.7" - "@babel/helper-function-name" "^7.16.7" - "@babel/helper-hoist-variables" "^7.16.7" - "@babel/helper-split-export-declaration" "^7.16.7" - "@babel/parser" "^7.17.3" - "@babel/types" "^7.17.0" - debug "^4.1.0" - globals "^11.1.0" +"@csstools/postcss-stepped-value-functions@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-3.0.5.tgz#857cf8eb6bb6ac2831cabe58c15604cfb95af1b2" + integrity sha512-B8K8RaTrYVZLxbNzVUvFO3SlCDJDaUTAO7KRth05fa7f01ufPvb6ztdBuxSoRwOtmNp8iROxPJHOemWo2kBBtA== + dependencies: + "@csstools/css-calc" "^1.1.7" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" -"@babel/types@^7.0.0", "@babel/types@^7.10.4", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": - version "7.10.4" - resolved "https://registry.npm.taobao.org/@babel/types/download/@babel/types-7.10.4.tgz?cache=0&sync_timestamp=1593521094123&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Ftypes%2Fdownload%2F%40babel%2Ftypes-7.10.4.tgz#369517188352e18219981efd156bfdb199fff1ee" - integrity sha1-NpUXGINS4YIZmB79FWv9sZn/8e4= +"@csstools/postcss-text-decoration-shorthand@^3.0.4": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-3.0.4.tgz#b8c5216faa2c9d8a05b3f93da7b403dd5dd53a79" + integrity sha512-yUZmbnUemgQmja7SpOZeU45+P49wNEgQguRdyTktFkZsHf7Gof+ZIYfvF6Cm+LsU1PwSupy4yUeEKKjX5+k6cQ== dependencies: - "@babel/helper-validator-identifier" "^7.10.4" - lodash "^4.17.13" - to-fast-properties "^2.0.0" + "@csstools/color-helpers" "^4.0.0" + postcss-value-parser "^4.2.0" -"@babel/types@^7.16.0", "@babel/types@^7.16.7", "@babel/types@^7.16.8", "@babel/types@^7.17.0": - version "7.17.0" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" - integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== +"@csstools/postcss-trigonometric-functions@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-3.0.5.tgz#bf9f061120bed802fe133188a94c82ba79c440d6" + integrity sha512-RhBfQ0TsBudyPuoo8pXKdfQuUiQxMU/Sc5GyV57bWk93JbUHXq6b4CdPx+B/tHUeFKvocVJn/e2jbu96rh0d3Q== dependencies: - "@babel/helper-validator-identifier" "^7.16.7" - to-fast-properties "^2.0.0" + "@csstools/css-calc" "^1.1.7" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== +"@csstools/postcss-unset-value@^3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-unset-value/-/postcss-unset-value-3.0.1.tgz#598a25630fd9ab0edf066d235916f7441404942a" + integrity sha512-dbDnZ2ja2U8mbPP0Hvmt2RMEGBiF1H7oY6HYSpjteXJGihYwgxgTr6KRbbJ/V6c+4wd51M+9980qG4gKVn5ttg== -"@csstools/convert-colors@^1.4.0": - version "1.4.0" - resolved "https://registry.npm.taobao.org/@csstools/convert-colors/download/@csstools/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7" - integrity sha1-rUldxBsS511YjG24uYNPCPoTHrc= +"@csstools/selector-specificity@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-3.0.2.tgz#ea61ba7bb24be3502c6aaa3190ed231f4633a81e" + integrity sha512-RpHaZ1h9LE7aALeQXmXrJkRG84ZxIsctEN2biEUmFyKpzFM3zZ35eUMcIzZFsw/2olQE6v69+esEqU2f1MKycg== -"@fortawesome/fontawesome-common-types@6.1.1": - version "6.1.1" - resolved "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.1.1.tgz#7dc996042d21fc1ae850e3173b5c67b0549f9105" - integrity sha512-wVn5WJPirFTnzN6tR95abCx+ocH+3IFLXAgyavnf9hUmN0CfWoDjPT/BAWsUVwSlYYVBeCLJxaqi7ZGe4uSjBA== +"@csstools/utilities@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/utilities/-/utilities-1.0.0.tgz#42f3c213f2fb929324d465684ab9f46a0febd4bb" + integrity sha512-tAgvZQe/t2mlvpNosA4+CkMiZ2azISW5WPAcdSalZlEjQvUfghHxfQcrCiK/7/CrfAWVxyM88kGFYO82heIGDg== + +"@discoveryjs/json-ext@0.5.7": + version "0.5.7" + resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" + integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== + +"@fortawesome/fontawesome-common-types@6.5.1": + version "6.5.1" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.5.1.tgz#fdb1ec4952b689f5f7aa0bffe46180bb35490032" + integrity sha512-GkWzv+L6d2bI5f/Vk6ikJ9xtl7dfXtoRu3YGE6nq0p/FFqA1ebMOAWg3XgRyb0I6LYyYkiAo+3/KrwuBp8xG7A== "@fortawesome/fontawesome-free@^6.1.1": - version "6.1.1" - resolved "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.1.1.tgz#bf5d45611ab74890be386712a0e5d998c65ee2a1" - integrity sha512-J/3yg2AIXc9wznaVqpHVX3Wa5jwKovVF0AMYSnbmcXTiL3PpRPfF58pzWucCwEiCJBp+hCNRLWClTomD8SseKg== + version "6.5.1" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-6.5.1.tgz#55cc8410abf1003b726324661ce5b0d1c10de258" + integrity sha512-CNy5vSwN3fsUStPRLX7fUYojyuzoEMSXPl7zSLJ8TgtRfjv24LOnOWKT2zYwaHZCJGkdyRnTmstR0P+Ah503Gw== "@fortawesome/fontawesome-svg-core@^6.1.1": - version "6.1.1" - resolved "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.1.1.tgz#3424ec6182515951816be9b11665d67efdce5b5f" - integrity sha512-NCg0w2YIp81f4V6cMGD9iomfsIj7GWrqmsa0ZsPh59G7PKiGN1KymZNxmF00ssuAlo/VZmpK6xazsGOwzKYUMg== + version "6.5.1" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.5.1.tgz#9d56d46bddad78a7ebb2043a97957039fcebcf0a" + integrity sha512-MfRCYlQPXoLlpem+egxjfkEuP9UQswTrlCOsknus/NcMoblTH2g0jPrapbcIb04KGA7E2GZxbAccGZfWoYgsrQ== dependencies: - "@fortawesome/fontawesome-common-types" "6.1.1" + "@fortawesome/fontawesome-common-types" "6.5.1" "@fortawesome/free-solid-svg-icons@^6.1.1": - version "6.1.1" - resolved "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.1.1.tgz#3369e673f8fe8be2fba30b1ec274d47490a830a6" - integrity sha512-0/5exxavOhI/D4Ovm2r3vxNojGZioPwmFrKg0ZUH69Q68uFhFPs6+dhAToh6VEQBntxPRYPuT5Cg1tpNa9JUPg== + version "6.5.1" + resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.5.1.tgz#737b8d787debe88b400ab7528f47be333031274a" + integrity sha512-S1PPfU3mIJa59biTtXJz1oI0+KAXW6bkAb31XKhxdxtuXDiUIFsih4JR1v5BbxY7hVHsD1RKq+jRkVRaf773NQ== dependencies: - "@fortawesome/fontawesome-common-types" "6.1.1" + "@fortawesome/fontawesome-common-types" "6.5.1" "@fortawesome/vue-fontawesome@^2.0.6": - version "2.0.6" - resolved "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-2.0.6.tgz#87e691ed87f28f4667238573a29743f543a087f6" - integrity sha512-V3vT3flY15AKbUS31aZOP12awQI3aAzkr2B1KnqcHLmwrmy51DW3pwyBczKdypV8QxBZ8U68Hl2XxK2nudTxpg== + version "2.0.10" + resolved "https://registry.yarnpkg.com/@fortawesome/vue-fontawesome/-/vue-fontawesome-2.0.10.tgz#b10721425d7efdee6d83fba21c64cad86fa51904" + integrity sha512-OTETSXz+3ygD2OK2/vy82cmUBpuJqeOAg4gfnnv+f2Rir1tDIhQg026Q3NQxznq83ZLz8iNqGG9XJm26inpDeg== "@gar/promisify@^1.0.1": version "1.1.3" - resolved "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" + resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== "@intlify/shared@^9.0.0": - version "9.1.9" - resolved "https://registry.npmjs.org/@intlify/shared/-/shared-9.1.9.tgz#0baaf96128b85560666bec784ffb01f6623cc17a" - integrity sha512-xKGM1d0EAxdDFCWedcYXOm6V5Pfw/TMudd6/qCdEb4tv0hk9EKeg7lwQF1azE0dP2phvx0yXxrt7UQK+IZjNdw== + version "9.9.1" + resolved "https://registry.yarnpkg.com/@intlify/shared/-/shared-9.9.1.tgz#b602d012b35f6c336b29a8098296dfac96a005f5" + integrity sha512-b3Pta1nwkz5rGq434v0psHwEwHGy1pYCttfcM22IE//K9owbpkEvFptx9VcuRAxjQdrO2If249cmDDjBu5wMDA== "@intlify/vue-i18n-extensions@^1.0.2": version "1.0.2" - resolved "https://registry.npmjs.org/@intlify/vue-i18n-extensions/-/vue-i18n-extensions-1.0.2.tgz#ab7f8507f7d423c368e44fa21d6dece700261fca" + resolved "https://registry.yarnpkg.com/@intlify/vue-i18n-extensions/-/vue-i18n-extensions-1.0.2.tgz#ab7f8507f7d423c368e44fa21d6dece700261fca" integrity sha512-rnfA0ScyBXyp9xsSD4EAMGeOh1yv/AE7fhqdAdSOr5X8N39azz257umfRtzNT9sHXAKSSzpCVhIbMAkp5c/gjQ== dependencies: "@babel/parser" "^7.9.6" "@intlify/vue-i18n-loader@^1.1.0": version "1.1.0" - resolved "https://registry.npmjs.org/@intlify/vue-i18n-loader/-/vue-i18n-loader-1.1.0.tgz#eecc6460823676f533784b3641665c5a609eccf0" + resolved "https://registry.yarnpkg.com/@intlify/vue-i18n-loader/-/vue-i18n-loader-1.1.0.tgz#eecc6460823676f533784b3641665c5a609eccf0" integrity sha512-9LXiztMtYKTE8t/hRwwGUp+ofrwU0sxLQLzFEOZ38zvn0DonUIQmZUj1cfz5p1Lu8BllxKbCrn6HnsRJ+LYA6g== dependencies: "@intlify/shared" "^9.0.0" js-yaml "^3.13.1" json5 "^2.1.1" +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + dependencies: + string-width "^5.1.2" + string-width-cjs "npm:string-width@^4.2.0" + strip-ansi "^7.0.1" + strip-ansi-cjs "npm:strip-ansi@^6.0.1" + wrap-ansi "^8.1.0" + wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" - resolved "https://registry.npm.taobao.org/@istanbuljs/load-nyc-config/download/@istanbuljs/load-nyc-config-1.1.0.tgz?cache=0&sync_timestamp=1589989504296&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40istanbuljs%2Fload-nyc-config%2Fdownload%2F%40istanbuljs%2Fload-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha1-/T2x1Z7PfPEh6AZQu4ZxL5tV7O0= + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== dependencies: camelcase "^5.3.1" find-up "^4.1.0" @@ -1263,13 +1412,13 @@ resolve-from "^5.0.0" "@istanbuljs/schema@^0.1.2": - version "0.1.2" - resolved "https://registry.npm.taobao.org/@istanbuljs/schema/download/@istanbuljs/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" - integrity sha1-JlIL8Jq+SlZEzVQU43ElqJVCQd0= + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== "@jest/console@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== dependencies: "@jest/types" "^27.5.1" @@ -1281,7 +1430,7 @@ "@jest/core@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== dependencies: "@jest/console" "^27.5.1" @@ -1315,7 +1464,7 @@ "@jest/environment@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== dependencies: "@jest/fake-timers" "^27.5.1" @@ -1325,7 +1474,7 @@ "@jest/fake-timers@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== dependencies: "@jest/types" "^27.5.1" @@ -1337,7 +1486,7 @@ "@jest/globals@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== dependencies: "@jest/environment" "^27.5.1" @@ -1346,7 +1495,7 @@ "@jest/reporters@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== dependencies: "@bcoe/v8-coverage" "^0.2.3" @@ -1377,7 +1526,7 @@ "@jest/source-map@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== dependencies: callsites "^3.0.0" @@ -1386,7 +1535,7 @@ "@jest/test-result@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== dependencies: "@jest/console" "^27.5.1" @@ -1396,7 +1545,7 @@ "@jest/test-sequencer@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== dependencies: "@jest/test-result" "^27.5.1" @@ -1406,7 +1555,7 @@ "@jest/transform@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== dependencies: "@babel/core" "^7.1.0" @@ -1427,7 +1576,7 @@ "@jest/types@^27.5.1": version "27.5.1" - resolved "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" @@ -1436,53 +1585,75 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" -"@jridgewell/resolve-uri@^3.0.3": - version "3.0.5" - resolved "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz#68eb521368db76d040a6315cdb24bf2483037b9c" - integrity sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew== - -"@jridgewell/sourcemap-codec@^1.4.10": - version "1.4.11" - resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz#771a1d8d744eeb71b6adb35808e1a6c7b9b8c8ec" - integrity sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg== - -"@jridgewell/trace-mapping@^0.3.0": +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": version "0.3.4" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.4.tgz#f6a0832dffd5b8a6aaa633b7d9f8e8e94c83a0c3" - integrity sha512-vFv9ttIedivx0ux3QSjhgtCVjPZd5l46ZOMDSCwnH1yUO2e964gO8LZGyv2QkqcgR6TnBU1v+1IFqmeoG+0UJQ== + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.4.tgz#9b18145d26cf33d08576cf4c7665b28554480ed7" + integrity sha512-Oud2QPM5dHviZNn4y/WhhYKSXksv+1xLEIsNrAbGcFzUN3ubqWRFT5gwPchNc5NuzILOU4tPBDTZ4VwhL8Y7cw== dependencies: - "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/set-array" "^1.0.1" "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6" + integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== + +"@jridgewell/set-array@^1.0.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== + +"@jridgewell/source-map@^0.3.3": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" + integrity sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.23" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.23.tgz#afc96847f3f07841477f303eed687707a5aacd80" + integrity sha512-9/4foRoUKp8s96tSkh8DlAAc5A0Ty8vLXld+l9gjKKY6ckwI8G15f0hskGmuLZu78ZlGa1vtsfOa+lnB4vG6Jg== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" "@mdi/font@^6.6.96": - version "6.6.96" - resolved "https://registry.npmjs.org/@mdi/font/-/font-6.6.96.tgz#4eee6faee5f44d3ec401d354fb95775cd6699575" - integrity sha512-FbcvG9z17hwZ7IwX5XeOR1UYGoLq+gTKq6XNPvJFuCpn599GdiPCJbAmmDBJb+jMYXjKYr0lCxfouWGxDA82sA== + version "6.9.96" + resolved "https://registry.yarnpkg.com/@mdi/font/-/font-6.9.96.tgz#c68da7e0895885dd09e60dc08c5ecc0d77f67efb" + integrity sha512-z3QVZStyHVwkDsFR7A7F2PIvZJPWgdSFw4BEEy2Gc9HUN5NfK9mGbjgaYClRcbMWiYEV45srmiYtczmBtCqR8w== -"@nodelib/fs.scandir@2.1.3": - version "2.1.3" - resolved "https://registry.npm.taobao.org/@nodelib/fs.scandir/download/@nodelib/fs.scandir-2.1.3.tgz?cache=0&sync_timestamp=1570173514495&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40nodelib%2Ffs.scandir%2Fdownload%2F%40nodelib%2Ffs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" - integrity sha1-Olgr21OATGum0UZXnEblITDPSjs= +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== dependencies: - "@nodelib/fs.stat" "2.0.3" + "@nodelib/fs.stat" "2.0.5" run-parallel "^1.1.9" -"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2": - version "2.0.3" - resolved "https://registry.npm.taobao.org/@nodelib/fs.stat/download/@nodelib/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" - integrity sha1-NNxfTKu8cg9OYPdadH5+zWwXW9M= +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== "@nodelib/fs.walk@^1.2.3": - version "1.2.4" - resolved "https://registry.npm.taobao.org/@nodelib/fs.walk/download/@nodelib/fs.walk-1.2.4.tgz?cache=0&sync_timestamp=1570173624145&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40nodelib%2Ffs.walk%2Fdownload%2F%40nodelib%2Ffs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" - integrity sha1-ARuSAqcKY2bkNspcBlhEUoqwSXY= + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== dependencies: - "@nodelib/fs.scandir" "2.1.3" + "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" "@npmcli/fs@^1.0.0": version "1.1.1" - resolved "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== dependencies: "@gar/promisify" "^1.0.1" @@ -1490,88 +1661,89 @@ "@npmcli/move-file@^1.0.1": version "1.1.2" - resolved "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== dependencies: mkdirp "^1.0.4" rimraf "^3.0.2" -"@nuxt/babel-preset-app@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/babel-preset-app/-/babel-preset-app-2.15.8.tgz#c78eb8c47c1cafec1c5aba6a52385a3ce877b968" - integrity sha512-z23bY5P7dLTmIbk0ZZ95mcEXIEER/mQCOqEp2vxnzG2nurks+vq6tNcUAXqME1Wl6aXWTXlqky5plBe7RQHzhQ== - dependencies: - "@babel/compat-data" "^7.14.0" - "@babel/core" "^7.14.0" - "@babel/helper-compilation-targets" "^7.13.16" - "@babel/helper-module-imports" "^7.13.12" - "@babel/plugin-proposal-class-properties" "^7.13.0" - "@babel/plugin-proposal-decorators" "^7.13.15" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.13.8" - "@babel/plugin-proposal-optional-chaining" "^7.13.12" - "@babel/plugin-proposal-private-methods" "^7.13.0" - "@babel/plugin-transform-runtime" "^7.13.15" - "@babel/preset-env" "^7.14.1" - "@babel/runtime" "^7.14.0" - "@vue/babel-preset-jsx" "^1.2.4" - core-js "^2.6.5" - core-js-compat "^3.12.1" - regenerator-runtime "^0.13.7" - -"@nuxt/builder@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/builder/-/builder-2.15.8.tgz#66ead4be0a2ce6932a2b7e521cfe1621e49290e7" - integrity sha512-WVhN874LFMdgRiJqpxmeKI+vh5lhCUBVOyR9PhL1m1V/GV3fb+Dqc1BKS6XgayrWAWavPLveCJmQ/FID0puOfQ== - dependencies: - "@nuxt/devalue" "^1.2.5" - "@nuxt/utils" "2.15.8" - "@nuxt/vue-app" "2.15.8" - "@nuxt/webpack" "2.15.8" - chalk "^4.1.1" - chokidar "^3.5.1" - consola "^2.15.3" - fs-extra "^9.1.0" - glob "^7.1.7" +"@nuxt/babel-preset-app@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/babel-preset-app/-/babel-preset-app-2.17.3.tgz#1e21fb5118d5bacbf9fe829e755b38b1ec078804" + integrity sha512-KkmGEKZN2Yvo9XWC2TAJ3e3WMFQTmGGdhJy9Lv/3gW0PCUVvI5e+M+P3VF494BLKWmc4xYXaVu7cGtAUE13vMQ== + dependencies: + "@babel/compat-data" "^7.23.5" + "@babel/core" "^7.23.7" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-module-imports" "^7.22.15" + "@babel/plugin-proposal-class-properties" "^7.18.6" + "@babel/plugin-proposal-decorators" "^7.23.7" + "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.6" + "@babel/plugin-proposal-optional-chaining" "^7.21.0" + "@babel/plugin-proposal-private-methods" "^7.18.6" + "@babel/plugin-proposal-private-property-in-object" "^7.21.11" + "@babel/plugin-transform-runtime" "^7.23.7" + "@babel/preset-env" "^7.23.8" + "@babel/runtime" "^7.23.8" + "@vue/babel-preset-jsx" "^1.4.0" + core-js "^3.35.0" + core-js-compat "^3.35.0" + regenerator-runtime "^0.14.1" + +"@nuxt/builder@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/builder/-/builder-2.17.3.tgz#44be201f35bd3d0c976607c95462f279750b5347" + integrity sha512-qcByuB5+Sy9xHtHT6yxsX01fT4ZMIP1bqVYqtkuwuSnbtFLc6GW2qNpzWkcxSBCzhIp2hTuulOEV6p5FpQVPLg== + dependencies: + "@nuxt/devalue" "^2.0.2" + "@nuxt/utils" "2.17.3" + "@nuxt/vue-app" "2.17.3" + "@nuxt/webpack" "2.17.3" + chalk "^4.1.2" + chokidar "^3.5.3" + consola "^3.2.3" + fs-extra "^10.1.0" + glob "^8.1.0" hash-sum "^2.0.0" - ignore "^5.1.8" + ignore "^5.3.0" lodash "^4.17.21" pify "^5.0.0" - serialize-javascript "^5.0.1" + serialize-javascript "^6.0.2" upath "^2.0.1" -"@nuxt/cli@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/cli/-/cli-2.15.8.tgz#3b946ee08c7b5b3223c8952873c65727e775ec30" - integrity sha512-KcGIILW/dAjBKea1DHsuLCG1sNzhzETShwT23DhXWO304qL8ljf4ndYKzn2RenzauGRGz7MREta80CbJCkLSHw== +"@nuxt/cli@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/cli/-/cli-2.17.3.tgz#6f4f438bb9bf6f77e1949e0a33f82e10edcc388d" + integrity sha512-UwQbb/B/b7/N1vlorBgiW2T41Hc26+04oyze2cx1dErkDNLgjZpjcTu8cWnfSyAeRUeG2r6p8K0SPimCITNZJg== dependencies: - "@nuxt/config" "2.15.8" - "@nuxt/utils" "2.15.8" - boxen "^5.0.1" - chalk "^4.1.1" + "@nuxt/config" "2.17.3" + "@nuxt/utils" "2.17.3" + boxen "^5.1.2" + chalk "^4.1.2" compression "^1.7.4" connect "^3.7.0" - consola "^2.15.3" - crc "^3.8.0" - defu "^4.0.1" - destr "^1.1.0" - execa "^5.0.0" + consola "^3.2.3" + crc "^4.3.2" + defu "^6.1.4" + destr "^2.0.2" + execa "^5.1.1" exit "^0.1.2" - fs-extra "^9.1.0" - globby "^11.0.3" - hable "^3.0.0" + fs-extra "^10.1.0" + globby "^11.0.4" + hookable "^4.4.1" lodash "^4.17.21" - minimist "^1.2.5" + minimist "^1.2.8" opener "1.5.2" pretty-bytes "^5.6.0" - semver "^7.3.5" - serve-static "^1.14.1" - std-env "^2.3.0" + semver "^7.5.4" + serve-static "^1.15.0" + std-env "^3.7.0" upath "^2.0.1" wrap-ansi "^7.0.0" -"@nuxt/components@^2.1.8": +"@nuxt/components@^2.2.1": version "2.2.1" - resolved "https://registry.npmjs.org/@nuxt/components/-/components-2.2.1.tgz#49c4442ac5a0ef49f49ef7d9960f4376fc3e7c78" + resolved "https://registry.yarnpkg.com/@nuxt/components/-/components-2.2.1.tgz#49c4442ac5a0ef49f49ef7d9960f4376fc3e7c78" integrity sha512-r1LHUzifvheTnJtYrMuA+apgsrEJbxcgFKIimeXKb+jl8TnPWdV3egmrxBCaDJchrtY/wmHyP47tunsft7AWwg== dependencies: chalk "^4.1.2" @@ -1583,70 +1755,68 @@ upath "^2.0.1" vue-template-compiler "^2.6.14" -"@nuxt/config@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/config/-/config-2.15.8.tgz#56cc1b052871072a26f76c6d3b69d9b53808ce52" - integrity sha512-KMQbjmUf9RVHeTZEf7zcuFnh03XKZioYhok6GOCY+leu3g5n/UhyPvLnTsgTfsLWohqoRoOm94u4A+tNYwn9VQ== +"@nuxt/config@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/config/-/config-2.17.3.tgz#71725ade4b78a82a4e337aea5b498614aa638606" + integrity sha512-msHFykkeG2wPB8oP369Gha5n1O2RI57vLxSJcAnCrg6vrETfc6DadCsRA1o7v8Z9TjfVyU3leYy9c4F+elwFYg== dependencies: - "@nuxt/utils" "2.15.8" - consola "^2.15.3" - defu "^4.0.1" - destr "^1.1.0" - dotenv "^9.0.2" + "@nuxt/utils" "2.17.3" + consola "^3.2.3" + defu "^6.1.4" + destr "^2.0.2" + dotenv "^16.3.1" lodash "^4.17.21" - rc9 "^1.2.0" - std-env "^2.3.0" - ufo "^0.7.4" - -"@nuxt/core@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/core/-/core-2.15.8.tgz#443d13da9edc5c4ae47d7902f1d6504a8cce27a2" - integrity sha512-31pipWRvwHiyB5VDqffgSO7JtmHxyzgshIzuZzSinxMbVmK3BKsOwacD/51oEyELgrPlUgLqcY9dg+RURgmHGQ== - dependencies: - "@nuxt/config" "2.15.8" - "@nuxt/server" "2.15.8" - "@nuxt/utils" "2.15.8" - consola "^2.15.3" - fs-extra "^9.1.0" - hable "^3.0.0" + rc9 "^2.1.1" + std-env "^3.7.0" + ufo "^1.3.2" + +"@nuxt/core@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/core/-/core-2.17.3.tgz#ee52b6c7b15353163a921decc91926d941cdf494" + integrity sha512-DAyxn49UUjmEyMImaPTjGpV7EccbbqZX14j46fWC7hNR5NkLPBMHFgYj+tsetYK5LMPcKUz1zztRoFX68SMxyw== + dependencies: + "@nuxt/config" "2.17.3" + "@nuxt/server" "2.17.3" + "@nuxt/utils" "2.17.3" + consola "^3.2.3" + fs-extra "^10.1.0" hash-sum "^2.0.0" + hookable "^4.4.1" lodash "^4.17.21" -"@nuxt/devalue@^1.2.5": - version "1.2.5" - resolved "https://registry.npmjs.org/@nuxt/devalue/-/devalue-1.2.5.tgz#8d95e3e74b3332d3eb713342c5c4d18096047d66" - integrity sha512-Tg86C7tqzvZtZli2BQVqgzZN136mZDTgauvJXagglKkP2xt5Kw3NUIiJyjX0Ww/IZy2xVmD0LN+CEPpij4dB2g== - dependencies: - consola "^2.9.0" +"@nuxt/devalue@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@nuxt/devalue/-/devalue-2.0.2.tgz#5749f04df13bda4c863338d8dabaf370f45ef7c7" + integrity sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA== -"@nuxt/friendly-errors-webpack-plugin@^2.5.1": - version "2.5.2" - resolved "https://registry.npmjs.org/@nuxt/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-2.5.2.tgz#982a43ee2da61611f7396439e57038392d3944d5" - integrity sha512-LLc+90lnxVbpKkMqk5z1EWpXoODhc6gRkqqXJCInJwF5xabHAE7biFvbULfvTRmtaTzAaP8IV4HQDLUgeAUTTw== +"@nuxt/friendly-errors-webpack-plugin@^2.6.0": + version "2.6.0" + resolved "https://registry.yarnpkg.com/@nuxt/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-2.6.0.tgz#bd0cf6cd73b6e1d3e7c7f1c0de43333e69cc660c" + integrity sha512-3IZj6MXbzlvUxDncAxgBMLQwGPY/JlNhy2i+AGyOHCAReR5HcBxYjVRBvyaKM9R3s5k4OODYKeHAbrToZH/47w== dependencies: - chalk "^2.3.2" - consola "^2.6.0" - error-stack-parser "^2.0.0" + chalk "^2.4.2" + consola "^3.2.3" + error-stack-parser "^2.1.4" string-width "^4.2.3" -"@nuxt/generator@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/generator/-/generator-2.15.8.tgz#d6bd4a677edf14f34d516e13bcb70d62cdd4c5b4" - integrity sha512-hreLdYbBIe3SWcP8LsMG7OlDTx2ZVucX8+f8Vrjft3Q4r8iCwLMYC1s1N5etxeHAZfS2kZiLmF92iscOdfbgMQ== +"@nuxt/generator@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/generator/-/generator-2.17.3.tgz#c26a9d11df8836cd0b2ba35a04eb238ba4729fec" + integrity sha512-m/fnzH+1RvdpDdQODUxjXlMkJzLVuOwk9AOGYZz2YaAP34nxwjxClvgIAT6IQqvq6uBZHex0Zr07N3mwEE06NA== dependencies: - "@nuxt/utils" "2.15.8" - chalk "^4.1.1" - consola "^2.15.3" - defu "^4.0.1" + "@nuxt/utils" "2.17.3" + chalk "^4.1.2" + consola "^3.2.3" + defu "^6.1.4" devalue "^2.0.1" - fs-extra "^9.1.0" + fs-extra "^10.1.0" html-minifier "^4.0.0" - node-html-parser "^3.2.0" - ufo "^0.7.4" + node-html-parser "^6.1.12" + ufo "^1.3.2" -"@nuxt/loading-screen@^2.0.3": +"@nuxt/loading-screen@^2.0.4": version "2.0.4" - resolved "https://registry.npmjs.org/@nuxt/loading-screen/-/loading-screen-2.0.4.tgz#756abd861f77c57001be4d21d47534723afb4f3a" + resolved "https://registry.yarnpkg.com/@nuxt/loading-screen/-/loading-screen-2.0.4.tgz#756abd861f77c57001be4d21d47534723afb4f3a" integrity sha512-xpEDAoRu75tLUYCkUJCIvJkWJSuwr8pqomvQ+fkXpSrkxZ/9OzlBFjAbVdOAWTMj4aV/LVQso4vcEdircKeFIQ== dependencies: connect "^3.7.0" @@ -1655,167 +1825,168 @@ node-res "^5.0.1" serve-static "^1.14.1" -"@nuxt/opencollective@^0.3.2": - version "0.3.2" - resolved "https://registry.npmjs.org/@nuxt/opencollective/-/opencollective-0.3.2.tgz#83cb70cdb2bac5fad6f8c93529e7b11187d49c02" - integrity sha512-XG7rUdXG9fcafu9KTDIYjJSkRO38EwjlKYIb5TQ/0WDbiTUTtUtgncMscKOYzfsY86kGs05pAuMOR+3Fi0aN3A== +"@nuxt/opencollective@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@nuxt/opencollective/-/opencollective-0.4.0.tgz#e8a19f70ae3ce74550a833b24b5364569f181646" + integrity sha512-uUsxOcO2lFeotV+BGOwNLeau+U17mhpaCRhE7v8nJLdWJ2iErQXadl28HaHe6btuT8RD0LDSpvwCiKrHznDxUA== dependencies: - chalk "^4.1.0" - consola "^2.15.0" - node-fetch "^2.6.1" + chalk "^4.1.2" + consola "^3.2.3" + node-fetch-native "^1.4.1" -"@nuxt/server@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/server/-/server-2.15.8.tgz#ec733897de78f858ae0eebd174e8549f247c4e99" - integrity sha512-E4EtXudxtWQBUHMHOxFwm5DlPOkJbW+iF1+zc0dGmXLscep1KWPrlP+4nrpZj8/UKzpupamE8ZTS9I4IbnExVA== +"@nuxt/server@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/server/-/server-2.17.3.tgz#19b25d2bc86d5d3ce0aad7ac717686a31b5d395e" + integrity sha512-+HxDxni7nAHZdtBl1ptug6lHVio/aJn3o8ZkoHJjYuQ52dtJgEFsQs8EpDbKJDFYyL/u0TXEUPACrXbkOh9J8Q== dependencies: - "@nuxt/utils" "2.15.8" - "@nuxt/vue-renderer" "2.15.8" + "@nuxt/utils" "2.17.3" + "@nuxt/vue-renderer" "2.17.3" "@nuxtjs/youch" "^4.2.3" compression "^1.7.4" connect "^3.7.0" - consola "^2.15.3" + consola "^3.2.3" etag "^1.8.1" fresh "^0.5.2" - fs-extra "^9.1.0" - ip "^1.1.5" - launch-editor-middleware "^2.2.1" + fs-extra "^10.1.0" + ip "^1.1.8" + launch-editor-middleware "^2.6.1" on-headers "^1.0.2" pify "^5.0.0" - serve-placeholder "^1.2.3" - serve-static "^1.14.1" + serve-placeholder "^2.0.1" + serve-static "^1.15.0" server-destroy "^1.0.1" - ufo "^0.7.4" + ufo "^1.3.2" -"@nuxt/telemetry@^1.3.3": - version "1.3.6" - resolved "https://registry.npmjs.org/@nuxt/telemetry/-/telemetry-1.3.6.tgz#a27a27b2f56a2ad4ef2c1bef82e12f0bc0dc40ac" - integrity sha512-sZpLf/rU3cvN8/alR1HpJIl3mHPA1GOg41GKdOOrtw7Gi/lCEVk4hK+lpXgYInZ2n6i1JyknpKhM9YzX2RU33w== +"@nuxt/telemetry@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@nuxt/telemetry/-/telemetry-1.5.0.tgz#9b43290b1f80ff749c82a8376d404489fecdf01b" + integrity sha512-MhxiiYCFe0MayN2TvmpcsCV66zBePtrSVkFLJHwTFuneQ5Qma5x0NmCwdov7O4NSuTfgSZels9qPJh0zy0Kc4g== dependencies: - arg "^5.0.0" + arg "^5.0.2" chalk "^4.1.1" - ci-info "^3.1.1" - consola "^2.15.3" + ci-info "^3.7.1" + consola "^3.2.3" create-require "^1.1.1" - defu "^5.0.0" - destr "^1.1.0" + defu "^6.1.3" + destr "^2.0.2" dotenv "^9.0.2" fs-extra "^8.1.0" - git-url-parse "^11.4.4" + git-url-parse "^13.1.1" inquirer "^7.3.3" - is-docker "^2.2.1" - jiti "^1.9.2" + jiti "^1.21.0" nanoid "^3.1.23" node-fetch "^2.6.1" parse-git-config "^3.0.0" - rc9 "^1.2.0" - std-env "^2.3.0" + rc9 "^2.1.1" + std-env "^3.5.0" -"@nuxt/utils@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/utils/-/utils-2.15.8.tgz#0c3594f01be63ab521583904cafd32215b719d4c" - integrity sha512-e0VBarUbPiQ4ZO1T58puoFIuXme7L5gk1QfwyxOONlp2ryE7aRyZ8X/mryuOiIeyP64c4nwSUtN7q9EUWRb7Lg== +"@nuxt/utils@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/utils/-/utils-2.17.3.tgz#5d275da3b2a3b42afc4f46ff731d8e859c50f441" + integrity sha512-/ZdjQY+U3I6X+IiRaHX2zA9l/cgN9GD8YIYuvf2obo5u1cLHin0MNj2dwb4P2iYvygAppb8nmcEsVzG4bppoEA== dependencies: - consola "^2.15.3" + consola "^3.2.3" create-require "^1.1.1" - fs-extra "^9.1.0" + fs-extra "^10.1.0" hash-sum "^2.0.0" - jiti "^1.9.2" + jiti "^1.21.0" lodash "^4.17.21" proper-lockfile "^4.1.2" - semver "^7.3.5" - serialize-javascript "^5.0.1" - signal-exit "^3.0.3" - ua-parser-js "^0.7.28" - ufo "^0.7.4" - -"@nuxt/vue-app@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/vue-app/-/vue-app-2.15.8.tgz#46b7ec8fc93f8d1f4cdf4f6b04134cb40ceb7c4a" - integrity sha512-FJf9FSMPsWT3BqkS37zEuPTxLKzSg2EIwp1sP8Eou25eE08qxRfe2PwTVA8HnXUPNdpz2uk/T9DlNw+JraiFRQ== - dependencies: - node-fetch "^2.6.1" - ufo "^0.7.4" - unfetch "^4.2.0" - vue "^2.6.12" - vue-client-only "^2.0.0" + semver "^7.5.4" + serialize-javascript "^6.0.2" + signal-exit "^4.1.0" + ua-parser-js "^1.0.37" + ufo "^1.3.2" + +"@nuxt/vue-app@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/vue-app/-/vue-app-2.17.3.tgz#5dd9526521d0f84d4f34a4401eef4eee04c29c0d" + integrity sha512-MgB5TKTrZwgVaccMS9YKjNerlXsjnouEfe9Eo4ChVyDybMTy6apjN6QTg+YC/J/kzrsIxrFTbYnh30dAzuZdMw== + dependencies: + node-fetch-native "^1.6.1" + ufo "^1.3.2" + unfetch "^5.0.0" + vue "^2.7.16" + vue-client-only "^2.1.0" vue-meta "^2.4.0" vue-no-ssr "^1.1.1" - vue-router "^3.5.1" - vue-template-compiler "^2.6.12" + vue-router "^3.6.5" + vue-template-compiler "^2.7.16" vuex "^3.6.2" -"@nuxt/vue-renderer@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/vue-renderer/-/vue-renderer-2.15.8.tgz#1cd781de18724a98e27655e89bfe64cd5521491e" - integrity sha512-54I/k+4G6axP9XVYYdtH6M1S6T49OIkarpF6/yIJj0yi3S/2tdJ9eUyfoLZ9EbquZFDDRHBxSswTtr2l/eakPw== +"@nuxt/vue-renderer@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/vue-renderer/-/vue-renderer-2.17.3.tgz#9244b885bd5ecc3f65d040afb73232d0dfec1dbb" + integrity sha512-rSSOdta3vh47FEP8W4d+tdvJMAqejGzgQojJcruuoe+vkbo2zovFFWyISZKMFw7SCVnm0wANAwETJHpb6a3Y6Q== dependencies: - "@nuxt/devalue" "^1.2.5" - "@nuxt/utils" "2.15.8" - consola "^2.15.3" - defu "^4.0.1" - fs-extra "^9.1.0" + "@nuxt/devalue" "^2.0.2" + "@nuxt/utils" "2.17.3" + consola "^3.2.3" + defu "^6.1.4" + fs-extra "^10.1.0" lodash "^4.17.21" lru-cache "^5.1.1" - ufo "^0.7.4" - vue "^2.6.12" + ufo "^1.3.2" + vue "^2.7.16" vue-meta "^2.4.0" - vue-server-renderer "^2.6.12" - -"@nuxt/webpack@2.15.8": - version "2.15.8" - resolved "https://registry.npmjs.org/@nuxt/webpack/-/webpack-2.15.8.tgz#6169b4b8a13ee2cdb4987df6c5a401e18c412ef1" - integrity sha512-CzJYFed23Ow/UK0+cI1FVthDre1p2qc8Q97oizG39d3/SIh3aUHjgj8c60wcR+RSxVO0FzZMXkmq02NmA7vWJg== - dependencies: - "@babel/core" "^7.14.0" - "@nuxt/babel-preset-app" "2.15.8" - "@nuxt/friendly-errors-webpack-plugin" "^2.5.1" - "@nuxt/utils" "2.15.8" - babel-loader "^8.2.2" + vue-server-renderer "^2.7.16" + +"@nuxt/webpack@2.17.3": + version "2.17.3" + resolved "https://registry.yarnpkg.com/@nuxt/webpack/-/webpack-2.17.3.tgz#d83c5bb3ad3085ad93b1628e8cc065e07001ac6e" + integrity sha512-09vP3oShjp4ogsJL3XTi2kk1gh5itG5OwerLxF1NiJNNeuIAc/kei0L3MVhyfMxUVx22SF9sb23cZLIJxoK8cQ== + dependencies: + "@babel/core" "^7.23.7" + "@nuxt/babel-preset-app" "2.17.3" + "@nuxt/friendly-errors-webpack-plugin" "^2.6.0" + "@nuxt/utils" "2.17.3" + babel-loader "^8.3.0" cache-loader "^4.1.0" - caniuse-lite "^1.0.30001228" - consola "^2.15.3" - css-loader "^4.3.0" - cssnano "^4.1.11" + caniuse-lite "^1.0.30001576" + consola "^3.2.3" + css-loader "^5.2.7" + cssnano "^6.0.3" eventsource-polyfill "^0.9.6" - extract-css-chunks-webpack-plugin "^4.9.0" + extract-css-chunks-webpack-plugin "^4.10.0" file-loader "^6.2.0" - glob "^7.1.7" + glob "^8.1.0" hard-source-webpack-plugin "^0.13.1" hash-sum "^2.0.0" html-webpack-plugin "^4.5.1" lodash "^4.17.21" memory-fs "^0.5.0" - optimize-css-assets-webpack-plugin "^5.0.4" + optimize-css-assets-webpack-plugin "^6.0.1" pify "^5.0.0" - pnp-webpack-plugin "^1.6.4" - postcss "^7.0.32" - postcss-import "^12.0.1" + pnp-webpack-plugin "^1.7.0" + postcss "^8.4.33" + postcss-import "^15.1.0" postcss-import-resolver "^2.0.0" - postcss-loader "^3.0.0" - postcss-preset-env "^6.7.0" - postcss-url "^8.0.0" - semver "^7.3.5" - std-env "^2.3.0" - style-resources-loader "^1.4.1" + postcss-loader "^4.3.0" + postcss-preset-env "^9.3.0" + postcss-url "^10.1.3" + semver "^7.5.4" + std-env "^3.7.0" + style-resources-loader "^1.5.0" terser-webpack-plugin "^4.2.3" thread-loader "^3.0.4" time-fix-plugin "^2.0.7" - ufo "^0.7.4" + ufo "^1.3.2" + upath "^2.0.1" url-loader "^4.1.1" - vue-loader "^15.9.7" + vue-loader "^15.11.1" vue-style-loader "^4.1.3" - vue-template-compiler "^2.6.12" - webpack "^4.46.0" - webpack-bundle-analyzer "^4.4.1" - webpack-dev-middleware "^4.2.0" - webpack-hot-middleware "^2.25.0" + vue-template-compiler "^2.7.16" + watchpack "^2.4.0" + webpack "^4.47.0" + webpack-bundle-analyzer "^4.10.1" + webpack-dev-middleware "^5.0.0" + webpack-hot-middleware "^2.26.0" webpack-node-externals "^3.0.0" - webpackbar "^4.0.0" + webpackbar "^6.0.0" "@nuxtjs/axios@^5.13.6": version "5.13.6" - resolved "https://registry.npmjs.org/@nuxtjs/axios/-/axios-5.13.6.tgz#6f4bbd98a3a7799a5d2c0726c6ad2a98aa111881" + resolved "https://registry.yarnpkg.com/@nuxtjs/axios/-/axios-5.13.6.tgz#6f4bbd98a3a7799a5d2c0726c6ad2a98aa111881" integrity sha512-XS+pOE0xsDODs1zAIbo95A0LKlilvJi8YW0NoXYuq3/jjxGgWDxizZ6Yx0AIIjZOoGsXJOPc0/BcnSEUQ2mFBA== dependencies: "@nuxtjs/proxy" "^2.1.0" @@ -1826,14 +1997,14 @@ "@nuxtjs/proxy@^2.1.0": version "2.1.0" - resolved "https://registry.npmjs.org/@nuxtjs/proxy/-/proxy-2.1.0.tgz#fa7715a11d237fa1273503c4e9e137dd1bf5575b" + resolved "https://registry.yarnpkg.com/@nuxtjs/proxy/-/proxy-2.1.0.tgz#fa7715a11d237fa1273503c4e9e137dd1bf5575b" integrity sha512-/qtoeqXgZ4Mg6LRg/gDUZQrFpOlOdHrol/vQYMnKu3aN3bP90UfOUB3QSDghUUK7OISAJ0xp8Ld78aHyCTcKCQ== dependencies: http-proxy-middleware "^1.0.6" "@nuxtjs/pwa@^3.3.5": version "3.3.5" - resolved "https://registry.npmjs.org/@nuxtjs/pwa/-/pwa-3.3.5.tgz#db7c905536ebe8a464a347b6ae3215810642c044" + resolved "https://registry.yarnpkg.com/@nuxtjs/pwa/-/pwa-3.3.5.tgz#db7c905536ebe8a464a347b6ae3215810642c044" integrity sha512-8tTmW8DBspWxlJwTimOHTkwfkwPpL9wIcGmy75Gcmin+c9YtX2Ehxmhgt/TLFOC9XsLAqojqynw3/Agr/9OE1w== dependencies: clone-deep "^4.0.1" @@ -1848,7 +2019,7 @@ "@nuxtjs/vuetify@^1.12.3": version "1.12.3" - resolved "https://registry.npmjs.org/@nuxtjs/vuetify/-/vuetify-1.12.3.tgz#d4adf84e18fd474044bf971e7cc978e25eb16ba1" + resolved "https://registry.yarnpkg.com/@nuxtjs/vuetify/-/vuetify-1.12.3.tgz#d4adf84e18fd474044bf971e7cc978e25eb16ba1" integrity sha512-6uVL3cfESMB00eVjJTNkyU4jvuPTGPn1yteo7lQTH6v+fxHcPaOgvzVYHIKSHIz1DecuOiB5c9b+YjsRP5+C8A== dependencies: deepmerge "^4.2.2" @@ -1859,353 +2030,331 @@ "@nuxtjs/youch@^4.2.3": version "4.2.3" - resolved "https://registry.npm.taobao.org/@nuxtjs/youch/download/@nuxtjs/youch-4.2.3.tgz#36f8b22df5a0efaa81373109851e1d857aca6bed" - integrity sha1-NviyLfWg76qBNzEJhR4dhXrKa+0= + resolved "https://registry.yarnpkg.com/@nuxtjs/youch/-/youch-4.2.3.tgz#36f8b22df5a0efaa81373109851e1d857aca6bed" + integrity sha512-XiTWdadTwtmL/IGkNqbVe+dOlT+IMvcBu7TvKI7plWhVQeBCQ9iKhk3jgvVWFyiwL2yHJDlEwOM5v9oVES5Xmw== dependencies: cookie "^0.3.1" mustache "^2.3.0" stack-trace "0.0.10" -"@polka/url@^1.0.0-next.20": - version "1.0.0-next.21" - resolved "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" - integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== +"@one-ini/wasm@0.1.1": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@one-ini/wasm/-/wasm-0.1.1.tgz#6013659736c9dbfccc96e8a9c2b3de317df39323" + integrity sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw== + +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== -"@sindresorhus/is@^0.14.0": - version "0.14.0" - resolved "https://registry.npm.taobao.org/@sindresorhus/is/download/@sindresorhus/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" - integrity sha1-n7OjzzEyMoFR81PeRjLgHlIQK+o= +"@polka/url@^1.0.0-next.24": + version "1.0.0-next.24" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.24.tgz#58601079e11784d20f82d0585865bb42305c4df3" + integrity sha512-2LuNTFBIO0m7kKIQvvPHN6UE63VjpmL9rnEEaOOaiSPbZK+zUOYIzBAWcED+3XYzhYsd/0mD57VdxAEqqV52CQ== "@sinonjs/commons@^1.7.0": - version "1.8.3" - resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" - integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== + version "1.8.6" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" + integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== dependencies: type-detect "4.0.8" "@sinonjs/fake-timers@^8.0.1": version "8.1.0" - resolved "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== dependencies: "@sinonjs/commons" "^1.7.0" -"@szmarczak/http-timer@^1.1.2": - version "1.1.2" - resolved "https://registry.npm.taobao.org/@szmarczak/http-timer/download/@szmarczak/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" - integrity sha1-sWZeLEYaLNkvTBu/UNVFTeDUtCE= - dependencies: - defer-to-connect "^1.0.1" - "@tootallnate/once@1": version "1.1.2" - resolved "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== -"@types/anymatch@*": - version "1.3.1" - resolved "https://registry.npm.taobao.org/@types/anymatch/download/@types/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" - integrity sha1-M2utwb7sudrMOL6izzKt9ieoQho= - -"@types/babel__core@^7.0.0": - version "7.1.9" - resolved "https://registry.npm.taobao.org/@types/babel__core/download/@types/babel__core-7.1.9.tgz?cache=0&sync_timestamp=1592726773863&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fbabel__core%2Fdownload%2F%40types%2Fbabel__core-7.1.9.tgz#77e59d438522a6fb898fa43dc3455c6e72f3963d" - integrity sha1-d+WdQ4UipvuJj6Q9w0VcbnLzlj0= - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" +"@trysound/sax@0.2.0": + version "0.2.0" + resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" + integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== -"@types/babel__core@^7.1.14": - version "7.1.19" - resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" - integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017" + integrity sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA== dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" "@types/babel__generator" "*" "@types/babel__template" "*" "@types/babel__traverse" "*" "@types/babel__generator@*": - version "7.6.1" - resolved "https://registry.npm.taobao.org/@types/babel__generator/download/@types/babel__generator-7.6.1.tgz#4901767b397e8711aeb99df8d396d7ba7b7f0e04" - integrity sha1-SQF2ezl+hxGuuZ3405bXunt/DgQ= + version "7.6.8" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.8.tgz#f836c61f48b1346e7d2b0d93c6dacc5b9535d3ab" + integrity sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw== dependencies: "@babel/types" "^7.0.0" "@types/babel__template@*": - version "7.0.2" - resolved "https://registry.npm.taobao.org/@types/babel__template/download/@types/babel__template-7.0.2.tgz?cache=0&sync_timestamp=1588199788958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fbabel__template%2Fdownload%2F%40types%2Fbabel__template-7.0.2.tgz#4ff63d6b52eddac1de7b975a5223ed32ecea9307" - integrity sha1-T/Y9a1Lt2sHee5daUiPtMuzqkwc= + version "7.4.4" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.4.tgz#5672513701c1b2199bc6dad636a9d7491586766f" + integrity sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A== dependencies: "@babel/parser" "^7.1.0" "@babel/types" "^7.0.0" -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.6": - version "7.0.12" - resolved "https://registry.npm.taobao.org/@types/babel__traverse/download/@types/babel__traverse-7.0.12.tgz?cache=0&sync_timestamp=1591055744630&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fbabel__traverse%2Fdownload%2F%40types%2Fbabel__traverse-7.0.12.tgz#22f49a028e69465390f87bb103ebd61bd086b8f5" - integrity sha1-IvSaAo5pRlOQ+HuxA+vWG9CGuPU= +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.20.5" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.5.tgz#7b7502be0aa80cc4ef22978846b983edaafcd4dd" + integrity sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ== dependencies: - "@babel/types" "^7.3.0" - -"@types/babel__traverse@^7.0.4": - version "7.14.2" - resolved "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" - integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== - dependencies: - "@babel/types" "^7.3.0" - -"@types/color-name@^1.1.1": - version "1.1.1" - resolved "https://registry.npm.taobao.org/@types/color-name/download/@types/color-name-1.1.1.tgz?cache=0&sync_timestamp=1588199606687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fcolor-name%2Fdownload%2F%40types%2Fcolor-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" - integrity sha1-HBJhu+qhCoBVu8XYq4S3sq/IRqA= + "@babel/types" "^7.20.7" "@types/graceful-fs@^4.1.2": - version "4.1.3" - resolved "https://registry.npm.taobao.org/@types/graceful-fs/download/@types/graceful-fs-4.1.3.tgz#039af35fe26bec35003e8d86d2ee9c586354348f" - integrity sha1-A5rzX+Jr7DUAPo2G0u6cWGNUNI8= + version "4.1.9" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.9.tgz#2a06bc0f68a20ab37b3e36aa238be6abdf49e8b4" + integrity sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ== dependencies: "@types/node" "*" "@types/html-minifier-terser@^5.0.0": - version "5.1.0" - resolved "https://registry.npm.taobao.org/@types/html-minifier-terser/download/@types/html-minifier-terser-5.1.0.tgz#551a4589b6ee2cc9c1dff08056128aec29b94880" - integrity sha1-VRpFibbuLMnB3/CAVhKK7Cm5SIA= + version "5.1.2" + resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-5.1.2.tgz#693b316ad323ea97eed6b38ed1a3cc02b1672b57" + integrity sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w== "@types/http-proxy@^1.17.5": - version "1.17.8" - resolved "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz#968c66903e7e42b483608030ee85800f22d03f55" - integrity sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA== + version "1.17.14" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.14.tgz#57f8ccaa1c1c3780644f8a94f9c6b5000b5e2eec" + integrity sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w== dependencies: "@types/node" "*" -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0": - version "2.0.3" - resolved "https://registry.npm.taobao.org/@types/istanbul-lib-coverage/download/@types/istanbul-lib-coverage-2.0.3.tgz?cache=0&sync_timestamp=1591718497424&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fistanbul-lib-coverage%2Fdownload%2F%40types%2Fistanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" - integrity sha1-S6jdtyAiH0MuRDvV+RF/0iz9R2I= - -"@types/istanbul-lib-coverage@^2.0.1": - version "2.0.4" - resolved "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7" + integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w== "@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.npm.taobao.org/@types/istanbul-lib-report/download/@types/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" - integrity sha1-wUwk8Y6oGQwRjudWK3/5mjZVJoY= + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf" + integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA== dependencies: "@types/istanbul-lib-coverage" "*" "@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54" + integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ== dependencies: "@types/istanbul-lib-report" "*" -"@types/json-schema@^7.0.4": - version "7.0.5" - resolved "https://registry.npm.taobao.org/@types/json-schema/download/@types/json-schema-7.0.5.tgz?cache=0&sync_timestamp=1591720875502&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fjson-schema%2Fdownload%2F%40types%2Fjson-schema-7.0.5.tgz#dcce4430e64b443ba8945f0290fb564ad5bac6dd" - integrity sha1-3M5EMOZLRDuolF8CkPtWStW6xt0= - -"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8": - version "7.0.11" - resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" - integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== +"@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": + version "7.0.15" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" + integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== "@types/minimist@^1.2.0": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" - integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== + version "1.2.5" + resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.5.tgz#ec10755e871497bcd83efe927e43ec46e8c0747e" + integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== "@types/node@*": - version "14.0.14" - resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-14.0.14.tgz?cache=0&sync_timestamp=1592989303090&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.0.14.tgz#24a0b5959f16ac141aeb0c5b3cd7a15b7c64cbce" - integrity sha1-JKC1lZ8WrBQa6wxbPNehW3xky84= + version "20.11.22" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.22.tgz#9a192c3d7e7e71fa3a4b15032654f64643815cd6" + integrity sha512-/G+IxWxma6V3E+pqK1tSl2Fo1kl41pK1yeCyDsgkF9WlVAme4j5ISYM2zR11bgLFJGLN5sVK40T4RJNuiZbEjA== + dependencies: + undici-types "~5.26.4" "@types/normalize-package-data@^2.4.0": - version "2.4.1" - resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" - integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== - -"@types/prettier@^2.1.5": version "2.4.4" - resolved "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz#5d9b63132df54d8909fce1c3f8ca260fdd693e17" - integrity sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA== + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" + integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== + +"@types/parse-json@^4.0.0": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239" + integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== -"@types/q@^1.5.1": - version "1.5.4" - resolved "https://registry.npm.taobao.org/@types/q/download/@types/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" - integrity sha1-FZJUFOCtLNdlv+9YhC9+JqesyyQ= +"@types/prettier@^2.1.5": + version "2.7.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== "@types/source-list-map@*": - version "0.1.2" - resolved "https://registry.npm.taobao.org/@types/source-list-map/download/@types/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" - integrity sha1-AHiDYGP/rxdBI0m7o2QIfgrALsk= + version "0.1.6" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.6.tgz#164e169dd061795b50b83c19e4d3be09f8d3a454" + integrity sha512-5JcVt1u5HDmlXkwOD2nslZVllBBc7HDuOICfiZah2Z0is8M8g+ddAEawbmd3VjedfDHBzxCaXLs07QEmb7y54g== "@types/stack-utils@^2.0.0": - version "2.0.1" - resolved "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" - integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.3.tgz#6209321eb2c1712a7e7466422b8cb1fc0d9dd5d8" + integrity sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw== "@types/strip-bom@^3.0.0": version "3.0.0" - resolved "https://registry.npm.taobao.org/@types/strip-bom/download/@types/strip-bom-3.0.0.tgz#14a8ec3956c2e81edb7520790aecf21c290aebd2" - integrity sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I= + resolved "https://registry.yarnpkg.com/@types/strip-bom/-/strip-bom-3.0.0.tgz#14a8ec3956c2e81edb7520790aecf21c290aebd2" + integrity sha512-xevGOReSYGM7g/kUBZzPqCrR/KYAo+F0yiPc85WFTJa0MSLtyFTVTU6cJu/aV4mid7IffDIWqo69THF2o4JiEQ== "@types/strip-json-comments@0.0.30": version "0.0.30" - resolved "https://registry.npm.taobao.org/@types/strip-json-comments/download/@types/strip-json-comments-0.0.30.tgz#9aa30c04db212a9a0649d6ae6fd50accc40748a1" - integrity sha1-mqMMBNshKpoGSdaub9UKzMQHSKE= + resolved "https://registry.yarnpkg.com/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz#9aa30c04db212a9a0649d6ae6fd50accc40748a1" + integrity sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ== -"@types/tapable@*", "@types/tapable@^1.0.5": - version "1.0.6" - resolved "https://registry.npm.taobao.org/@types/tapable/download/@types/tapable-1.0.6.tgz#a9ca4b70a18b270ccb2bc0aaafefd1d486b7ea74" - integrity sha1-qcpLcKGLJwzLK8Cqr+/R1Ia36nQ= +"@types/tapable@^1", "@types/tapable@^1.0.5": + version "1.0.12" + resolved "https://registry.yarnpkg.com/@types/tapable/-/tapable-1.0.12.tgz#bc2cab12e87978eee89fb21576b670350d6d86ab" + integrity sha512-bTHG8fcxEqv1M9+TD14P8ok8hjxoOCkfKc8XXLaaD05kI7ohpeI956jtDOD3XHKBQrlyPughUtzm1jtVhHpA5Q== "@types/uglify-js@*": - version "3.9.2" - resolved "https://registry.npm.taobao.org/@types/uglify-js/download/@types/uglify-js-3.9.2.tgz#01992579debba674e1e359cd6bcb1a1d0ab2e02b" - integrity sha1-AZkled67pnTh41nNa8saHQqy4Cs= + version "3.17.4" + resolved "https://registry.yarnpkg.com/@types/uglify-js/-/uglify-js-3.17.4.tgz#3c70021f08023e5a760ce133d22966f200e1d31c" + integrity sha512-Hm/T0kV3ywpJyMGNbsItdivRhYNCQQf1IIsYsXnoVPES4t+FMLyDe0/K+Ea7ahWtMtSNb22ZdY7MIyoD9rqARg== dependencies: source-map "^0.6.1" "@types/webpack-sources@*": - version "1.4.0" - resolved "https://registry.npm.taobao.org/@types/webpack-sources/download/@types/webpack-sources-1.4.0.tgz#e58f1f05f87d39a5c64cf85705bdbdbb94d4d57e" - integrity sha1-5Y8fBfh9OaXGTPhXBb29u5TU1X4= + version "3.2.3" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-3.2.3.tgz#b667bd13e9fa15a9c26603dce502c7985418c3d8" + integrity sha512-4nZOdMwSPHZ4pTEZzSp0AsTM4K7Qmu40UKW4tJDiOVs20UzYF9l+qUe4s0ftfN0pin06n+5cWWDJXH+sbhAiDw== dependencies: "@types/node" "*" "@types/source-list-map" "*" source-map "^0.7.3" "@types/webpack@^4.41.8": - version "4.41.18" - resolved "https://registry.npm.taobao.org/@types/webpack/download/@types/webpack-4.41.18.tgz?cache=0&sync_timestamp=1593104246090&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fwebpack%2Fdownload%2F%40types%2Fwebpack-4.41.18.tgz#2945202617866ecdffa582087f1b6de04a7eed55" - integrity sha1-KUUgJheGbs3/pYIIfxtt4Ep+7VU= + version "4.41.38" + resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-4.41.38.tgz#5a40ac81bdd052bf405e8bdcf3e1236f6db6dc26" + integrity sha512-oOW7E931XJU1mVfCnxCVgv8GLFL768pDO5u2Gzk82i8yTIgX6i7cntyZOkZYb/JtYM8252SN9bQp9tgkVDSsRw== dependencies: - "@types/anymatch" "*" "@types/node" "*" - "@types/tapable" "*" + "@types/tapable" "^1" "@types/uglify-js" "*" "@types/webpack-sources" "*" + anymatch "^3.0.0" source-map "^0.6.0" "@types/yargs-parser@*": - version "15.0.0" - resolved "https://registry.npm.taobao.org/@types/yargs-parser/download/@types/yargs-parser-15.0.0.tgz?cache=0&sync_timestamp=1588204536973&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fyargs-parser%2Fdownload%2F%40types%2Fyargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d" - integrity sha1-yz+fdBhp4gzOMw/765JxWQSDiC0= + version "21.0.3" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15" + integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== "@types/yargs@^16.0.0": - version "16.0.4" - resolved "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" - integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== + version "16.0.9" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.9.tgz#ba506215e45f7707e6cbcaf386981155b7ab956e" + integrity sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA== dependencies: "@types/yargs-parser" "*" -"@vue/babel-helper-vue-jsx-merge-props@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz#31624a7a505fb14da1d58023725a4c5f270e6a81" - integrity sha512-QOi5OW45e2R20VygMSNhyQHvpdUwQZqGPc748JLGCYEy+yp8fNFNdbNIGAgZmi9e+2JHPd6i6idRuqivyicIkA== +"@vue/babel-helper-vue-jsx-merge-props@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.4.0.tgz#8d53a1e21347db8edbe54d339902583176de09f2" + integrity sha512-JkqXfCkUDp4PIlFdDQ0TdXoIejMtTHP67/pvxlgeY+u5k3LEdKuWZ3LK6xkxo52uDoABIVyRwqVkfLQJhk7VBA== -"@vue/babel-plugin-transform-vue-jsx@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.2.1.tgz#646046c652c2f0242727f34519d917b064041ed7" - integrity sha512-HJuqwACYehQwh1fNT8f4kyzqlNMpBuUK4rSiSES5D4QsYncv5fxFsLyrxFPG2ksO7t5WP+Vgix6tt6yKClwPzA== +"@vue/babel-plugin-transform-vue-jsx@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.4.0.tgz#4d4b3d46a39ea62b7467dd6e26ce47f7ceafb2fe" + integrity sha512-Fmastxw4MMx0vlgLS4XBX0XiBbUFzoMGeVXuMV08wyOfXdikAFqBTuYPR0tlk+XskL19EzHc39SgjrPGY23JnA== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/plugin-syntax-jsx" "^7.2.0" - "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" + "@vue/babel-helper-vue-jsx-merge-props" "^1.4.0" html-tags "^2.0.0" lodash.kebabcase "^4.1.1" svg-tags "^1.0.0" -"@vue/babel-preset-jsx@^1.2.4": - version "1.2.4" - resolved "https://registry.npmjs.org/@vue/babel-preset-jsx/-/babel-preset-jsx-1.2.4.tgz#92fea79db6f13b01e80d3a0099e2924bdcbe4e87" - integrity sha512-oRVnmN2a77bYDJzeGSt92AuHXbkIxbf/XXSE3klINnh9AXBmVS1DGa1f0d+dDYpLfsAKElMnqKTQfKn7obcL4w== - dependencies: - "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" - "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" - "@vue/babel-sugar-composition-api-inject-h" "^1.2.1" - "@vue/babel-sugar-composition-api-render-instance" "^1.2.4" - "@vue/babel-sugar-functional-vue" "^1.2.2" - "@vue/babel-sugar-inject-h" "^1.2.2" - "@vue/babel-sugar-v-model" "^1.2.3" - "@vue/babel-sugar-v-on" "^1.2.3" - -"@vue/babel-sugar-composition-api-inject-h@^1.2.1": - version "1.2.1" - resolved "https://registry.npmjs.org/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.2.1.tgz#05d6e0c432710e37582b2be9a6049b689b6f03eb" - integrity sha512-4B3L5Z2G+7s+9Bwbf+zPIifkFNcKth7fQwekVbnOA3cr3Pq71q71goWr97sk4/yyzH8phfe5ODVzEjX7HU7ItQ== +"@vue/babel-preset-jsx@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-preset-jsx/-/babel-preset-jsx-1.4.0.tgz#f4914ba314235ab097bc4372ed67473c0780bfcc" + integrity sha512-QmfRpssBOPZWL5xw7fOuHNifCQcNQC1PrOo/4fu6xlhlKJJKSA3HqX92Nvgyx8fqHZTUGMPHmFA+IDqwXlqkSA== + dependencies: + "@vue/babel-helper-vue-jsx-merge-props" "^1.4.0" + "@vue/babel-plugin-transform-vue-jsx" "^1.4.0" + "@vue/babel-sugar-composition-api-inject-h" "^1.4.0" + "@vue/babel-sugar-composition-api-render-instance" "^1.4.0" + "@vue/babel-sugar-functional-vue" "^1.4.0" + "@vue/babel-sugar-inject-h" "^1.4.0" + "@vue/babel-sugar-v-model" "^1.4.0" + "@vue/babel-sugar-v-on" "^1.4.0" + +"@vue/babel-sugar-composition-api-inject-h@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.4.0.tgz#187e1389f8871d89ece743bb50aed713be9d6c85" + integrity sha512-VQq6zEddJHctnG4w3TfmlVp5FzDavUSut/DwR0xVoe/mJKXyMcsIibL42wPntozITEoY90aBV0/1d2KjxHU52g== dependencies: "@babel/plugin-syntax-jsx" "^7.2.0" -"@vue/babel-sugar-composition-api-render-instance@^1.2.4": - version "1.2.4" - resolved "https://registry.npmjs.org/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.2.4.tgz#e4cbc6997c344fac271785ad7a29325c51d68d19" - integrity sha512-joha4PZznQMsxQYXtR3MnTgCASC9u3zt9KfBxIeuI5g2gscpTsSKRDzWQt4aqNIpx6cv8On7/m6zmmovlNsG7Q== +"@vue/babel-sugar-composition-api-render-instance@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.4.0.tgz#2c1607ae6dffdab47e785bc01fa45ba756e992c1" + integrity sha512-6ZDAzcxvy7VcnCjNdHJ59mwK02ZFuP5CnucloidqlZwVQv5CQLijc3lGpR7MD3TWFi78J7+a8J56YxbCtHgT9Q== dependencies: "@babel/plugin-syntax-jsx" "^7.2.0" -"@vue/babel-sugar-functional-vue@^1.2.2": - version "1.2.2" - resolved "https://registry.npmjs.org/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.2.2.tgz#267a9ac8d787c96edbf03ce3f392c49da9bd2658" - integrity sha512-JvbgGn1bjCLByIAU1VOoepHQ1vFsroSA/QkzdiSs657V79q6OwEWLCQtQnEXD/rLTA8rRit4rMOhFpbjRFm82w== +"@vue/babel-sugar-functional-vue@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.4.0.tgz#60da31068567082287c7337c66ef4df04e0a1029" + integrity sha512-lTEB4WUFNzYt2In6JsoF9sAYVTo84wC4e+PoZWSgM6FUtqRJz7wMylaEhSRgG71YF+wfLD6cc9nqVeXN2rwBvw== dependencies: "@babel/plugin-syntax-jsx" "^7.2.0" -"@vue/babel-sugar-inject-h@^1.2.2": - version "1.2.2" - resolved "https://registry.npmjs.org/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.2.2.tgz#d738d3c893367ec8491dcbb669b000919293e3aa" - integrity sha512-y8vTo00oRkzQTgufeotjCLPAvlhnpSkcHFEp60+LJUwygGcd5Chrpn5480AQp/thrxVm8m2ifAk0LyFel9oCnw== +"@vue/babel-sugar-inject-h@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.4.0.tgz#bf39aa6631fb1d0399b1c49b4c59e1c8899b4363" + integrity sha512-muwWrPKli77uO2fFM7eA3G1lAGnERuSz2NgAxuOLzrsTlQl8W4G+wwbM4nB6iewlKbwKRae3nL03UaF5ffAPMA== dependencies: "@babel/plugin-syntax-jsx" "^7.2.0" -"@vue/babel-sugar-v-model@^1.2.3": - version "1.2.3" - resolved "https://registry.npmjs.org/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.2.3.tgz#fa1f29ba51ebf0aa1a6c35fa66d539bc459a18f2" - integrity sha512-A2jxx87mySr/ulAsSSyYE8un6SIH0NWHiLaCWpodPCVOlQVODCaSpiR4+IMsmBr73haG+oeCuSvMOM+ttWUqRQ== +"@vue/babel-sugar-v-model@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.4.0.tgz#a51d986609f430c4f70ada3a93cc560a2970f720" + integrity sha512-0t4HGgXb7WHYLBciZzN5s0Hzqan4Ue+p/3FdQdcaHAb7s5D9WZFGoSxEZHrR1TFVZlAPu1bejTKGeAzaaG3NCQ== dependencies: "@babel/plugin-syntax-jsx" "^7.2.0" - "@vue/babel-helper-vue-jsx-merge-props" "^1.2.1" - "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" + "@vue/babel-helper-vue-jsx-merge-props" "^1.4.0" + "@vue/babel-plugin-transform-vue-jsx" "^1.4.0" camelcase "^5.0.0" html-tags "^2.0.0" svg-tags "^1.0.0" -"@vue/babel-sugar-v-on@^1.2.3": - version "1.2.3" - resolved "https://registry.npmjs.org/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.2.3.tgz#342367178586a69f392f04bfba32021d02913ada" - integrity sha512-kt12VJdz/37D3N3eglBywV8GStKNUhNrsxChXIV+o0MwVXORYuhDTHJRKPgLJRb/EY3vM2aRFQdxJBp9CLikjw== +"@vue/babel-sugar-v-on@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.4.0.tgz#43b7106a9672d8cbeefc0eb8afe1d376edc6166e" + integrity sha512-m+zud4wKLzSKgQrWwhqRObWzmTuyzl6vOP7024lrpeJM4x2UhQtRDLgYjXAw9xBXjCwS0pP9kXjg91F9ZNo9JA== dependencies: "@babel/plugin-syntax-jsx" "^7.2.0" - "@vue/babel-plugin-transform-vue-jsx" "^1.2.1" + "@vue/babel-plugin-transform-vue-jsx" "^1.4.0" camelcase "^5.0.0" +"@vue/compiler-sfc@2.7.16": + version "2.7.16" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz#ff81711a0fac9c68683d8bb00b63f857de77dc83" + integrity sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg== + dependencies: + "@babel/parser" "^7.23.5" + postcss "^8.4.14" + source-map "^0.6.1" + optionalDependencies: + prettier "^1.18.2 || ^2.0.0" + "@vue/component-compiler-utils@^3.1.0": - version "3.1.2" - resolved "https://registry.npm.taobao.org/@vue/component-compiler-utils/download/@vue/component-compiler-utils-3.1.2.tgz#8213a5ff3202f9f2137fe55370f9e8b9656081c3" - integrity sha1-ghOl/zIC+fITf+VTcPnouWVggcM= + version "3.3.0" + resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz#f9f5fb53464b0c37b2c8d2f3fbfe44df60f61dc9" + integrity sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ== dependencies: consolidate "^0.15.1" hash-sum "^1.0.2" lru-cache "^4.1.2" merge-source-map "^1.1.0" - postcss "^7.0.14" + postcss "^7.0.36" postcss-selector-parser "^6.0.2" source-map "~0.6.1" vue-template-es2015-compiler "^1.9.0" optionalDependencies: - prettier "^1.18.2" + prettier "^1.18.2 || ^2.0.0" "@vue/test-utils@^1.3.0": - version "1.3.0" - resolved "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.3.0.tgz#d563decdcd9c68a7bca151d4179a2bfd6d5c3e15" - integrity sha512-Xk2Xiyj2k5dFb8eYUKkcN9PzqZSppTlx7LaQWBbdA8tqh3jHr/KHX2/YLhNFc/xwDrgeLybqd+4ZCPJSGPIqeA== + version "1.3.6" + resolved "https://registry.yarnpkg.com/@vue/test-utils/-/test-utils-1.3.6.tgz#6656bd8fa44dd088b4ad80ff1ee28abe7e5ddf87" + integrity sha512-udMmmF1ts3zwxUJEIAj5ziioR900reDrt6C9H3XpWPsLBx2lpHKoA4BTdd9HNIYbkGltWw+JjWJ+5O6QBwiyEw== dependencies: dom-event-types "^1.0.0" lodash "^4.17.15" @@ -2213,8 +2362,8 @@ "@webassemblyjs/ast@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/ast/download/@webassemblyjs/ast-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fast%2Fdownload%2F%40webassemblyjs%2Fast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" - integrity sha1-vYUGBLQEJFmlpBzX0zjL7Wle2WQ= + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" + integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== dependencies: "@webassemblyjs/helper-module-context" "1.9.0" "@webassemblyjs/helper-wasm-bytecode" "1.9.0" @@ -2222,47 +2371,47 @@ "@webassemblyjs/floating-point-hex-parser@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/floating-point-hex-parser/download/@webassemblyjs/floating-point-hex-parser-1.9.0.tgz?cache=0&sync_timestamp=1580600186633&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Ffloating-point-hex-parser%2Fdownload%2F%40webassemblyjs%2Ffloating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" - integrity sha1-PD07Jxvd/ITesA9xNEQ4MR1S/7Q= + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" + integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== "@webassemblyjs/helper-api-error@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-api-error/download/@webassemblyjs/helper-api-error-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-api-error%2Fdownload%2F%40webassemblyjs%2Fhelper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" - integrity sha1-ID9nbjM7lsnaLuqzzO8zxFkotqI= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" + integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== "@webassemblyjs/helper-buffer@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-buffer/download/@webassemblyjs/helper-buffer-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-buffer%2Fdownload%2F%40webassemblyjs%2Fhelper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" - integrity sha1-oUQtJpxf6yP8vJ73WdrDVH8p3gA= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" + integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== "@webassemblyjs/helper-code-frame@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-code-frame/download/@webassemblyjs/helper-code-frame-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-code-frame%2Fdownload%2F%40webassemblyjs%2Fhelper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" - integrity sha1-ZH+Iks0gQ6gqwMjF51w28dkVnyc= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" + integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== dependencies: "@webassemblyjs/wast-printer" "1.9.0" "@webassemblyjs/helper-fsm@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-fsm/download/@webassemblyjs/helper-fsm-1.9.0.tgz?cache=0&sync_timestamp=1580600184873&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-fsm%2Fdownload%2F%40webassemblyjs%2Fhelper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" - integrity sha1-wFJWtxJEIUZx9LCOwQitY7cO3bg= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" + integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== "@webassemblyjs/helper-module-context@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-module-context/download/@webassemblyjs/helper-module-context-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-module-context%2Fdownload%2F%40webassemblyjs%2Fhelper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" - integrity sha1-JdiIS3aDmHGgimxvgGw5ee9xLwc= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" + integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-wasm-bytecode@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-bytecode/download/@webassemblyjs/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" - integrity sha1-T+2L6sm4wU+MWLcNEk1UndH+V5A= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" + integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== "@webassemblyjs/helper-wasm-section@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/helper-wasm-section/download/@webassemblyjs/helper-wasm-section-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fhelper-wasm-section%2Fdownload%2F%40webassemblyjs%2Fhelper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" - integrity sha1-WkE41aYpK6GLBMWuSXF+QWeWU0Y= + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" + integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-buffer" "1.9.0" @@ -2271,27 +2420,27 @@ "@webassemblyjs/ieee754@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/ieee754/download/@webassemblyjs/ieee754-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fieee754%2Fdownload%2F%40webassemblyjs%2Fieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" - integrity sha1-Fceg+6roP7JhQ7us9tbfFwKtOeQ= + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" + integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== dependencies: "@xtuc/ieee754" "^1.2.0" "@webassemblyjs/leb128@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/leb128/download/@webassemblyjs/leb128-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fleb128%2Fdownload%2F%40webassemblyjs%2Fleb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" - integrity sha1-8Zygt2ptxVYjoJz/p2noOPoeHJU= + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" + integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== dependencies: "@xtuc/long" "4.2.2" "@webassemblyjs/utf8@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/utf8/download/@webassemblyjs/utf8-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Futf8%2Fdownload%2F%40webassemblyjs%2Futf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" - integrity sha1-BNM7Y2945qaBMifoJAL3Y3tiKas= + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" + integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== "@webassemblyjs/wasm-edit@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-edit/download/@webassemblyjs/wasm-edit-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fwasm-edit%2Fdownload%2F%40webassemblyjs%2Fwasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" - integrity sha1-P+bXnT8PkiGDqoYALELdJWz+6c8= + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" + integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-buffer" "1.9.0" @@ -2304,8 +2453,8 @@ "@webassemblyjs/wasm-gen@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-gen/download/@webassemblyjs/wasm-gen-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fwasm-gen%2Fdownload%2F%40webassemblyjs%2Fwasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" - integrity sha1-ULxw7Gje2OJ2OwGhQYv0NJGnpJw= + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" + integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-wasm-bytecode" "1.9.0" @@ -2315,8 +2464,8 @@ "@webassemblyjs/wasm-opt@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-opt/download/@webassemblyjs/wasm-opt-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fwasm-opt%2Fdownload%2F%40webassemblyjs%2Fwasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" - integrity sha1-IhEYHlsxMmRDzIES658LkChyGmE= + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" + integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-buffer" "1.9.0" @@ -2325,8 +2474,8 @@ "@webassemblyjs/wasm-parser@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/wasm-parser/download/@webassemblyjs/wasm-parser-1.9.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40webassemblyjs%2Fwasm-parser%2Fdownload%2F%40webassemblyjs%2Fwasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" - integrity sha1-nUjkSCbfSmWYKUqmyHRp1kL/9l4= + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" + integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-api-error" "1.9.0" @@ -2337,8 +2486,8 @@ "@webassemblyjs/wast-parser@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/wast-parser/download/@webassemblyjs/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" - integrity sha1-MDERXXmsW9JhVWzsw/qQo+9FGRQ= + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" + integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/floating-point-hex-parser" "1.9.0" @@ -2349,8 +2498,8 @@ "@webassemblyjs/wast-printer@1.9.0": version "1.9.0" - resolved "https://registry.npm.taobao.org/@webassemblyjs/wast-printer/download/@webassemblyjs/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" - integrity sha1-STXVTIX+9jewDOn1I3dFHQDUeJk= + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" + integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/wast-parser" "1.9.0" @@ -2358,35 +2507,40 @@ "@xtuc/ieee754@^1.2.0": version "1.2.0" - resolved "https://registry.npm.taobao.org/@xtuc/ieee754/download/@xtuc/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" - integrity sha1-7vAUoxRa5Hehy8AM0eVSM23Ot5A= + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== "@xtuc/long@4.2.2": version "4.2.2" - resolved "https://registry.npm.taobao.org/@xtuc/long/download/@xtuc/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" - integrity sha1-0pHGpOl5ibXGHZrPOWrk/hM6cY0= + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== abab@^2.0.3, abab@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" - integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== abbrev@1: version "1.1.1" - resolved "https://registry.npm.taobao.org/abbrev/download/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" - integrity sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg= + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +abbrev@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-2.0.0.tgz#cf59829b8b4f03f89dda2771cb7f3653828c89bf" + integrity sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ== accepts@~1.3.5: - version "1.3.7" - resolved "https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" - integrity sha1-UxvHJlF6OytB+FACHGzBXqq1B80= + version "1.3.8" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" + integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== dependencies: - mime-types "~2.1.24" - negotiator "0.6.2" + mime-types "~2.1.34" + negotiator "0.6.3" acorn-globals@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== dependencies: acorn "^7.1.1" @@ -2394,71 +2548,78 @@ acorn-globals@^6.0.0: acorn-walk@^7.1.1: version "7.2.0" - resolved "https://registry.npm.taobao.org/acorn-walk/download/acorn-walk-7.2.0.tgz?cache=0&sync_timestamp=1592373515240&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn-walk%2Fdownload%2Facorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha1-DeiJpgEgOQmw++B7iTjcIdLpZ7w= + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== -acorn-walk@^8.0.0: - version "8.2.0" - resolved "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" - integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== +acorn-walk@^8.0.0, acorn-walk@^8.2.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.2.tgz#7703af9415f1b6db9315d6895503862e231d34aa" + integrity sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A== acorn@^6.4.1: - version "6.4.1" - resolved "https://registry.npm.taobao.org/acorn/download/acorn-6.4.1.tgz?cache=0&sync_timestamp=1591869466711&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-6.4.1.tgz#531e58ba3f51b9dacb9a6646ca4debf5b14ca474" - integrity sha1-Ux5Yuj9RudrLmmZGyk3r9bFMpHQ= + version "6.4.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== acorn@^7.1.1: - version "7.3.1" - resolved "https://registry.npm.taobao.org/acorn/download/acorn-7.3.1.tgz?cache=0&sync_timestamp=1591869466711&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" - integrity sha1-hQEHVNtTw/uvO56j4IOqXF0Uf/0= + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.0.4, acorn@^8.2.4, acorn@^8.5.0: - version "8.7.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" - integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== +acorn@^8.0.4, acorn@^8.2.4, acorn@^8.4.1, acorn@^8.8.2: + version "8.11.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" + integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== agent-base@6, agent-base@^6.0.2: version "6.0.2" - resolved "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== dependencies: debug "4" agentkeepalive@^4.1.3: - version "4.2.1" - resolved "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz#a7975cbb9f83b367f06c90cc51ff28fe7d499717" - integrity sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA== + version "4.5.0" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.5.0.tgz#2673ad1389b3c418c5a20c5d7364f93ca04be923" + integrity sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew== dependencies: - debug "^4.1.0" - depd "^1.1.2" humanize-ms "^1.2.1" aggregate-error@^3.0.0: - version "3.0.1" - resolved "https://registry.npm.taobao.org/aggregate-error/download/aggregate-error-3.0.1.tgz#db2fe7246e536f40d9b5442a39e117d7dd6a24e0" - integrity sha1-2y/nJG5Tb0DZtUQqOeEX191qJOA= + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== dependencies: clean-stack "^2.0.0" indent-string "^4.0.0" ajv-errors@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/ajv-errors/download/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" - integrity sha1-81mGrOuRr63sQQL72FAUlQzvpk0= + resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" + integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== -ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: - version "3.5.0" - resolved "https://registry.npm.taobao.org/ajv-keywords/download/ajv-keywords-3.5.0.tgz?cache=0&sync_timestamp=1592579864463&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv-keywords%2Fdownload%2Fajv-keywords-3.5.0.tgz#5c894537098785926d71e696114a53ce768ed773" - integrity sha1-XIlFNwmHhZJtceaWEUpTznaO13M= +ajv-formats@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" -ajv-keywords@^3.5.2: +ajv-keywords@^3.1.0, ajv-keywords@^3.4.1, ajv-keywords@^3.5.2: version "3.5.2" - resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.5: +ajv-keywords@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16" + integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw== + dependencies: + fast-deep-equal "^3.1.3" + +ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" - resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== dependencies: fast-deep-equal "^3.1.1" @@ -2466,54 +2627,54 @@ ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5, ajv@^6.5.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -alphanum-sort@^1.0.0: - version "1.0.2" - resolved "https://registry.npm.taobao.org/alphanum-sort/download/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" - integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= +ajv@^8.0.0, ajv@^8.9.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" ansi-align@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/ansi-align/download/ansi-align-3.0.0.tgz#b536b371cf687caaef236c18d3e21fe3797467cb" - integrity sha1-tTazcc9ofKrvI2wY0+If43l0Z8s= + version "3.0.1" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59" + integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w== dependencies: - string-width "^3.0.0" + string-width "^4.1.0" -ansi-escapes@^4.2.1: - version "4.3.1" - resolved "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-4.3.1.tgz?cache=0&sync_timestamp=1583072804444&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-escapes%2Fdownload%2Fansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" - integrity sha1-pcR8xDGB8fOP/XB2g3cA05VSKmE= +ansi-escapes@^4.2.1, ansi-escapes@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== dependencies: - type-fest "^0.11.0" + type-fest "^0.21.3" -ansi-html@0.0.7: - version "0.0.7" - resolved "https://registry.npm.taobao.org/ansi-html/download/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" - integrity sha1-gTWEAhliqenm/QOflA0S9WynhZ4= +ansi-html-community@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" + integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw== ansi-regex@^2.0.0: version "2.1.1" - resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-regex%2Fdownload%2Fansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" - integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= - -ansi-regex@^4.1.0: - version "4.1.0" - resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-regex%2Fdownload%2Fansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" - integrity sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc= - -ansi-regex@^5.0.0: - version "5.0.0" - resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-regex%2Fdownload%2Fansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" - integrity sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U= + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz#3183e38fae9a65d7cb5e53945cd5897d0260a06a" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== + ansi-styles@^2.2.1: version "2.2.1" - resolved "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" - integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== ansi-styles@^3.2.1: version "3.2.1" @@ -2523,38 +2684,34 @@ ansi-styles@^3.2.1: color-convert "^1.9.0" ansi-styles@^4.0.0, ansi-styles@^4.1.0: - version "4.2.1" - resolved "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" - integrity sha1-kK51xCTQCNJiTFvynq0xd+v881k= + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== dependencies: - "@types/color-name" "^1.1.1" color-convert "^2.0.1" ansi-styles@^5.0.0: version "5.2.0" - resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== +ansi-styles@^6.1.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" + integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== + anymatch@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/anymatch/download/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" - integrity sha1-vLJLTzeTTZqnrBe0ra+J58du8us= + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== dependencies: micromatch "^3.1.4" normalize-path "^2.1.1" -anymatch@^3.0.3: - version "3.1.1" - resolved "https://registry.npm.taobao.org/anymatch/download/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" - integrity sha1-xV7PAhheJGklk5kxDBc84xIzsUI= - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -anymatch@~3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" - integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== +anymatch@^3.0.0, anymatch@^3.0.3, anymatch@~3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== dependencies: normalize-path "^3.0.0" picomatch "^2.0.4" @@ -2566,8 +2723,8 @@ anymatch@~3.1.2: aproba@^1.1.1: version "1.2.0" - resolved "https://registry.npm.taobao.org/aproba/download/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" - integrity sha1-aALmJk79GMeQobDVF/DyYnvyyUo= + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== are-we-there-yet@^2.0.0: version "2.0.0" @@ -2578,156 +2735,196 @@ are-we-there-yet@^2.0.0: readable-stream "^3.6.0" are-we-there-yet@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.0.tgz#ba20bd6b553e31d62fc8c31bd23d22b95734390d" - integrity sha512-0GWpv50YSOcLXaN6/FAKY3vfRbllXWV2xvfA/oKJF8pzFhWXPV+yjhJXDBbjscDYowv7Yw1A3uigpzn5iEGTyw== + version "3.0.1" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz#679df222b278c64f2cdba1175cdc00b0d96164bd" + integrity sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg== dependencies: delegates "^1.0.0" readable-stream "^3.6.0" -arg@^5.0.0: - version "5.0.1" - resolved "https://registry.npmjs.org/arg/-/arg-5.0.1.tgz#eb0c9a8f77786cad2af8ff2b862899842d7b6adb" - integrity sha512-e0hDa9H2Z9AwFkk2qDlwhoMYE4eToKarchkQHovNdLTCYMHZHeRjI71crOh+dio4K6u1IcwubQqo79Ga4CyAQA== +arg@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" + integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== argparse@^1.0.7: version "1.0.10" - resolved "https://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE= + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== dependencies: sprintf-js "~1.0.2" arr-diff@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/arr-diff/download/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== arr-flatten@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/arr-flatten/download/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha1-NgSLv/TntH4TZkQxbJlmnqWukfE= + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== arr-union@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/arr-union/download/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + +array-buffer-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz#1e5583ec16763540a27ae52eed99ff899223568f" + integrity sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg== + dependencies: + call-bind "^1.0.5" + is-array-buffer "^3.0.4" array-union@^2.1.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/array-union/download/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" - integrity sha1-t5hCCtvrHego2ErNii4j0+/oXo0= + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== array-unique@^0.3.2: version "0.3.2" - resolved "https://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + +array.prototype.reduce@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz#63149931808c5fc1e1354814923d92d45f7d96d5" + integrity sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + es-array-method-boxes-properly "^1.0.0" + is-string "^1.0.7" + +arraybuffer.prototype.slice@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz#097972f4255e41bc3425e37dc3f6421cf9aefde6" + integrity sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A== + dependencies: + array-buffer-byte-length "^1.0.1" + call-bind "^1.0.5" + define-properties "^1.2.1" + es-abstract "^1.22.3" + es-errors "^1.2.1" + get-intrinsic "^1.2.3" + is-array-buffer "^3.0.4" + is-shared-array-buffer "^1.0.2" arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" - integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== -asn1.js@^4.0.0: - version "4.10.1" - resolved "https://registry.npm.taobao.org/asn1.js/download/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" - integrity sha1-ucK/WAXx5kqt7tbfOiv6+1pz9aA= +asn1.js@^5.2.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" + integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== dependencies: bn.js "^4.0.0" inherits "^2.0.1" minimalistic-assert "^1.0.0" + safer-buffer "^2.1.0" asn1@~0.2.3: - version "0.2.4" - resolved "https://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136" - integrity sha1-jSR136tVO7M+d7VOWeiAu4ziMTY= + version "0.2.6" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== dependencies: safer-buffer "~2.1.0" assert-plus@1.0.0, assert-plus@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== assert@^1.1.1: - version "1.5.0" - resolved "https://registry.npm.taobao.org/assert/download/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" - integrity sha1-VcEJqvbgrv2z3EtxJAxwv1dLGOs= + version "1.5.1" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.5.1.tgz#038ab248e4ff078e7bc2485ba6e6388466c78f76" + integrity sha512-zzw1uCAgLbsKwBfFc8CX78DDg+xZeBksSO3vwVIDDN5i94eOrPsSSyiVhmsSABFDM/OcpE2aagCat9dnWQLG1A== dependencies: - object-assign "^4.1.1" - util "0.10.3" + object.assign "^4.1.4" + util "^0.10.4" assign-symbols@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== async-each@^1.0.1: - version "1.0.3" - resolved "https://registry.npm.taobao.org/async-each/download/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" - integrity sha1-tyfb+H12UWAvBvTUrDh/R9kbDL8= + version "1.0.6" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.6.tgz#52f1d9403818c179b7561e11a5d1b77eb2160e77" + integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg== async-foreach@^0.1.3: version "0.1.3" - resolved "https://registry.npm.taobao.org/async-foreach/download/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= + resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" + integrity sha512-VUeSMD8nEGBWaZK4lizI1sf3yEC7pnAQ/mrI7pC2fBz2s/tq5jWWEngTwaf0Gruu/OoXRGLGg1XFqpYBiGTYJA== asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== at-least-node@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/at-least-node/download/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha1-YCzUtG6EStTv/JKoARo8RuAjjcI= + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== atob@^2.1.2: version "2.1.2" - resolved "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k= + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== -autoprefixer@^9.6.1: - version "9.8.4" - resolved "https://registry.npm.taobao.org/autoprefixer/download/autoprefixer-9.8.4.tgz#736f1012673a70fa3464671d78d41abd54512863" - integrity sha1-c28QEmc6cPo0ZGcdeNQavVRRKGM= +autoprefixer@^10.4.17: + version "10.4.17" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.17.tgz#35cd5695cbbe82f536a50fa025d561b01fdec8be" + integrity sha512-/cpVNRLSfhOtcGflT13P2794gVSgmPgTR+erw5ifnMLZb0UnSlkK4tquLmkd3BhA+nLo5tX8Cu0upUsGKvKbmg== dependencies: - browserslist "^4.12.0" - caniuse-lite "^1.0.30001087" - colorette "^1.2.0" + browserslist "^4.22.2" + caniuse-lite "^1.0.30001578" + fraction.js "^4.3.7" normalize-range "^0.1.2" - num2fraction "^1.2.2" - postcss "^7.0.32" - postcss-value-parser "^4.1.0" + picocolors "^1.0.0" + postcss-value-parser "^4.2.0" + +available-typed-arrays@^1.0.6, available-typed-arrays@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz#a5cc375d6a03c2efc87a553f3e0b1522def14846" + integrity sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ== + dependencies: + possible-typed-array-names "^1.0.0" aws-sign2@~0.7.0: version "0.7.0" - resolved "https://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== aws4@^1.8.0: - version "1.10.0" - resolved "https://registry.npm.taobao.org/aws4/download/aws4-1.10.0.tgz#a17b3a8ea811060e74d47d306122400ad4497ae2" - integrity sha1-oXs6jqgRBg501H0wYSJACtRJeuI= + version "1.12.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.12.0.tgz#ce1c9d143389679e253b314241ea9aa5cec980d3" + integrity sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg== axios-retry@^3.1.9: - version "3.2.4" - resolved "https://registry.npmjs.org/axios-retry/-/axios-retry-3.2.4.tgz#f447a53c3456f5bfeca18f20c3a3272207d082ae" - integrity sha512-Co3UXiv4npi6lM963mfnuH90/YFLKWWDmoBYfxkHT5xtkSSWNqK9zdG3fw5/CP/dsoKB5aMMJCsgab+tp1OxLQ== + version "3.9.1" + resolved "https://registry.yarnpkg.com/axios-retry/-/axios-retry-3.9.1.tgz#c8924a8781c8e0a2c5244abf773deb7566b3830d" + integrity sha512-8PJDLJv7qTTMMwdnbMvrLYuvB47M81wRtxQmEdV5w4rgbTXTt+vtPkXwajOfOdSyv/wZICJOC+/UhXH4aQ/R+w== dependencies: "@babel/runtime" "^7.15.4" is-retry-allowed "^2.2.0" axios@^0.21.1: version "0.21.4" - resolved "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== dependencies: follow-redirects "^1.14.0" babel-code-frame@^6.26.0: version "6.26.0" - resolved "https://registry.npm.taobao.org/babel-code-frame/download/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" - integrity sha1-Y/1D99weO7fONZR9uP42mj9Yx0s= + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + integrity sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g== dependencies: chalk "^1.1.3" esutils "^2.0.2" @@ -2735,12 +2932,12 @@ babel-code-frame@^6.26.0: babel-core@7.0.0-bridge.0: version "7.0.0-bridge.0" - resolved "https://registry.npm.taobao.org/babel-core/download/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" - integrity sha1-laSS3dkPm06aSh2hTrM1uHtjTs4= + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" + integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== babel-jest@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== dependencies: "@jest/transform" "^27.5.1" @@ -2752,10 +2949,10 @@ babel-jest@^27.5.1: graceful-fs "^4.2.9" slash "^3.0.0" -babel-loader@^8.2.2: - version "8.2.4" - resolved "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.4.tgz#95f5023c791b2e9e2ca6f67b0984f39c82ff384b" - integrity sha512-8dytA3gcvPPPv4Grjhnt8b5IIiTcq/zeXOPk4iTYI0SVXcsmuGg7JtBRDp8S9X+gJfhQ8ektjXZlDu1Bb33U8A== +babel-loader@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.3.0.tgz#124936e841ba4fe8176786d6ff28add1f134d6a8" + integrity sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q== dependencies: find-cache-dir "^3.3.1" loader-utils "^2.0.0" @@ -2764,21 +2961,14 @@ babel-loader@^8.2.2: babel-messages@^6.23.0: version "6.23.0" - resolved "https://registry.npm.taobao.org/babel-messages/download/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" - integrity sha1-8830cDhYA1sqKVHG7F7fbGLyYw4= + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + integrity sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w== dependencies: babel-runtime "^6.22.0" -babel-plugin-dynamic-import-node@^2.3.3: - version "2.3.3" - resolved "https://registry.npm.taobao.org/babel-plugin-dynamic-import-node/download/babel-plugin-dynamic-import-node-2.3.3.tgz?cache=0&sync_timestamp=1587496311403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbabel-plugin-dynamic-import-node%2Fdownload%2Fbabel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" - integrity sha1-hP2hnJduxcbe/vV/lCez3vZuF6M= - dependencies: - object.assign "^4.1.0" - babel-plugin-istanbul@^6.1.1: version "6.1.1" - resolved "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== dependencies: "@babel/helper-plugin-utils" "^7.0.0" @@ -2789,7 +2979,7 @@ babel-plugin-istanbul@^6.1.1: babel-plugin-jest-hoist@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== dependencies: "@babel/template" "^7.3.3" @@ -2797,34 +2987,34 @@ babel-plugin-jest-hoist@^27.5.1: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" -babel-plugin-polyfill-corejs2@^0.3.0: - version "0.3.1" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.1.tgz#440f1b70ccfaabc6b676d196239b138f8a2cfba5" - integrity sha512-v7/T6EQcNfVLfcN2X8Lulb7DjprieyLWJK/zOWH5DUYcAgex9sP3h25Q+DLsX9TloXe3y1O8l2q2Jv9q8UVB9w== +babel-plugin-polyfill-corejs2@^0.4.8: + version "0.4.8" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.8.tgz#dbcc3c8ca758a290d47c3c6a490d59429b0d2269" + integrity sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg== dependencies: - "@babel/compat-data" "^7.13.11" - "@babel/helper-define-polyfill-provider" "^0.3.1" - semver "^6.1.1" + "@babel/compat-data" "^7.22.6" + "@babel/helper-define-polyfill-provider" "^0.5.0" + semver "^6.3.1" -babel-plugin-polyfill-corejs3@^0.5.0: - version "0.5.2" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.2.tgz#aabe4b2fa04a6e038b688c5e55d44e78cd3a5f72" - integrity sha512-G3uJih0XWiID451fpeFaYGVuxHEjzKTHtc9uGFEjR6hHrvNzeS/PX+LLLcetJcytsB5m4j+K3o/EpXJNb/5IEQ== +babel-plugin-polyfill-corejs3@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.9.0.tgz#9eea32349d94556c2ad3ab9b82ebb27d4bf04a81" + integrity sha512-7nZPG1uzK2Ymhy/NbaOWTg3uibM2BmGASS4vHS4szRZAIR8R6GwA/xAujpdrXU5iyklrimWnLWU+BLF9suPTqg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.1" - core-js-compat "^3.21.0" + "@babel/helper-define-polyfill-provider" "^0.5.0" + core-js-compat "^3.34.0" -babel-plugin-polyfill-regenerator@^0.3.0: - version "0.3.1" - resolved "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.1.tgz#2c0678ea47c75c8cc2fbb1852278d8fb68233990" - integrity sha512-Y2B06tvgHYt1x0yz17jGkGeeMr5FeKUu+ASJ+N6nB5lQ8Dapfg42i0OVrf8PNGJ3zKL4A23snMi1IRwrqqND7A== +babel-plugin-polyfill-regenerator@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.5.tgz#8b0c8fc6434239e5d7b8a9d1f832bb2b0310f06a" + integrity sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg== dependencies: - "@babel/helper-define-polyfill-provider" "^0.3.1" + "@babel/helper-define-polyfill-provider" "^0.5.0" babel-plugin-transform-es2015-modules-commonjs@^6.26.0: version "6.26.2" - resolved "https://registry.npm.taobao.org/babel-plugin-transform-es2015-modules-commonjs/download/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" - integrity sha1-WKeThjqefKhwvcWogRF/+sJ9tvM= + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz#58a793863a9e7ca870bdc5a881117ffac27db6f3" + integrity sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q== dependencies: babel-plugin-transform-strict-mode "^6.24.1" babel-runtime "^6.26.0" @@ -2833,15 +3023,15 @@ babel-plugin-transform-es2015-modules-commonjs@^6.26.0: babel-plugin-transform-strict-mode@^6.24.1: version "6.24.1" - resolved "https://registry.npm.taobao.org/babel-plugin-transform-strict-mode/download/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" - integrity sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g= + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + integrity sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw== dependencies: babel-runtime "^6.22.0" babel-types "^6.24.1" babel-preset-current-node-syntax@^1.0.0: version "1.0.1" - resolved "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" @@ -2859,7 +3049,7 @@ babel-preset-current-node-syntax@^1.0.0: babel-preset-jest@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== dependencies: babel-plugin-jest-hoist "^27.5.1" @@ -2867,16 +3057,16 @@ babel-preset-jest@^27.5.1: babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" - resolved "https://registry.npm.taobao.org/babel-runtime/download/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" - integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== dependencies: core-js "^2.4.0" regenerator-runtime "^0.11.0" babel-template@^6.26.0: version "6.26.0" - resolved "https://registry.npm.taobao.org/babel-template/download/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" - integrity sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI= + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + integrity sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg== dependencies: babel-runtime "^6.26.0" babel-traverse "^6.26.0" @@ -2886,8 +3076,8 @@ babel-template@^6.26.0: babel-traverse@^6.26.0: version "6.26.0" - resolved "https://registry.npm.taobao.org/babel-traverse/download/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" - integrity sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4= + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + integrity sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA== dependencies: babel-code-frame "^6.26.0" babel-messages "^6.23.0" @@ -2901,8 +3091,8 @@ babel-traverse@^6.26.0: babel-types@^6.24.1, babel-types@^6.26.0: version "6.26.0" - resolved "https://registry.npm.taobao.org/babel-types/download/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" - integrity sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc= + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + integrity sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g== dependencies: babel-runtime "^6.26.0" esutils "^2.0.2" @@ -2911,8 +3101,8 @@ babel-types@^6.24.1, babel-types@^6.26.0: babylon@^6.18.0: version "6.18.0" - resolved "https://registry.npm.taobao.org/babylon/download/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" - integrity sha1-ry87iPpvXB5MY00aD46sT1WzleM= + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== balanced-match@^1.0.0: version "1.0.2" @@ -2920,19 +3110,14 @@ balanced-match@^1.0.0: integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== base64-js@^1.0.2: - version "1.3.1" - resolved "https://registry.npm.taobao.org/base64-js/download/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" - integrity sha1-WOzoy3XdB+ce0IxzarxfrE2/jfE= - -base64-js@^1.3.1: version "1.5.1" - resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== base@^0.11.1: version "0.11.2" - resolved "https://registry.npm.taobao.org/base/download/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha1-e95c7RRbbVUakNuH+DxVi060io8= + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== dependencies: cache-base "^1.0.1" class-utils "^0.3.5" @@ -2944,8 +3129,8 @@ base@^0.11.1: bcrypt-pbkdf@^1.0.0: version "1.0.2" - resolved "https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== dependencies: tweetnacl "^0.14.3" @@ -2956,44 +3141,44 @@ big.js@^5.2.2: binary-extensions@^1.0.0: version "1.13.1" - resolved "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-1.13.1.tgz?cache=0&sync_timestamp=1593261363626&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbinary-extensions%2Fdownload%2Fbinary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" - integrity sha1-WYr+VHVbKGilMw0q/51Ou1Mgm2U= + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== binary-extensions@^2.0.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-2.1.0.tgz?cache=0&sync_timestamp=1593261363626&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbinary-extensions%2Fdownload%2Fbinary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" - integrity sha1-MPpAyef+B9vIlWeM0ocCTeokHdk= + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== bindings@^1.5.0: version "1.5.0" - resolved "https://registry.npm.taobao.org/bindings/download/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" - integrity sha1-EDU8npRTNLwFEabZCzj7x8nFBN8= + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== dependencies: file-uri-to-path "1.0.0" bluebird@^3.1.1, bluebird@^3.5.5: version "3.7.2" - resolved "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbluebird%2Fdownload%2Fbluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha1-nyKcFb4nJFT/qXOs4NvueaGww28= + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: version "4.12.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== -bn.js@^5.1.1: - version "5.1.2" - resolved "https://registry.npm.taobao.org/bn.js/download/bn.js-5.1.2.tgz#c9686902d3c9a27729f43ab10f9d79c2004da7b0" - integrity sha1-yWhpAtPJoncp9DqxD515wgBNp7A= +bn.js@^5.0.0, bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -boolbase@^1.0.0, boolbase@~1.0.0: +boolbase@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/boolbase/download/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" - integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== -boxen@^5.0.0, boxen@^5.0.1: +boxen@^5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-5.1.2.tgz#788cb686fc83c1f486dfa8a40c68fc2b831d2b50" integrity sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ== dependencies: ansi-align "^3.0.0" @@ -3013,10 +3198,17 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + braces@^2.3.1, braces@^2.3.2: version "2.3.2" - resolved "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha1-WXn9PxTNUxVl5fot8av/8d+u5yk= + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== dependencies: arr-flatten "^1.1.0" array-unique "^0.3.2" @@ -3029,27 +3221,27 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" -braces@^3.0.1, braces@^3.0.2, braces@~3.0.2: +braces@^3.0.2, braces@~3.0.2: version "3.0.2" - resolved "https://registry.npm.taobao.org/braces/download/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha1-NFThpGLujVmeI23zNs2epPiv4Qc= + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" brorand@^1.0.1, brorand@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== browser-process-hrtime@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/browser-process-hrtime/download/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha1-PJtLfXgsgSHlbxAQbYTA0P/JRiY= + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== browserify-aes@^1.0.0, browserify-aes@^1.0.4: version "1.2.0" - resolved "https://registry.npm.taobao.org/browserify-aes/download/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" - integrity sha1-Mmc0ZC9APavDADIJhTu3CtQo70g= + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" + integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== dependencies: buffer-xor "^1.0.3" cipher-base "^1.0.0" @@ -3060,8 +3252,8 @@ browserify-aes@^1.0.0, browserify-aes@^1.0.4: browserify-cipher@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/browserify-cipher/download/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" - integrity sha1-jWR0wbhwv9q807z8wZNKEOlPFfA= + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" + integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== dependencies: browserify-aes "^1.0.4" browserify-des "^1.0.0" @@ -3069,70 +3261,58 @@ browserify-cipher@^1.0.0: browserify-des@^1.0.0: version "1.0.2" - resolved "https://registry.npm.taobao.org/browserify-des/download/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" - integrity sha1-OvTx9Zg5QDVy8cZiBDdfen9wPpw= + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" + integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== dependencies: cipher-base "^1.0.1" des.js "^1.0.0" inherits "^2.0.1" safe-buffer "^5.1.2" -browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/browserify-rsa/download/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" - integrity sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ= +browserify-rsa@^4.0.0, browserify-rsa@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" + integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== dependencies: - bn.js "^4.1.0" + bn.js "^5.0.0" randombytes "^2.0.1" browserify-sign@^4.0.0: - version "4.2.0" - resolved "https://registry.npm.taobao.org/browserify-sign/download/browserify-sign-4.2.0.tgz#545d0b1b07e6b2c99211082bf1b12cce7a0b0e11" - integrity sha1-VF0LGwfmssmSEQgr8bEsznoLDhE= + version "4.2.2" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.2.2.tgz#e78d4b69816d6e3dd1c747e64e9947f9ad79bc7e" + integrity sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg== dependencies: - bn.js "^5.1.1" - browserify-rsa "^4.0.1" + bn.js "^5.2.1" + browserify-rsa "^4.1.0" create-hash "^1.2.0" create-hmac "^1.1.7" - elliptic "^6.5.2" + elliptic "^6.5.4" inherits "^2.0.4" - parse-asn1 "^5.1.5" - readable-stream "^3.6.0" - safe-buffer "^5.2.0" + parse-asn1 "^5.1.6" + readable-stream "^3.6.2" + safe-buffer "^5.2.1" browserify-zlib@^0.2.0: version "0.2.0" - resolved "https://registry.npm.taobao.org/browserify-zlib/download/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" - integrity sha1-KGlFnZqjviRf6P4sofRuLn9U1z8= + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== dependencies: pako "~1.0.5" -browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.6.4: - version "4.16.6" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" - integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== - dependencies: - caniuse-lite "^1.0.30001219" - colorette "^1.2.2" - electron-to-chromium "^1.3.723" - escalade "^3.1.1" - node-releases "^1.1.71" - -browserslist@^4.17.5, browserslist@^4.19.1: - version "4.20.2" - resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz#567b41508757ecd904dab4d1c646c612cd3d4f88" - integrity sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA== +browserslist@^4.0.0, browserslist@^4.21.4, browserslist@^4.22.2, browserslist@^4.22.3, browserslist@^4.23.0: + version "4.23.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" + integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== dependencies: - caniuse-lite "^1.0.30001317" - electron-to-chromium "^1.4.84" - escalade "^3.1.1" - node-releases "^2.0.2" - picocolors "^1.0.0" + caniuse-lite "^1.0.30001587" + electron-to-chromium "^1.4.668" + node-releases "^2.0.14" + update-browserslist-db "^1.0.13" bser@2.1.1: version "2.1.1" - resolved "https://registry.npm.taobao.org/bser/download/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha1-5nh9og7OnQeZhTPP2d5vXDj0vAU= + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== dependencies: node-int64 "^0.4.0" @@ -3143,45 +3323,37 @@ buffer-from@^1.0.0: buffer-json@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/buffer-json/download/buffer-json-2.0.0.tgz#f73e13b1e42f196fe2fd67d001c7d7107edd7c23" - integrity sha1-9z4TseQvGW/i/WfQAcfXEH7dfCM= + resolved "https://registry.yarnpkg.com/buffer-json/-/buffer-json-2.0.0.tgz#f73e13b1e42f196fe2fd67d001c7d7107edd7c23" + integrity sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw== buffer-xor@^1.0.3: version "1.0.3" - resolved "https://registry.npm.taobao.org/buffer-xor/download/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" - integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== buffer@^4.3.0: version "4.9.2" - resolved "https://registry.npm.taobao.org/buffer/download/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" - integrity sha1-Iw6tNEACmIZEhBqwJEr4xEu+Pvg= + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== dependencies: base64-js "^1.0.2" ieee754 "^1.1.4" isarray "^1.0.0" -buffer@^5.1.0: - version "5.7.1" - resolved "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" - integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== - dependencies: - base64-js "^1.3.1" - ieee754 "^1.1.13" - builtin-status-codes@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/builtin-status-codes/download/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" - integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + integrity sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ== bytes@3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== cacache@^12.0.2: version "12.0.4" - resolved "https://registry.npm.taobao.org/cacache/download/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" - integrity sha1-ZovL0QWutfHZL+JVcOyVJcj6pAw= + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" + integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== dependencies: bluebird "^3.5.5" chownr "^1.1.1" @@ -3201,7 +3373,7 @@ cacache@^12.0.2: cacache@^15.0.5, cacache@^15.2.0: version "15.3.0" - resolved "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== dependencies: "@npmcli/fs" "^1.0.0" @@ -3225,8 +3397,8 @@ cacache@^15.0.5, cacache@^15.2.0: cache-base@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha1-Cn9GQWgxyLZi7jb+TnxZ129marI= + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== dependencies: collection-visit "^1.0.0" component-emitter "^1.2.1" @@ -3240,8 +3412,8 @@ cache-base@^1.0.1: cache-loader@^4.1.0: version "4.1.0" - resolved "https://registry.npm.taobao.org/cache-loader/download/cache-loader-4.1.0.tgz#9948cae353aec0a1fcb1eafda2300816ec85387e" - integrity sha1-mUjK41OuwKH8ser9ojAIFuyFOH4= + resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-4.1.0.tgz#9948cae353aec0a1fcb1eafda2300816ec85387e" + integrity sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw== dependencies: buffer-json "^2.0.0" find-cache-dir "^3.0.0" @@ -3250,63 +3422,42 @@ cache-loader@^4.1.0: neo-async "^2.6.1" schema-utils "^2.0.0" -cacheable-request@^6.0.0: - version "6.1.0" - resolved "https://registry.npm.taobao.org/cacheable-request/download/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" - integrity sha1-IP+4vRYrpL4R6VZ9gj22UQUsqRI= - dependencies: - clone-response "^1.0.2" - get-stream "^5.1.0" - http-cache-semantics "^4.0.0" - keyv "^3.0.0" - lowercase-keys "^2.0.0" - normalize-url "^4.1.0" - responselike "^1.0.2" - -caller-callsite@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz?cache=0&sync_timestamp=1562668977312&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcaller-callsite%2Fdownload%2Fcaller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" - integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= - dependencies: - callsites "^2.0.0" - -caller-path@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" - integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= +call-bind@^1.0.2, call-bind@^1.0.5, call-bind@^1.0.6, call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== dependencies: - caller-callsite "^2.0.0" + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" callsite@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" - integrity sha1-KAOY5dZkvXQDi28JBRU+borxvCA= - -callsites@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/callsites/download/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" - integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" + integrity sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ== callsites@^3.0.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/callsites/download/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" - integrity sha1-s2MKvYlDQy9Us/BRkjjjPNffL3M= + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== camel-case@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/camel-case/download/camel-case-3.0.0.tgz?cache=0&sync_timestamp=1576721717499&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamel-case%2Fdownload%2Fcamel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" - integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + integrity sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w== dependencies: no-case "^2.2.0" upper-case "^1.1.1" camel-case@^4.1.1: - version "4.1.1" - resolved "https://registry.npm.taobao.org/camel-case/download/camel-case-4.1.1.tgz?cache=0&sync_timestamp=1576721717499&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamel-case%2Fdownload%2Fcamel-case-4.1.1.tgz#1fc41c854f00e2f7d0139dfeba1542d6896fe547" - integrity sha1-H8QchU8A4vfQE53+uhVC1olv5Uc= + version "4.1.2" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" + integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== dependencies: - pascal-case "^3.1.1" - tslib "^1.10.0" + pascal-case "^3.1.2" + tslib "^2.0.3" camelcase-keys@^6.2.2: version "6.2.2" @@ -3319,38 +3470,38 @@ camelcase-keys@^6.2.2: camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" - resolved "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" - integrity sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA= + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0, camelcase@^6.2.0: +camelcase@^6.2.0: version "6.3.0" - resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== caniuse-api@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/caniuse-api/download/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" - integrity sha1-Xk2Q4idJYdRikZl99Znj7QCO5MA= + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" + integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== dependencies: browserslist "^4.0.0" caniuse-lite "^1.0.0" lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001087, caniuse-lite@^1.0.30001219, caniuse-lite@^1.0.30001228, caniuse-lite@^1.0.30001317: - version "1.0.30001323" - resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001323.tgz" - integrity sha512-e4BF2RlCVELKx8+RmklSEIVub1TWrmdhvA5kEUueummz1XyySW0DVk+3x9HyhU9MuWTa2BhqLgEuEmUwASAdCA== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001576, caniuse-lite@^1.0.30001578, caniuse-lite@^1.0.30001587: + version "1.0.30001591" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001591.tgz#16745e50263edc9f395895a7cd468b9f3767cf33" + integrity sha512-PCzRMei/vXjJyL5mJtzNiUCKP59dm8Apqc3PH8gJkMnMXZGox93RbE76jHsmLwmIo6/3nsYIpJtx0O7u5PqFuQ== caseless@~0.12.0: version "0.12.0" - resolved "https://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== chalk@^1.1.3: version "1.1.3" - resolved "https://registry.npm.taobao.org/chalk/download/chalk-1.1.3.tgz?cache=0&sync_timestamp=1591687028262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" - integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" @@ -3358,7 +3509,7 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.1.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -3377,23 +3528,18 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.1, chalk@^4.1.2: char-regex@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== -charcodes@^0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/charcodes/-/charcodes-0.2.0.tgz#5208d327e6cc05f99eb80ffc814707572d1f14e4" - integrity sha512-Y4kiDb+AM4Ecy58YkuZrrSRJBDQdQ2L+NyS1vHHFtNtUjgutcZfx3yp1dAONI/oPaPmyGfCLx5CxL+zauIMyKQ== - chardet@^0.7.0: version "0.7.0" - resolved "https://registry.npm.taobao.org/chardet/download/chardet-0.7.0.tgz?cache=0&sync_timestamp=1593649818294&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchardet%2Fdownload%2Fchardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" - integrity sha1-kAlISfCTfy7twkJdDSip5fDLrZ4= + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== -"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1, chokidar@^3.5.1, chokidar@^3.5.2: - version "3.5.3" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" - integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== +"chokidar@>=3.0.0 <4.0.0", chokidar@^3.4.1, chokidar@^3.5.2, chokidar@^3.5.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" + integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== dependencies: anymatch "~3.1.2" braces "~3.0.2" @@ -3407,8 +3553,8 @@ chardet@^0.7.0: chokidar@^2.1.8: version "2.1.8" - resolved "https://registry.npm.taobao.org/chokidar/download/chokidar-2.1.8.tgz?cache=0&sync_timestamp=1587911215694&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchokidar%2Fdownload%2Fchokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" - integrity sha1-gEs6e2qZNYw8XGHnHYco8EHP+Rc= + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" + integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== dependencies: anymatch "^2.0.0" async-each "^1.0.1" @@ -3426,8 +3572,8 @@ chokidar@^2.1.8: chownr@^1.1.1: version "1.1.4" - resolved "https://registry.npm.taobao.org/chownr/download/chownr-1.1.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchownr%2Fdownload%2Fchownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" - integrity sha1-b8nXtC0ypYNZYzdmbn0ICE2izGs= + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== chownr@^2.0.0: version "2.0.0" @@ -3435,44 +3581,32 @@ chownr@^2.0.0: integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== chrome-trace-event@^1.0.2: - version "1.0.2" - resolved "https://registry.npm.taobao.org/chrome-trace-event/download/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" - integrity sha1-I0CQ7pfH1K0aLEvq4nUF3v/GCKQ= - dependencies: - tslib "^1.9.0" - -ci-info@^1.6.0: - version "1.6.0" - resolved "https://registry.npm.taobao.org/ci-info/download/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" - integrity sha1-LKINu5zrMtRSSmgzAzE/AwSx5Jc= - -ci-info@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/ci-info/download/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" - integrity sha1-Z6npZL4xpR4V5QENWObxKDQAL0Y= + version "1.0.3" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== -ci-info@^3.1.1, ci-info@^3.2.0: - version "3.3.0" - resolved "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz#b4ed1fb6818dea4803a55c623041f9165d2066b2" - integrity sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw== +ci-info@^3.2.0, ci-info@^3.7.1: + version "3.9.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" + integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ== cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: version "1.0.4" - resolved "https://registry.npm.taobao.org/cipher-base/download/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" - integrity sha1-h2Dk7MJy9MNjUy+SbYdKriwTl94= + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== dependencies: inherits "^2.0.1" safe-buffer "^5.0.1" cjs-module-lexer@^1.0.0: - version "1.2.2" - resolved "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" - integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== + version "1.2.3" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz#6c370ab19f8a3394e318fe682686ec0ac684d107" + integrity sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ== class-utils@^0.3.5: version "0.3.6" - resolved "https://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha1-+TNprouafOAv1B+q0MqDAzGQxGM= + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== dependencies: arr-union "^3.1.0" define-property "^0.2.5" @@ -3480,38 +3614,38 @@ class-utils@^0.3.5: static-extend "^0.1.1" clean-css@^4.2.1, clean-css@^4.2.3: - version "4.2.3" - resolved "https://registry.npm.taobao.org/clean-css/download/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" - integrity sha1-UHtd59l7SO5T2ErbAWD/YhY4D3g= + version "4.2.4" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178" + integrity sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A== dependencies: source-map "~0.6.0" clean-stack@^2.0.0: version "2.2.0" - resolved "https://registry.npm.taobao.org/clean-stack/download/clean-stack-2.2.0.tgz?cache=0&sync_timestamp=1592035257626&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclean-stack%2Fdownload%2Fclean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha1-7oRy27Ep5yezHooQpCfe6d/kAIs= + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== cli-boxes@^2.2.1: version "2.2.1" - resolved "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-2.2.1.tgz#ddd5035d25094fce220e9cab40a45840a440318f" integrity sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw== cli-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/cli-cursor/download/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" - integrity sha1-JkMFp65JDR0Dvwybp8kl0XU68wc= + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== dependencies: restore-cursor "^3.1.0" cli-width@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/cli-width/download/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" - integrity sha1-ovSEN6LKqaIkNueUvwceyeYc7fY= + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" + integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== clipboard@^2.0.0: - version "2.0.6" - resolved "https://registry.npm.taobao.org/clipboard/download/clipboard-2.0.6.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclipboard%2Fdownload%2Fclipboard-2.0.6.tgz#52921296eec0fdf77ead1749421b21c968647376" - integrity sha1-UpISlu7A/fd+rRdJQhshyWhkc3Y= + version "2.0.11" + resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.11.tgz#62180360b97dd668b6b3a84ec226975762a70be5" + integrity sha512-C+0bbOqkezLIsmWSvlsXS0Q0bmkugu7jcfMIACB+RDEntIzQIkdr148we28AfSloQLRdZlYL/QYyrq05j/3Faw== dependencies: good-listener "^1.2.2" select "^1.1.2" @@ -3519,62 +3653,55 @@ clipboard@^2.0.0: cliui@^7.0.2: version "7.0.4" - resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" strip-ansi "^6.0.0" wrap-ansi "^7.0.0" +cliui@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz#0c04b075db02cbfe60dc8e6cf2f5486b1a3608aa" + integrity sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.1" + wrap-ansi "^7.0.0" + clone-deep@^4.0.1: version "4.0.1" - resolved "https://registry.npm.taobao.org/clone-deep/download/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" - integrity sha1-wZ/Zvbv4WUK0/ZechNz31fB8I4c= + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== dependencies: is-plain-object "^2.0.4" kind-of "^6.0.2" shallow-clone "^3.0.0" -clone-response@^1.0.2: - version "1.0.2" - resolved "https://registry.npm.taobao.org/clone-response/download/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" - integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= - dependencies: - mimic-response "^1.0.0" - clone@2.x: version "2.1.2" - resolved "https://registry.npm.taobao.org/clone/download/clone-2.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclone%2Fdownload%2Fclone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" - integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w== co@^4.6.0: version "4.6.0" - resolved "https://registry.npm.taobao.org/co/download/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= - -coa@^2.0.2: - version "2.0.2" - resolved "https://registry.npm.taobao.org/coa/download/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" - integrity sha1-Q/bCEVG07yv1cYfbDXPeIp4+fsM= - dependencies: - "@types/q" "^1.5.1" - chalk "^2.4.1" - q "^1.1.2" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== + version "1.0.2" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" + integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== collection-visit@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== dependencies: map-visit "^1.0.0" object-visit "^1.0.0" -color-convert@^1.9.0, color-convert@^1.9.1: +color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== @@ -3583,90 +3710,84 @@ color-convert@^1.9.0, color-convert@^1.9.1: color-convert@^2.0.1: version "2.0.1" - resolved "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" - integrity sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM= + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== dependencies: color-name "~1.1.4" color-name@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" - integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== -color-name@^1.0.0, color-name@~1.1.4: +color-name@~1.1.4: version "1.1.4" - resolved "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" - integrity sha1-wqCah6y95pVD3m9j+jmVyCbFNqI= - -color-string@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.6.0.tgz#c3915f61fe267672cb7e1e064c9d692219f6c312" - integrity sha512-c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA== - dependencies: - color-name "^1.0.0" - simple-swizzle "^0.2.2" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== color-support@^1.1.2, color-support@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -color@^3.0.0: - version "3.1.2" - resolved "https://registry.npm.taobao.org/color/download/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" - integrity sha1-aBSOf4XUGtdknF+oyBBvCY0inhA= - dependencies: - color-convert "^1.9.1" - color-string "^1.5.2" +colord@^2.9.1, colord@^2.9.3: + version "2.9.3" + resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" + integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== -colorette@^1.2.0, colorette@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" - integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== +colorette@^2.0.10: + version "2.0.20" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" + integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" - resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" +commander@^10.0.0: + version "10.0.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" + integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== + commander@^2.19.0, commander@^2.20.0: version "2.20.3" - resolved "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz?cache=0&sync_timestamp=1592632075120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha1-/UhehMA+tIgcIHIrpIA16FMa6zM= + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== commander@^4.1.1: version "4.1.1" - resolved "https://registry.npm.taobao.org/commander/download/commander-4.1.1.tgz?cache=0&sync_timestamp=1592632075120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" - integrity sha1-n9YCvZNilOnp70aj9NaWQESxgGg= + resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" + integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== commander@^7.2.0: version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== commondir@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/commondir/download/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A= + version "1.3.1" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" + integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== compressible@~2.0.16: version "2.0.18" - resolved "https://registry.npm.taobao.org/compressible/download/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" - integrity sha1-r1PMprBw1MPAdQ+9dyhqbXzEb7o= + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== dependencies: mime-db ">= 1.43.0 < 2" compression@^1.7.4: version "1.7.4" - resolved "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz?cache=0&sync_timestamp=1573614508541&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcompression%2Fdownload%2Fcompression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" - integrity sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48= + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== dependencies: accepts "~1.3.5" bytes "3.0.0" @@ -3683,8 +3804,8 @@ concat-map@0.0.1: concat-stream@^1.5.0: version "1.6.2" - resolved "https://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" - integrity sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ= + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== dependencies: buffer-from "^1.0.0" inherits "^2.0.3" @@ -3693,103 +3814,87 @@ concat-stream@^1.5.0: condense-newlines@^0.2.1: version "0.2.1" - resolved "https://registry.npm.taobao.org/condense-newlines/download/condense-newlines-0.2.1.tgz#3de985553139475d32502c83b02f60684d24c55f" - integrity sha1-PemFVTE5R10yUCyDsC9gaE0kxV8= + resolved "https://registry.yarnpkg.com/condense-newlines/-/condense-newlines-0.2.1.tgz#3de985553139475d32502c83b02f60684d24c55f" + integrity sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg== dependencies: extend-shallow "^2.0.1" is-whitespace "^0.3.0" kind-of "^3.0.2" -config-chain@^1.1.12: - version "1.1.12" - resolved "https://registry.npm.taobao.org/config-chain/download/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa" - integrity sha1-D96NCRIA616AjK8l/mGMAvSOTvo= +config-chain@^1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== dependencies: ini "^1.3.4" proto-list "~1.2.1" -configstore@^5.0.1: - version "5.0.1" - resolved "https://registry.npm.taobao.org/configstore/download/configstore-5.0.1.tgz#d365021b5df4b98cdd187d6a3b0e3f6a7cc5ed96" - integrity sha1-02UCG130uYzdGH1qOw4/anzF7ZY= - dependencies: - dot-prop "^5.2.0" - graceful-fs "^4.1.2" - make-dir "^3.0.0" - unique-string "^2.0.0" - write-file-atomic "^3.0.0" - xdg-basedir "^4.0.0" - connect@^3.7.0: version "3.7.0" - resolved "https://registry.npm.taobao.org/connect/download/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" - integrity sha1-XUk0iRDKpeB6AYALAw0MNfIEhPg= + resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8" + integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ== dependencies: debug "2.6.9" finalhandler "1.1.2" parseurl "~1.3.3" utils-merge "1.0.1" -consola@^2.10.0, consola@^2.6.0, consola@^2.9.0: - version "2.14.0" - resolved "https://registry.npm.taobao.org/consola/download/consola-2.14.0.tgz?cache=0&sync_timestamp=1593182610673&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconsola%2Fdownload%2Fconsola-2.14.0.tgz#162ee903b6c9c4de25077d93f34ab902ebcb4dac" - integrity sha1-Fi7pA7bJxN4lB32T80q5AuvLTaw= - -consola@^2.15.0, consola@^2.15.3: +consola@^2.15.3: version "2.15.3" - resolved "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" + resolved "https://registry.yarnpkg.com/consola/-/consola-2.15.3.tgz#2e11f98d6a4be71ff72e0bdf07bd23e12cb61550" integrity sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw== +consola@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/consola/-/consola-3.2.3.tgz#0741857aa88cfa0d6fd53f1cff0375136e98502f" + integrity sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ== + console-browserify@^1.1.0: version "1.2.0" - resolved "https://registry.npm.taobao.org/console-browserify/download/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" - integrity sha1-ZwY871fOts9Jk6KrOlWECujEkzY= + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" + integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== console-control-strings@^1.0.0, console-control-strings@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/console-control-strings/download/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" - integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== consolidate@^0.15.1: version "0.15.1" - resolved "https://registry.npm.taobao.org/consolidate/download/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" - integrity sha1-IasEMjXHGgfUXZqtmFk7DbpWurc= + resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" + integrity sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw== dependencies: bluebird "^3.1.1" constants-browserify@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/constants-browserify/download/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" - integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + integrity sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ== -convert-source-map@^1.4.0, convert-source-map@^1.7.0: - version "1.7.0" - resolved "https://registry.npm.taobao.org/convert-source-map/download/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" - integrity sha1-F6LLiC1/d9NJBYXizmxSRCSjpEI= - dependencies: - safe-buffer "~5.1.1" +convert-source-map@^1.4.0, convert-source-map@^1.6.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== -convert-source-map@^1.6.0: - version "1.8.0" - resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" - integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== - dependencies: - safe-buffer "~5.1.1" +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== cookie@^0.3.1: version "0.3.1" - resolved "https://registry.npm.taobao.org/cookie/download/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" - integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s= + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + integrity sha512-+IJOX0OqlHCszo2mBUq+SrEbCj6w7Kpffqx60zYbPTFaO4+yYgRjHwcZNpWvaTylDHaV7PPmBHzSecZiMhtPgw== cookie@^0.4.1: version "0.4.2" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432" integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA== copy-concurrently@^1.0.0: version "1.0.5" - resolved "https://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" - integrity sha1-kilzmMrjSTf8r9bsgTnBgFHwteA= + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== dependencies: aproba "^1.1.1" fs-write-stream-atomic "^1.0.8" @@ -3800,56 +3905,64 @@ copy-concurrently@^1.0.0: copy-descriptor@^0.1.0: version "0.1.1" - resolved "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== -core-js-compat@^3.12.1, core-js-compat@^3.20.2, core-js-compat@^3.21.0: - version "3.21.1" - resolved "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.21.1.tgz#cac369f67c8d134ff8f9bd1623e3bc2c42068c82" - integrity sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g== +core-js-compat@^3.31.0, core-js-compat@^3.34.0, core-js-compat@^3.35.0: + version "3.36.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.36.0.tgz#087679119bc2fdbdefad0d45d8e5d307d45ba190" + integrity sha512-iV9Pd/PsgjNWBXeq8XRtWVSgz2tKAfhfvBs7qxYty+RlRd+OCksaWmOnc4JKrTc1cToXL1N0s3l/vwlxPtdElw== dependencies: - browserslist "^4.19.1" - semver "7.0.0" + browserslist "^4.22.3" + +core-js@^2.4.0: + version "2.6.12" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" + integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== -core-js@^2.4.0, core-js@^2.6.5: - version "2.6.11" - resolved "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c" - integrity sha1-OIMUafmSK97Y7iHJ3EaYXgOZMIw= +core-js@^3.35.0: + version "3.36.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.36.0.tgz#e752fa0b0b462a0787d56e9d73f80b0f7c0dde68" + integrity sha512-mt7+TUBbTFg5+GngsAxeKBTl5/VS0guFeJacYge9OmHb+m058UwwIm41SE9T4Den7ClatV57B6TYTuJ0CX1MAw== -core-util-is@1.0.2, core-util-is@~1.0.0: +core-util-is@1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== -cosmiconfig@^5.0.0: - version "5.2.1" - resolved "https://registry.npm.taobao.org/cosmiconfig/download/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" - integrity sha1-BA9yaAnFked6F8CjYmykW08Wixo= - dependencies: - import-fresh "^2.0.0" - is-directory "^0.3.1" - js-yaml "^3.13.1" - parse-json "^4.0.0" +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== -crc@^3.8.0: - version "3.8.0" - resolved "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6" - integrity sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ== +cosmiconfig@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== dependencies: - buffer "^5.1.0" + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +crc@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/crc/-/crc-4.3.2.tgz#49b7821cbf2cf61dfd079ed93863bbebd5469b9a" + integrity sha512-uGDHf4KLLh2zsHa8D8hIQ1H/HtFQhyHrc0uhHBcoKGol/Xnb+MPYfUMw7cvON6ze/GUESTudKayDcJC5HnJv1A== create-ecdh@^4.0.0: - version "4.0.3" - resolved "https://registry.npm.taobao.org/create-ecdh/download/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" - integrity sha1-yREbbzMEXEaX8UR4f5JUzcd8Rf8= + version "4.0.4" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" + integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== dependencies: bn.js "^4.1.0" - elliptic "^6.0.0" + elliptic "^6.5.3" create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: version "1.2.0" - resolved "https://registry.npm.taobao.org/create-hash/download/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" - integrity sha1-iJB4rxGmN1a8+1m9IhmWvjqe8ZY= + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" + integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== dependencies: cipher-base "^1.0.1" inherits "^2.0.1" @@ -3859,8 +3972,8 @@ create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: version "1.1.7" - resolved "https://registry.npm.taobao.org/create-hmac/download/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" - integrity sha1-aRcMeLOrlXFHsriwRXLkfq0iQ/8= + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" + integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== dependencies: cipher-base "^1.0.3" create-hash "^1.1.0" @@ -3871,13 +3984,13 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: create-require@^1.1.1: version "1.1.1" - resolved "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" + resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== -cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.3: version "7.0.3" - resolved "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" - integrity sha1-9zqFudXUHQRVUcF34ogtSshXKKY= + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== dependencies: path-key "^3.1.0" shebang-command "^2.0.0" @@ -3885,8 +3998,8 @@ cross-spawn@^7.0.3: crypto-browserify@^3.11.0: version "3.12.0" - resolved "https://registry.npm.taobao.org/crypto-browserify/download/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" - integrity sha1-OWz58xN/A+S45TLFj2mCVOAPgOw= + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== dependencies: browserify-cipher "^1.0.0" browserify-sign "^4.0.0" @@ -3905,92 +4018,56 @@ crypto-js@^4.2.0: resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-4.2.0.tgz#4d931639ecdfd12ff80e8186dba6af2c2e856631" integrity sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q== -crypto-random-string@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/crypto-random-string/download/crypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5" - integrity sha1-7yp6lm7BEIM4g2m6oC6+rSKbMNU= - -css-blank-pseudo@^0.1.4: - version "0.1.4" - resolved "https://registry.npm.taobao.org/css-blank-pseudo/download/css-blank-pseudo-0.1.4.tgz#dfdefd3254bf8a82027993674ccf35483bfcb3c5" - integrity sha1-3979MlS/ioICeZNnTM81SDv8s8U= +css-blank-pseudo@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-6.0.1.tgz#f79f8b84cc00f891e16aa85f14093c5e1c3499a8" + integrity sha512-goSnEITByxTzU4Oh5oJZrEWudxTqk7L6IXj1UW69pO6Hv0UdX+Vsrt02FFu5DweRh2bLu6WpX/+zsQCu5O1gKw== dependencies: - postcss "^7.0.5" + postcss-selector-parser "^6.0.13" -css-color-names@0.0.4, css-color-names@^0.0.4: - version "0.0.4" - resolved "https://registry.npm.taobao.org/css-color-names/download/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" - integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= +css-declaration-sorter@^6.3.1: + version "6.4.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-6.4.1.tgz#28beac7c20bad7f1775be3a7129d7eae409a3a71" + integrity sha512-rtdthzxKuyq6IzqX6jEcIzQF/YqccluefyCYheovBOLhFT/drQA9zj/UbRAa9J7C0o6EG6u3E6g+vKkay7/k3g== -css-declaration-sorter@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/css-declaration-sorter/download/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" - integrity sha1-wZiUD2OnbX42wecQGLABchBUyyI= - dependencies: - postcss "^7.0.1" - timsort "^0.3.0" +css-declaration-sorter@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-7.1.1.tgz#9796bcc257b4647c39993bda8d431ce32b666f80" + integrity sha512-dZ3bVTEEc1vxr3Bek9vGwfB5Z6ESPULhcRvO472mfjVnj8jRcTnKO8/JTczlvxM10Myb+wBM++1MtdO76eWcaQ== -css-has-pseudo@^0.10.0: - version "0.10.0" - resolved "https://registry.npm.taobao.org/css-has-pseudo/download/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee" - integrity sha1-PGQqs0yiQsWcQaEl35EFhB9pZu4= +css-has-pseudo@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-6.0.2.tgz#a1a15ee7082d72a23ed1d810220ba384da867d15" + integrity sha512-Z2Qm5yyOvJRTy6THdUlnGIX6PW/1wOc4FHWlfkcBkfkpZ3oz6lPdG+h+J7t1HZHT4uSSVR8XatXiMpqMUADXow== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^5.0.0-rc.4" + "@csstools/selector-specificity" "^3.0.2" + postcss-selector-parser "^6.0.13" + postcss-value-parser "^4.2.0" -css-loader@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/css-loader/-/css-loader-4.3.0.tgz#c888af64b2a5b2e85462c72c0f4a85c7e2e0821e" - integrity sha512-rdezjCjScIrsL8BSYszgT4s476IcNKt6yX69t0pHjJVnPUTDpn4WfIpDQTN3wCJvUvfsz/mFjuGOekf3PY3NUg== +css-loader@^5.2.7: + version "5.2.7" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" + integrity sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg== dependencies: - camelcase "^6.0.0" - cssesc "^3.0.0" - icss-utils "^4.1.1" + icss-utils "^5.1.0" loader-utils "^2.0.0" - postcss "^7.0.32" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.3" - postcss-modules-scope "^2.2.0" - postcss-modules-values "^3.0.0" + postcss "^8.2.15" + postcss-modules-extract-imports "^3.0.0" + postcss-modules-local-by-default "^4.0.0" + postcss-modules-scope "^3.0.0" + postcss-modules-values "^4.0.0" postcss-value-parser "^4.1.0" - schema-utils "^2.7.1" - semver "^7.3.2" - -css-prefers-color-scheme@^3.1.1: - version "3.1.1" - resolved "https://registry.npm.taobao.org/css-prefers-color-scheme/download/css-prefers-color-scheme-3.1.1.tgz#6f830a2714199d4f0d0d0bb8a27916ed65cff1f4" - integrity sha1-b4MKJxQZnU8NDQu4onkW7WXP8fQ= - dependencies: - postcss "^7.0.5" - -css-select-base-adapter@^0.1.1: - version "0.1.1" - resolved "https://registry.npm.taobao.org/css-select-base-adapter/download/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" - integrity sha1-Oy/0lyzDYquIVhUHqVQIoUMhNdc= - -css-select@^1.1.0: - version "1.2.0" - resolved "https://registry.npm.taobao.org/css-select/download/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" - integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= - dependencies: - boolbase "~1.0.0" - css-what "2.1" - domutils "1.5.1" - nth-check "~1.0.1" + schema-utils "^3.0.0" + semver "^7.3.5" -css-select@^2.0.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/css-select/download/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" - integrity sha1-ajRlM1ZjWTSoG6ymjQJVQyEF2+8= - dependencies: - boolbase "^1.0.0" - css-what "^3.2.1" - domutils "^1.7.0" - nth-check "^1.0.2" +css-prefers-color-scheme@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-9.0.1.tgz#30fcb94cc38b639b66fb99e1882ffd97f741feaa" + integrity sha512-iFit06ochwCKPRiWagbTa1OAWCvWWVdEnIFd8BaRrgO8YrrNh4RAWUQTFcYX5tdFZgFl1DJ3iiULchZyEbnF4g== css-select@^4.1.3: version "4.3.0" - resolved "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b" integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ== dependencies: boolbase "^1.0.0" @@ -3999,41 +4076,50 @@ css-select@^4.1.3: domutils "^2.8.0" nth-check "^2.0.1" -css-tree@1.0.0-alpha.37: - version "1.0.0-alpha.37" - resolved "https://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" - integrity sha1-mL69YsTB2flg7DQM+fdSLjBwmiI= +css-select@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6" + integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg== dependencies: - mdn-data "2.0.4" - source-map "^0.6.1" + boolbase "^1.0.0" + css-what "^6.1.0" + domhandler "^5.0.2" + domutils "^3.0.1" + nth-check "^2.0.1" -css-tree@1.0.0-alpha.39: - version "1.0.0-alpha.39" - resolved "https://registry.npm.taobao.org/css-tree/download/css-tree-1.0.0-alpha.39.tgz#2bff3ffe1bb3f776cf7eefd91ee5cba77a149eeb" - integrity sha1-K/8//huz93bPfu/ZHuXLp3oUnus= +css-tree@^1.1.2, css-tree@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" + integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== dependencies: - mdn-data "2.0.6" + mdn-data "2.0.14" source-map "^0.6.1" -css-what@2.1: - version "2.1.3" - resolved "https://registry.npm.taobao.org/css-what/download/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2" - integrity sha1-ptdgRXM2X+dGhsPzEcVlE9iChfI= +css-tree@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20" + integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw== + dependencies: + mdn-data "2.0.30" + source-map-js "^1.0.1" -css-what@^3.2.1: - version "3.3.0" - resolved "https://registry.npm.taobao.org/css-what/download/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39" - integrity sha1-EP7Glqns4uWRrHctdZqsq6w4zTk= +css-tree@~2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.2.1.tgz#36115d382d60afd271e377f9c5f67d02bd48c032" + integrity sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA== + dependencies: + mdn-data "2.0.28" + source-map-js "^1.0.1" -css-what@^6.0.1: +css-what@^6.0.1, css-what@^6.1.0: version "6.1.0" - resolved "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== css@^2.1.0: version "2.2.4" - resolved "https://registry.npm.taobao.org/css/download/css-2.2.4.tgz?cache=0&sync_timestamp=1593663585785&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss%2Fdownload%2Fcss-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" - integrity sha1-xkZ1XHOXHyu6amAeLPL9cbEpiSk= + resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929" + integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw== dependencies: inherits "^2.0.3" source-map "^0.6.1" @@ -4042,186 +4128,176 @@ css@^2.1.0: css@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/css/-/css-3.0.0.tgz#4447a4d58fdd03367c516ca9f64ae365cee4aa5d" + resolved "https://registry.yarnpkg.com/css/-/css-3.0.0.tgz#4447a4d58fdd03367c516ca9f64ae365cee4aa5d" integrity sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ== dependencies: inherits "^2.0.4" source-map "^0.6.1" source-map-resolve "^0.6.0" -cssdb@^4.4.0: - version "4.4.0" - resolved "https://registry.npm.taobao.org/cssdb/download/cssdb-4.4.0.tgz#3bf2f2a68c10f5c6a08abd92378331ee803cddb0" - integrity sha1-O/LypowQ9cagir2SN4Mx7oA83bA= - -cssesc@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/cssesc/download/cssesc-2.0.0.tgz#3b13bd1bb1cb36e1bcb5a4dcd27f54c5dcb35703" - integrity sha1-OxO9G7HLNuG8taTc0n9UxdyzVwM= +cssdb@^7.11.0: + version "7.11.1" + resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-7.11.1.tgz#491841b281d337d7e5332e43b282429dd241b377" + integrity sha512-F0nEoX/Rv8ENTHsjMPGHd9opdjGfXkgRBafSUGnQKPzGZFB7Lm0BbT10x21TMOCrKLbVsJ0NoCDMk6AfKqw8/A== cssesc@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/cssesc/download/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" - integrity sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4= + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +cssnano-preset-default@^5.2.14: + version "5.2.14" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz#309def4f7b7e16d71ab2438052093330d9ab45d8" + integrity sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A== + dependencies: + css-declaration-sorter "^6.3.1" + cssnano-utils "^3.1.0" + postcss-calc "^8.2.3" + postcss-colormin "^5.3.1" + postcss-convert-values "^5.1.3" + postcss-discard-comments "^5.1.2" + postcss-discard-duplicates "^5.1.0" + postcss-discard-empty "^5.1.1" + postcss-discard-overridden "^5.1.0" + postcss-merge-longhand "^5.1.7" + postcss-merge-rules "^5.1.4" + postcss-minify-font-values "^5.1.0" + postcss-minify-gradients "^5.1.1" + postcss-minify-params "^5.1.4" + postcss-minify-selectors "^5.2.1" + postcss-normalize-charset "^5.1.0" + postcss-normalize-display-values "^5.1.0" + postcss-normalize-positions "^5.1.1" + postcss-normalize-repeat-style "^5.1.1" + postcss-normalize-string "^5.1.0" + postcss-normalize-timing-functions "^5.1.0" + postcss-normalize-unicode "^5.1.1" + postcss-normalize-url "^5.1.0" + postcss-normalize-whitespace "^5.1.1" + postcss-ordered-values "^5.1.3" + postcss-reduce-initial "^5.1.2" + postcss-reduce-transforms "^5.1.0" + postcss-svgo "^5.1.0" + postcss-unique-selectors "^5.1.1" + +cssnano-preset-default@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-6.0.5.tgz#c7afd6af1230a78b8d12c6da771d1156ab0127cf" + integrity sha512-M+qRDEr5QZrfNl0B2ySdbTLGyNb8kBcSjuwR7WBamYBOEREH9t2efnB/nblekqhdGLZdkf4oZNetykG2JWRdZQ== + dependencies: + css-declaration-sorter "^7.1.1" + cssnano-utils "^4.0.1" + postcss-calc "^9.0.1" + postcss-colormin "^6.0.3" + postcss-convert-values "^6.0.4" + postcss-discard-comments "^6.0.1" + postcss-discard-duplicates "^6.0.2" + postcss-discard-empty "^6.0.2" + postcss-discard-overridden "^6.0.1" + postcss-merge-longhand "^6.0.3" + postcss-merge-rules "^6.0.4" + postcss-minify-font-values "^6.0.2" + postcss-minify-gradients "^6.0.2" + postcss-minify-params "^6.0.3" + postcss-minify-selectors "^6.0.2" + postcss-normalize-charset "^6.0.1" + postcss-normalize-display-values "^6.0.1" + postcss-normalize-positions "^6.0.1" + postcss-normalize-repeat-style "^6.0.1" + postcss-normalize-string "^6.0.1" + postcss-normalize-timing-functions "^6.0.1" + postcss-normalize-unicode "^6.0.3" + postcss-normalize-url "^6.0.1" + postcss-normalize-whitespace "^6.0.1" + postcss-ordered-values "^6.0.1" + postcss-reduce-initial "^6.0.3" + postcss-reduce-transforms "^6.0.1" + postcss-svgo "^6.0.2" + postcss-unique-selectors "^6.0.2" + +cssnano-utils@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-3.1.0.tgz#95684d08c91511edfc70d2636338ca37ef3a6861" + integrity sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA== -cssnano-preset-default@^4.0.7: - version "4.0.7" - resolved "https://registry.npm.taobao.org/cssnano-preset-default/download/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" - integrity sha1-UexmLM/KD4izltzZZ5zbkxvhf3Y= - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.1" - postcss-colormin "^4.0.3" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.2" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.11" - postcss-merge-rules "^4.0.3" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.2" - postcss-minify-params "^4.0.2" - postcss-minify-selectors "^4.0.2" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.2" - postcss-normalize-positions "^4.0.2" - postcss-normalize-repeat-style "^4.0.2" - postcss-normalize-string "^4.0.2" - postcss-normalize-timing-functions "^4.0.2" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.2" - postcss-ordered-values "^4.1.2" - postcss-reduce-initial "^4.0.3" - postcss-reduce-transforms "^4.0.2" - postcss-svgo "^4.0.2" - postcss-unique-selectors "^4.0.1" - -cssnano-preset-default@^4.0.8: - version "4.0.8" - resolved "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz#920622b1fc1e95a34e8838203f1397a504f2d3ff" - integrity sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ== - dependencies: - css-declaration-sorter "^4.0.1" - cssnano-util-raw-cache "^4.0.1" - postcss "^7.0.0" - postcss-calc "^7.0.1" - postcss-colormin "^4.0.3" - postcss-convert-values "^4.0.1" - postcss-discard-comments "^4.0.2" - postcss-discard-duplicates "^4.0.2" - postcss-discard-empty "^4.0.1" - postcss-discard-overridden "^4.0.1" - postcss-merge-longhand "^4.0.11" - postcss-merge-rules "^4.0.3" - postcss-minify-font-values "^4.0.2" - postcss-minify-gradients "^4.0.2" - postcss-minify-params "^4.0.2" - postcss-minify-selectors "^4.0.2" - postcss-normalize-charset "^4.0.1" - postcss-normalize-display-values "^4.0.2" - postcss-normalize-positions "^4.0.2" - postcss-normalize-repeat-style "^4.0.2" - postcss-normalize-string "^4.0.2" - postcss-normalize-timing-functions "^4.0.2" - postcss-normalize-unicode "^4.0.1" - postcss-normalize-url "^4.0.1" - postcss-normalize-whitespace "^4.0.2" - postcss-ordered-values "^4.1.2" - postcss-reduce-initial "^4.0.3" - postcss-reduce-transforms "^4.0.2" - postcss-svgo "^4.0.3" - postcss-unique-selectors "^4.0.1" - -cssnano-util-get-arguments@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/cssnano-util-get-arguments/download/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" - integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= +cssnano-utils@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-4.0.1.tgz#fd18b42f95938bf55ab47967705355d6047bf1da" + integrity sha512-6qQuYDqsGoiXssZ3zct6dcMxiqfT6epy7x4R0TQJadd4LWO3sPR6JH6ZByOvVLoZ6EdwPGgd7+DR1EmX3tiXQQ== -cssnano-util-get-match@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/cssnano-util-get-match/download/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" - integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= +cssnano@^5.0.2: + version "5.1.15" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-5.1.15.tgz#ded66b5480d5127fcb44dac12ea5a983755136bf" + integrity sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw== + dependencies: + cssnano-preset-default "^5.2.14" + lilconfig "^2.0.3" + yaml "^1.10.2" -cssnano-util-raw-cache@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/cssnano-util-raw-cache/download/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" - integrity sha1-sm1f1fcqEd/np4RvtMZyYPlr8oI= +cssnano@^6.0.3: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-6.0.5.tgz#5ff1a344ca9d7862ee7198991cf3e7463bd12355" + integrity sha512-tpTp/ukgrElwu3ESFY4IvWnGn8eTt8cJhC2aAbtA3lvUlxp6t6UPv8YCLjNnEGiFreT1O0LiOM1U3QyTBVFl2A== dependencies: - postcss "^7.0.0" + cssnano-preset-default "^6.0.5" + lilconfig "^3.1.1" -cssnano-util-same-parent@^4.0.0: - version "4.0.1" - resolved "https://registry.npm.taobao.org/cssnano-util-same-parent/download/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" - integrity sha1-V0CC+yhZ0ttDOFWDXZqEVuoYu/M= - -cssnano@^4.1.10: - version "4.1.10" - resolved "https://registry.npm.taobao.org/cssnano/download/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" - integrity sha1-CsQfCxPRPUZUh+ERt3jULaYxuLI= - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.7" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -cssnano@^4.1.11: - version "4.1.11" - resolved "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz#c7b5f5b81da269cb1fd982cb960c1200910c9a99" - integrity sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g== - dependencies: - cosmiconfig "^5.0.0" - cssnano-preset-default "^4.0.8" - is-resolvable "^1.0.0" - postcss "^7.0.0" - -csso@^4.0.2: - version "4.0.3" - resolved "https://registry.npm.taobao.org/csso/download/csso-4.0.3.tgz?cache=0&sync_timestamp=1585052282901&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcsso%2Fdownload%2Fcsso-4.0.3.tgz#0d9985dc852c7cc2b2cacfbbe1079014d1a8e903" - integrity sha1-DZmF3IUsfMKyys+74QeQFNGo6QM= +csso@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" + integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== + dependencies: + css-tree "^1.1.2" + +csso@^5.0.5: + version "5.0.5" + resolved "https://registry.yarnpkg.com/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6" + integrity sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ== dependencies: - css-tree "1.0.0-alpha.39" + css-tree "~2.2.0" cssom@^0.4.4: version "0.4.4" - resolved "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== cssom@~0.3.6: version "0.3.8" - resolved "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== cssstyle@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== dependencies: cssom "~0.3.6" +csstype@^3.1.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" + integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== + cuint@^0.2.2: version "0.2.2" - resolved "https://registry.npm.taobao.org/cuint/download/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" - integrity sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs= + resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" + integrity sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw== cyclist@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/cyclist/download/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" - integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= + version "1.0.2" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.2.tgz#673b5f233bf34d8e602b949429f8171d9121bea3" + integrity sha512-0sVXIohTfLqVIW3kb/0n6IiWF3Ifj5nm2XaSrLq2DI6fKIGa2fYAZdk917rUneaeLVpYfFcyXE2ft0fe3remsA== dashdash@^1.12.0: version "1.14.1" - resolved "https://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== dependencies: assert-plus "^1.0.0" data-urls@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== dependencies: abab "^2.0.3" @@ -4230,223 +4306,200 @@ data-urls@^2.0.0: de-indent@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/de-indent/download/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" - integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== deasync@^0.1.15: - version "0.1.20" - resolved "https://registry.npm.taobao.org/deasync/download/deasync-0.1.20.tgz?cache=0&sync_timestamp=1588008669410&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdeasync%2Fdownload%2Fdeasync-0.1.20.tgz#546fd2660688a1eeed55edce2308c5cf7104f9da" - integrity sha1-VG/SZgaIoe7tVe3OIwjFz3EE+do= + version "0.1.29" + resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.29.tgz#8bbbf9d0b235c561b36edd440b6272f1de6c572c" + integrity sha512-EBtfUhVX23CE9GR6m+F8WPeImEE4hR/FW9RkK0PMl9V1t283s0elqsTD8EZjaKX28SY1BW2rYfCgNsAYdpamUw== dependencies: bindings "^1.5.0" node-addon-api "^1.7.1" +debounce@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5" + integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug== + debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8: version "2.6.9" - resolved "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" - integrity sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8= + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4, debug@^4.3.1, debug@^4.3.2: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3: version "4.3.4" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== dependencies: ms "2.1.2" debug@^3.2.7: version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== dependencies: ms "^2.1.1" -debug@^4.1.0, debug@^4.1.1: - version "4.1.1" - resolved "https://registry.npm.taobao.org/debug/download/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E= - dependencies: - ms "^2.1.1" - decache@^4.6.0: - version "4.6.1" - resolved "https://registry.npmjs.org/decache/-/decache-4.6.1.tgz#5928bfab97a6fcf22a65047a3d07999af36efaf0" - integrity sha512-ohApBM8u9ygepJCjgBrEZSSxPjc0T/PJkD+uNyxXPkqudyUpdXpwJYp0VISm2WrPVzASU6DZyIi6BWdyw7uJ2Q== + version "4.6.2" + resolved "https://registry.yarnpkg.com/decache/-/decache-4.6.2.tgz#c1df1325a2f36d53922e08f33380f083148199cd" + integrity sha512-2LPqkLeu8XWHU8qNCS3kcF6sCcb5zIzvWaAHYSvPfwhdd7mHuah29NssMzrTYyHN4F5oFy2ko9OBYxegtU0FEw== dependencies: callsite "^1.0.0" decamelize-keys@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" - integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + version "1.1.1" + resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz#04a2d523b2f18d80d0158a43b895d56dff8d19d8" + integrity sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg== dependencies: decamelize "^1.1.0" map-obj "^1.0.0" decamelize@^1.1.0, decamelize@^1.2.0: version "1.2.0" - resolved "https://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" - integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== decimal.js@^10.2.1, decimal.js@^10.3.1: - version "10.3.1" - resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" - integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== decode-uri-component@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== -decompress-response@^3.3.0: - version "3.3.0" - resolved "https://registry.npm.taobao.org/decompress-response/download/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" - integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= - dependencies: - mimic-response "^1.0.0" - dedent@^0.7.0: version "0.7.0" - resolved "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= - -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.npm.taobao.org/deep-extend/download/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw= - -deep-is@~0.1.3: - version "0.1.3" - resolved "https://registry.npm.taobao.org/deep-is/download/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" - integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== deepmerge@^4.2.2: - version "4.2.2" - resolved "https://registry.npm.taobao.org/deepmerge/download/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" - integrity sha1-RNLqNnm49NT/ujPwPYZfwee/SVU= + version "4.3.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== -defer-to-connect@^1.0.1: - version "1.1.3" - resolved "https://registry.npm.taobao.org/defer-to-connect/download/defer-to-connect-1.1.3.tgz?cache=0&sync_timestamp=1580234632952&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefer-to-connect%2Fdownload%2Fdefer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" - integrity sha1-MxrgUMCNz3ifjIOnuB8O2U9KxZE= +define-data-property@^1.0.1, define-data-property@^1.1.2, define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" -define-properties@^1.1.2, define-properties@^1.1.3: - version "1.1.3" - resolved "https://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" - integrity sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE= +define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.2.0, define-properties@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" + integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg== dependencies: - object-keys "^1.0.12" + define-data-property "^1.0.1" + has-property-descriptors "^1.0.0" + object-keys "^1.1.1" define-property@^0.2.5: version "0.2.5" - resolved "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== dependencies: is-descriptor "^0.1.0" define-property@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== dependencies: is-descriptor "^1.0.0" define-property@^2.0.2: version "2.0.2" - resolved "https://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha1-1Flono1lS6d+AqgX+HENcCyxbp0= + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== dependencies: is-descriptor "^1.0.2" isobject "^3.0.1" -defu@^2.0.4: - version "2.0.4" - resolved "https://registry.npm.taobao.org/defu/download/defu-2.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdefu%2Fdownload%2Fdefu-2.0.4.tgz#09659a6e87a8fd7178be13bd43e9357ebf6d1c46" - integrity sha1-CWWaboeo/XF4vhO9Q+k1fr9tHEY= - defu@^3.2.2: version "3.2.2" - resolved "https://registry.npmjs.org/defu/-/defu-3.2.2.tgz#be20f4cc49b9805d54ee6b610658d53894942e97" + resolved "https://registry.yarnpkg.com/defu/-/defu-3.2.2.tgz#be20f4cc49b9805d54ee6b610658d53894942e97" integrity sha512-8UWj5lNv7HD+kB0e9w77Z7TdQlbUYDVWqITLHNqFIn6khrNHv5WQo38Dcm1f6HeNyZf0U7UbPf6WeZDSdCzGDQ== -defu@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/defu/-/defu-4.0.1.tgz#9d7d7a48f9295f08285d153dcff174c89b9bcb22" - integrity sha512-lC+G0KvvWRbisQa50+iFelm3/eMmwo4IlBmfASOVlw9MZpHHyQeVsZxc5j23+TQy5ydgEoTVSrWl7ptou1kzJQ== - defu@^5.0.0: version "5.0.1" - resolved "https://registry.npmjs.org/defu/-/defu-5.0.1.tgz#a034278f9b032bf0845d261aa75e9ad98da878ac" + resolved "https://registry.yarnpkg.com/defu/-/defu-5.0.1.tgz#a034278f9b032bf0845d261aa75e9ad98da878ac" integrity sha512-EPS1carKg+dkEVy3qNTqIdp2qV7mUP08nIsupfwQpz++slCVRw7qbQyWvSTig+kFPwz2XXp5/kIIkH+CwrJKkQ== +defu@^6.0.0, defu@^6.1.2, defu@^6.1.3, defu@^6.1.4: + version "6.1.4" + resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.4.tgz#4e0c9cf9ff68fe5f3d7f2765cc1a012dfdcb0479" + integrity sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg== + delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== delegate@^3.1.2: version "3.2.0" - resolved "https://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" - integrity sha1-tmtxwxWFIuirV0T3INjKDCr1kWY= + resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" + integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== delegates@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/delegates/download/delegates-1.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdelegates%2Fdownload%2Fdelegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" - integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ== -depd@^1.1.2, depd@~1.1.2: - version "1.1.2" - resolved "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" - integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= +depd@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== des.js@^1.0.0: - version "1.0.1" - resolved "https://registry.npm.taobao.org/des.js/download/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" - integrity sha1-U4IULhvcU/hdhtU+X0qn3rkeCEM= + version "1.1.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.1.0.tgz#1d37f5766f3bbff4ee9638e871a8768c173b81da" + integrity sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg== dependencies: inherits "^2.0.1" minimalistic-assert "^1.0.0" -destr@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/destr/download/destr-1.0.0.tgz?cache=0&sync_timestamp=1592502347239&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdestr%2Fdownload%2Fdestr-1.0.0.tgz#c445ef0baaf3e51a6d08551d453d6f73fbda2dc6" - integrity sha1-xEXvC6rz5RptCFUdRT1vc/vaLcY= - -destr@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/destr/-/destr-1.1.0.tgz#2da6add6ba71e04fd0abfb1e642d4f6763235095" - integrity sha512-Ev/sqS5AzzDwlpor/5wFCDu0dYMQu/0x2D6XfAsQ0E7uQmamIgYJ6Dppo2T2EOFVkeVYWjc+PCLKaqZZ57qmLg== +destr@^2.0.0, destr@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/destr/-/destr-2.0.3.tgz#7f9e97cb3d16dbdca7be52aca1644ce402cfe449" + integrity sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ== -destroy@^1.0.4, destroy@~1.0.4: - version "1.0.4" - resolved "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" - integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= +destroy@1.2.0, destroy@^1.0.4: + version "1.2.0" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" + integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== detect-indent@^5.0.0: version "5.0.0" - resolved "https://registry.npm.taobao.org/detect-indent/download/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" - integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + integrity sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g== detect-newline@^3.0.0: version "3.1.0" - resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== devalue@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/devalue/-/devalue-2.0.1.tgz#5d368f9adc0928e47b77eea53ca60d2f346f9762" + resolved "https://registry.yarnpkg.com/devalue/-/devalue-2.0.1.tgz#5d368f9adc0928e47b77eea53ca60d2f346f9762" integrity sha512-I2TiqT5iWBEyB8GRfTDP0hiLZ0YeDJZ+upDxjBfOC2lebO5LezQMv7QvIUTzdb64jQyAKLf1AHADtGN+jw6v8Q== diff-sequences@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== diffie-hellman@^5.0.0: version "5.0.3" - resolved "https://registry.npm.taobao.org/diffie-hellman/download/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" - integrity sha1-QOjumPVaIUlgcUaSHGPhrl89KHU= + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" + integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== dependencies: bn.js "^4.1.0" miller-rabin "^4.0.0" @@ -4454,180 +4507,157 @@ diffie-hellman@^5.0.0: dir-glob@^3.0.1: version "3.0.1" - resolved "https://registry.npm.taobao.org/dir-glob/download/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" - integrity sha1-Vtv3PZkqSpO6FYT0U0Bj/S5BcX8= + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== dependencies: path-type "^4.0.0" -dom-converter@^0.2: +dom-converter@^0.2.0: version "0.2.0" - resolved "https://registry.npm.taobao.org/dom-converter/download/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" - integrity sha1-ZyGp2u4uKTaClVtq/kFncWJ7t2g= + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" + integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA== dependencies: utila "~0.4" dom-event-types@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/dom-event-types/download/dom-event-types-1.0.0.tgz#5830a0a29e1bf837fe50a70cd80a597232813cae" - integrity sha1-WDCgop4b+Df+UKcM2ApZcjKBPK4= - -dom-serializer@0: - version "0.2.2" - resolved "https://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" - integrity sha1-GvuB9TNxcXXUeGVd68XjMtn5u1E= - dependencies: - domelementtype "^2.0.1" - entities "^2.0.0" + version "1.1.0" + resolved "https://registry.yarnpkg.com/dom-event-types/-/dom-event-types-1.1.0.tgz#120c1f92ddea7758db1ccee0a100a33c39f4701b" + integrity sha512-jNCX+uNJ3v38BKvPbpki6j5ItVlnSqVV6vDWGS6rExzCMjsc39frLjm1n91o6YaKK6AZl0wLloItW6C6mr61BQ== dom-serializer@^1.0.1: - version "1.3.2" - resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" - integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== + version "1.4.1" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30" + integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag== dependencies: domelementtype "^2.0.1" domhandler "^4.2.0" entities "^2.0.0" +dom-serializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53" + integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg== + dependencies: + domelementtype "^2.3.0" + domhandler "^5.0.2" + entities "^4.2.0" + domain-browser@^1.1.1: version "1.2.0" - resolved "https://registry.npm.taobao.org/domain-browser/download/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" - integrity sha1-PTH1AZGmdJ3RN1p/Ui6CPULlTto= - -domelementtype@1, domelementtype@^1.3.1: - version "1.3.1" - resolved "https://registry.npm.taobao.org/domelementtype/download/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" - integrity sha1-0EjESzew0Qp/Kj1f7j9DM9eQSB8= + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" + integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== -domelementtype@^2.0.1: - version "2.0.1" - resolved "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" - integrity sha1-H4vf6R9aeAYydOgDtL3O326U+U0= - -domelementtype@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" - integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== +domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" + integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== domexception@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== dependencies: webidl-conversions "^5.0.0" -domhandler@^2.3.0: - version "2.4.2" - resolved "https://registry.npm.taobao.org/domhandler/download/domhandler-2.4.2.tgz#8805097e933d65e85546f726d60f5eb88b44f803" - integrity sha1-iAUJfpM9ZehVRvcm1g9euItE+AM= - dependencies: - domelementtype "1" - -domhandler@^4.2.0, domhandler@^4.3.1: +domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== dependencies: domelementtype "^2.2.0" -domutils@1.5.1: - version "1.5.1" - resolved "https://registry.npm.taobao.org/domutils/download/domutils-1.5.1.tgz?cache=0&sync_timestamp=1589052712571&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomutils%2Fdownload%2Fdomutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" - integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= - dependencies: - dom-serializer "0" - domelementtype "1" - -domutils@^1.5.1, domutils@^1.7.0: - version "1.7.0" - resolved "https://registry.npm.taobao.org/domutils/download/domutils-1.7.0.tgz?cache=0&sync_timestamp=1589052712571&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomutils%2Fdownload%2Fdomutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" - integrity sha1-Vuo0HoNOBuZ0ivehyyXaZ+qfjCo= +domhandler@^5.0.2, domhandler@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31" + integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w== dependencies: - dom-serializer "0" - domelementtype "1" + domelementtype "^2.3.0" -domutils@^2.8.0: +domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" - resolved "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== dependencies: dom-serializer "^1.0.1" domelementtype "^2.2.0" domhandler "^4.2.0" -dot-case@^3.0.3: - version "3.0.3" - resolved "https://registry.npm.taobao.org/dot-case/download/dot-case-3.0.3.tgz#21d3b52efaaba2ea5fda875bb1aa8124521cf4aa" - integrity sha1-IdO1Lvqroupf2odbsaqBJFIc9Ko= +domutils@^3.0.1: + version "3.1.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.1.0.tgz#c47f551278d3dc4b0b1ab8cbb42d751a6f0d824e" + integrity sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA== dependencies: - no-case "^3.0.3" - tslib "^1.10.0" + dom-serializer "^2.0.0" + domelementtype "^2.3.0" + domhandler "^5.0.3" -dot-prop@^5.2.0: - version "5.2.0" - resolved "https://registry.npm.taobao.org/dot-prop/download/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" - integrity sha1-w07MKVVtxF8fTCJpe29JBODMT8s= +dot-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" + integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== dependencies: - is-obj "^2.0.0" + no-case "^3.0.4" + tslib "^2.0.3" + +dotenv@^16.3.1: + version "16.4.5" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.5.tgz#cdd3b3b604cb327e286b4762e13502f717cb099f" + integrity sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg== dotenv@^9.0.2: version "9.0.2" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-9.0.2.tgz#dacc20160935a37dea6364aa1bef819fb9b6ab05" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-9.0.2.tgz#dacc20160935a37dea6364aa1bef819fb9b6ab05" integrity sha512-I9OvvrHp4pIARv4+x9iuewrWycX6CcZtoAu1XrzPxc5UygMJXJZYmBsynku8IkrJwgypE5DGNjDPmPRhDCptUg== -duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.npm.taobao.org/duplexer3/download/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= - duplexer@^0.1.2: version "0.1.2" - resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== duplexify@^3.4.2, duplexify@^3.6.0: version "3.7.1" - resolved "https://registry.npm.taobao.org/duplexify/download/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" - integrity sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk= + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== dependencies: end-of-stream "^1.0.0" inherits "^2.0.1" readable-stream "^2.0.0" stream-shift "^1.0.0" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + ecc-jsbn@~0.1.1: version "0.1.2" - resolved "https://registry.npm.taobao.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== dependencies: jsbn "~0.1.0" safer-buffer "^2.1.0" -editorconfig@^0.15.3: - version "0.15.3" - resolved "https://registry.npm.taobao.org/editorconfig/download/editorconfig-0.15.3.tgz#bef84c4e75fb8dcb0ce5cee8efd51c15999befc5" - integrity sha1-vvhMTnX7jcsM5c7o79UcFZmb78U= +editorconfig@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-1.0.4.tgz#040c9a8e9a6c5288388b87c2db07028aa89f53a3" + integrity sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q== dependencies: - commander "^2.19.0" - lru-cache "^4.1.5" - semver "^5.6.0" - sigmund "^1.0.1" + "@one-ini/wasm" "0.1.1" + commander "^10.0.0" + minimatch "9.0.1" + semver "^7.5.3" ee-first@1.1.1: version "1.1.1" - resolved "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.3.723: - version "1.3.738" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.738.tgz#aec24b091c82acbfabbdcce08076a703941d17ca" - integrity sha512-vCMf4gDOpEylPSLPLSwAEsz+R3ShP02Y3cAKMZvTqule3XcPp7tgc/0ESI7IS6ZeyBlGClE50N53fIOkcIVnpw== +electron-to-chromium@^1.4.668: + version "1.4.687" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.687.tgz#8b80da91848c13a90802f840c7de96c8558fef52" + integrity sha512-Ic85cOuXSP6h7KM0AIJ2hpJ98Bo4hyTUjc4yjMbkvD+8yTxEhfK9+8exT2KKYsSjnCn2tGsKVSZwE7ZgTORQCw== -electron-to-chromium@^1.4.84: - version "1.4.103" - resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.103.tgz#abfe376a4d70fa1e1b4b353b95df5d6dfd05da3a" - integrity sha512-c/uKWR1Z/W30Wy/sx3dkZoj4BijbXX85QKWu9jJfjho3LBAXNEGAEW3oWiGb+dotA6C6BzCTxL2/aLes7jlUeg== - -elliptic@^6.0.0, elliptic@^6.5.2: +elliptic@^6.5.3, elliptic@^6.5.4: version "6.5.4" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== @@ -4642,18 +4672,18 @@ elliptic@^6.0.0, elliptic@^6.5.2: emittery@^0.8.1: version "0.8.1" - resolved "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== -emoji-regex@^7.0.1: - version "7.0.3" - resolved "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" - integrity sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY= - emoji-regex@^8.0.0: version "8.0.0" - resolved "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc= + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== emojis-list@^3.0.0: version "3.0.0" @@ -4662,50 +4692,41 @@ emojis-list@^3.0.0: encodeurl@~1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== encoding@^0.1.12: version "0.1.13" - resolved "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== dependencies: iconv-lite "^0.6.2" end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.4" - resolved "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" - integrity sha1-WuZKX0UFe682JuwU2gyl5LJDHrA= + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== dependencies: once "^1.4.0" -enhanced-resolve@^4.1.1: - version "4.2.0" - resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.2.0.tgz?cache=0&sync_timestamp=1592387335371&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.2.0.tgz#5d43bda4a0fd447cb0ebbe71bef8deff8805ad0d" - integrity sha1-XUO9pKD9RHyw675xvvje/4gFrQ0= - dependencies: - graceful-fs "^4.1.2" - memory-fs "^0.5.0" - tapable "^1.0.0" - -enhanced-resolve@^4.5.0: +enhanced-resolve@^4.1.1, enhanced-resolve@^4.5.0: version "4.5.0" - resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz#2f3cfd84dbe3b487f18f2db2ef1e064a571ca5ec" integrity sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg== dependencies: graceful-fs "^4.1.2" memory-fs "^0.5.0" tapable "^1.0.0" -entities@^1.1.1: - version "1.1.2" - resolved "https://registry.npm.taobao.org/entities/download/entities-1.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fentities%2Fdownload%2Fentities-1.1.2.tgz#bdfa735299664dfafd34529ed4f8522a275fea56" - integrity sha1-vfpzUplmTfr9NFKe1PhSKidf6lY= - entities@^2.0.0: - version "2.0.3" - resolved "https://registry.npm.taobao.org/entities/download/entities-2.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fentities%2Fdownload%2Fentities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" - integrity sha1-XEh+V0Krk8Fau12iJ1m4WQ7AO38= + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + +entities@^4.2.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== env-paths@^2.2.0: version "2.2.1" @@ -4714,159 +4735,214 @@ env-paths@^2.2.0: err-code@^2.0.2: version "2.0.3" - resolved "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== errno@^0.1.3, errno@~0.1.7: - version "0.1.7" - resolved "https://registry.npm.taobao.org/errno/download/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" - integrity sha1-RoTXF3mtOa8Xfj8AeZb3xnyFJhg= + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== dependencies: prr "~1.0.1" error-ex@^1.3.1: version "1.3.2" - resolved "https://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha1-tKxAZIEH/c3PriQvQovqihTU8b8= + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" -error-stack-parser@^2.0.0: - version "2.0.6" - resolved "https://registry.npm.taobao.org/error-stack-parser/download/error-stack-parser-2.0.6.tgz#5a99a707bd7a4c58a797902d48d82803ede6aad8" - integrity sha1-WpmnB716TFinl5AtSNgoA+3mqtg= +error-stack-parser@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/error-stack-parser/-/error-stack-parser-2.1.4.tgz#229cb01cdbfa84440bfa91876285b94680188286" + integrity sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ== + dependencies: + stackframe "^1.3.4" + +es-abstract@^1.22.1, es-abstract@^1.22.3: + version "1.22.5" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.22.5.tgz#1417df4e97cc55f09bf7e58d1e614bc61cb8df46" + integrity sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w== + dependencies: + array-buffer-byte-length "^1.0.1" + arraybuffer.prototype.slice "^1.0.3" + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + es-define-property "^1.0.0" + es-errors "^1.3.0" + es-set-tostringtag "^2.0.3" + es-to-primitive "^1.2.1" + function.prototype.name "^1.1.6" + get-intrinsic "^1.2.4" + get-symbol-description "^1.0.2" + globalthis "^1.0.3" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + has-proto "^1.0.3" + has-symbols "^1.0.3" + hasown "^2.0.1" + internal-slot "^1.0.7" + is-array-buffer "^3.0.4" + is-callable "^1.2.7" + is-negative-zero "^2.0.3" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.3" + is-string "^1.0.7" + is-typed-array "^1.1.13" + is-weakref "^1.0.2" + object-inspect "^1.13.1" + object-keys "^1.1.1" + object.assign "^4.1.5" + regexp.prototype.flags "^1.5.2" + safe-array-concat "^1.1.0" + safe-regex-test "^1.0.3" + string.prototype.trim "^1.2.8" + string.prototype.trimend "^1.0.7" + string.prototype.trimstart "^1.0.7" + typed-array-buffer "^1.0.2" + typed-array-byte-length "^1.0.1" + typed-array-byte-offset "^1.0.2" + typed-array-length "^1.0.5" + unbox-primitive "^1.0.2" + which-typed-array "^1.1.14" + +es-array-method-boxes-properly@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz#873f3e84418de4ee19c5be752990b2e44718d09e" + integrity sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA== + +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== dependencies: - stackframe "^1.1.1" + get-intrinsic "^1.2.4" + +es-errors@^1.2.1, es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: - version "1.17.6" - resolved "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.17.6.tgz?cache=0&sync_timestamp=1592109018051&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" - integrity sha1-kUIHFweFeyysx7iey2cDFsPi1So= +es-set-tostringtag@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz#8bb60f0a440c2e4281962428438d58545af39777" + integrity sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ== dependencies: - es-to-primitive "^1.2.1" - function-bind "^1.1.1" - has "^1.0.3" - has-symbols "^1.0.1" - is-callable "^1.2.0" - is-regex "^1.1.0" - object-inspect "^1.7.0" - object-keys "^1.1.1" - object.assign "^4.1.0" - string.prototype.trimend "^1.0.1" - string.prototype.trimstart "^1.0.1" + get-intrinsic "^1.2.4" + has-tostringtag "^1.0.2" + hasown "^2.0.1" es-to-primitive@^1.2.1: version "1.2.1" - resolved "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" - integrity sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo= + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== dependencies: is-callable "^1.1.4" is-date-object "^1.0.1" is-symbol "^1.0.2" escalade@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" - integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== - -escape-goat@^2.0.0: - version "2.1.1" - resolved "https://registry.npm.taobao.org/escape-goat/download/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" - integrity sha1-Gy3HcANnbEV+x2Cy3GjttkgYhnU= + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== escape-html@~1.0.3: version "1.0.3" - resolved "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== escape-string-regexp@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" - integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== + version "2.1.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" + integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== dependencies: esprima "^4.0.1" estraverse "^5.2.0" esutils "^2.0.2" - optionator "^0.8.1" optionalDependencies: source-map "~0.6.1" eslint-scope@^4.0.3: version "4.0.3" - resolved "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz?cache=0&sync_timestamp=1591269986906&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-scope%2Fdownload%2Feslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" - integrity sha1-ygODMxD2iJoyZHgaqC5j65z+eEg= + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" + integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" esprima@^4.0.0, esprima@^4.0.1: version "4.0.1" - resolved "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha1-E7BM2z5sXRnfkatph6hpVhmwqnE= + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== esrecurse@^4.1.0: - version "4.2.1" - resolved "https://registry.npm.taobao.org/esrecurse/download/esrecurse-4.2.1.tgz#007a3b9fdbc2b3bb87e4879ea19c92fdbd3942cf" - integrity sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8= + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== dependencies: - estraverse "^4.1.0" + estraverse "^5.2.0" -estraverse@^4.1.0, estraverse@^4.1.1: +estraverse@^4.1.1: version "4.3.0" - resolved "https://registry.npm.taobao.org/estraverse/download/estraverse-4.3.0.tgz?cache=0&sync_timestamp=1586968779444&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festraverse%2Fdownload%2Festraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" - integrity sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0= + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== estraverse@^5.2.0: version "5.3.0" - resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== esutils@^2.0.2: version "2.0.3" - resolved "https://registry.npm.taobao.org/esutils/download/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q= + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== etag@^1.8.1, etag@~1.8.1: version "1.8.1" - resolved "https://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" - integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== eventemitter3@^4.0.0: - version "4.0.4" - resolved "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-4.0.4.tgz?cache=0&sync_timestamp=1589283112999&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feventemitter3%2Fdownload%2Feventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" - integrity sha1-tUY6zmNaCD0Bi9x8kXtMXxCoU4Q= + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== events@^3.0.0: - version "3.1.0" - resolved "https://registry.npm.taobao.org/events/download/events-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fevents%2Fdownload%2Fevents-3.1.0.tgz#84279af1b34cb75aa88bf5ff291f6d0bd9b31a59" - integrity sha1-hCea8bNMt1qoi/X/KR9tC9mzGlk= + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== eventsource-polyfill@^0.9.6: version "0.9.6" - resolved "https://registry.npm.taobao.org/eventsource-polyfill/download/eventsource-polyfill-0.9.6.tgz#10e0d187f111b167f28fdab918843ce7d818f13c" - integrity sha1-EODRh/ERsWfyj9q5GIQ859gY8Tw= + resolved "https://registry.yarnpkg.com/eventsource-polyfill/-/eventsource-polyfill-0.9.6.tgz#10e0d187f111b167f28fdab918843ce7d818f13c" + integrity sha512-LyMFp2oPDGhum2lMvkjqKZEwWd2/AoXyt8aoyftTBMWwPHNgU+2tdxhTHPluDxoz+z4gNj0uHAPR9nqevATMbg== evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: version "1.0.3" - resolved "https://registry.npm.taobao.org/evp_bytestokey/download/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" - integrity sha1-f8vbGY3HGVlDLv4ThCaE4FJaywI= + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== dependencies: md5.js "^1.3.4" safe-buffer "^5.1.1" -execa@^5.0.0: +execa@^5.0.0, execa@^5.1.1: version "5.1.1" - resolved "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== dependencies: cross-spawn "^7.0.3" @@ -4881,13 +4957,13 @@ execa@^5.0.0: exit@^0.1.2: version "0.1.2" - resolved "https://registry.npm.taobao.org/exit/download/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== expand-brackets@^2.1.4: version "2.1.4" - resolved "https://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== dependencies: debug "^2.3.3" define-property "^0.2.5" @@ -4899,7 +4975,7 @@ expand-brackets@^2.1.4: expect@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" + resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== dependencies: "@jest/types" "^27.5.1" @@ -4909,28 +4985,28 @@ expect@^27.5.1: extend-shallow@^2.0.1: version "2.0.1" - resolved "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" - integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== dependencies: is-extendable "^0.1.0" extend-shallow@^3.0.0, extend-shallow@^3.0.2: version "3.0.2" - resolved "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== dependencies: assign-symbols "^1.0.0" is-extendable "^1.0.1" extend@~3.0.2: version "3.0.2" - resolved "https://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" - integrity sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo= + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== external-editor@^3.0.3: version "3.1.0" - resolved "https://registry.npm.taobao.org/external-editor/download/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" - integrity sha1-ywP3QL764D6k0oPK7SdBqD8zVJU= + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== dependencies: chardet "^0.7.0" iconv-lite "^0.4.24" @@ -4938,8 +5014,8 @@ external-editor@^3.0.3: extglob@^2.0.4: version "2.0.4" - resolved "https://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM= + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== dependencies: array-unique "^0.3.2" define-property "^1.0.0" @@ -4950,42 +5026,42 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" -extract-css-chunks-webpack-plugin@^4.9.0: - version "4.9.0" - resolved "https://registry.npmjs.org/extract-css-chunks-webpack-plugin/-/extract-css-chunks-webpack-plugin-4.9.0.tgz#da5e6b1d8b39a398c817ffc98550f4ccb6d795e1" - integrity sha512-HNuNPCXRMqJDQ1OHAUehoY+0JVCnw9Y/H22FQzYVwo8Ulgew98AGDu0grnY5c7xwiXHjQa6yJ/1dxLCI/xqTyQ== +extract-css-chunks-webpack-plugin@^4.10.0: + version "4.10.0" + resolved "https://registry.yarnpkg.com/extract-css-chunks-webpack-plugin/-/extract-css-chunks-webpack-plugin-4.10.0.tgz#60a847b1c86e99318c3b2a777d642ece2702ba80" + integrity sha512-D/wb/Tbexq8XMBl4uhthto25WBaHI9P8vucDdzwPtLTyVi4Rdw/aiRLSL2rHaF6jZfPAjThWXepFU9PXsdtIbA== dependencies: - loader-utils "^2.0.0" + loader-utils "^2.0.4" normalize-url "1.9.1" schema-utils "^1.0.0" webpack-sources "^1.1.0" extract-from-css@^0.4.4: version "0.4.4" - resolved "https://registry.npm.taobao.org/extract-from-css/download/extract-from-css-0.4.4.tgz#1ea7df2e7c7c6eb9922fa08e8adaea486f6f8f92" - integrity sha1-HqffLnx8brmSL6COitrqSG9vj5I= + resolved "https://registry.yarnpkg.com/extract-from-css/-/extract-from-css-0.4.4.tgz#1ea7df2e7c7c6eb9922fa08e8adaea486f6f8f92" + integrity sha512-41qWGBdtKp9U7sgBxAQ7vonYqSXzgW/SiAYzq4tdWSVhAShvpVCH1nyvPQgjse6EdgbW7Y7ERdT3674/lKr65A== dependencies: css "^2.1.0" extsprintf@1.3.0: version "1.3.0" - resolved "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== extsprintf@^1.2.0: - version "1.4.0" - resolved "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" - integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + version "1.4.1" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== -fast-deep-equal@^3.1.1: +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== fast-glob@^3.2.7, fast-glob@^3.2.9: - version "3.2.11" - resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9" - integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew== + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== dependencies: "@nodelib/fs.stat" "^2.0.2" "@nodelib/fs.walk" "^1.2.3" @@ -4998,22 +5074,17 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@~2.0.6: - version "2.0.6" - resolved "https://registry.npm.taobao.org/fast-levenshtein/download/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" - integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= - fastq@^1.6.0: - version "1.8.0" - resolved "https://registry.npm.taobao.org/fastq/download/fastq-1.8.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffastq%2Fdownload%2Ffastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481" - integrity sha1-VQ4fn1m7xl/hhctqm02VNXEH9IE= + version "1.17.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.17.1.tgz#2a523f07a4e7b1e81a42b91b8bf2254107753b47" + integrity sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w== dependencies: reusify "^1.0.4" fb-watchman@^2.0.0: - version "2.0.1" - resolved "https://registry.npm.taobao.org/fb-watchman/download/fb-watchman-2.0.1.tgz?cache=0&sync_timestamp=1575658859576&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffb-watchman%2Fdownload%2Ffb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" - integrity sha1-/IT7OdJwnPP/bXQ3BhV7tXCKioU= + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== dependencies: bser "2.1.1" @@ -5022,16 +5093,16 @@ figgy-pudding@^3.5.1: resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== -figures@^3.0.0: +figures@^3.0.0, figures@^3.2.0: version "3.2.0" - resolved "https://registry.npm.taobao.org/figures/download/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha1-YlwYvSk8YE3EqN2y/r8MiDQXRq8= + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== dependencies: escape-string-regexp "^1.0.5" file-loader@^6.2.0: version "6.2.0" - resolved "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw== dependencies: loader-utils "^2.0.0" @@ -5039,13 +5110,13 @@ file-loader@^6.2.0: file-uri-to-path@1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/file-uri-to-path/download/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" - integrity sha1-VTp7hEb/b2hDWcRF8eN6BdrMM90= + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== fill-range@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/fill-range/download/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== dependencies: extend-shallow "^2.0.1" is-number "^3.0.0" @@ -5054,15 +5125,15 @@ fill-range@^4.0.0: fill-range@^7.0.1: version "7.0.1" - resolved "https://registry.npm.taobao.org/fill-range/download/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" - integrity sha1-GRmmp8df44ssfHflGYU12prN2kA= + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== dependencies: to-regex-range "^5.0.1" finalhandler@1.1.2: version "1.1.2" - resolved "https://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" - integrity sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0= + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== dependencies: debug "2.6.9" encodeurl "~1.0.2" @@ -5074,25 +5145,25 @@ finalhandler@1.1.2: find-babel-config@^1.1.0: version "1.2.0" - resolved "https://registry.npm.taobao.org/find-babel-config/download/find-babel-config-1.2.0.tgz#a9b7b317eb5b9860cda9d54740a8c8337a2283a2" - integrity sha1-qbezF+tbmGDNqdVHQKjIM3oig6I= + resolved "https://registry.yarnpkg.com/find-babel-config/-/find-babel-config-1.2.0.tgz#a9b7b317eb5b9860cda9d54740a8c8337a2283a2" + integrity sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA== dependencies: json5 "^0.5.1" path-exists "^3.0.0" find-cache-dir@^2.0.0, find-cache-dir@^2.1.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-2.1.0.tgz?cache=0&sync_timestamp=1583734806517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" - integrity sha1-jQ+UzRP+Q8bHwmGg2GEVypGMBfc= + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" + integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== dependencies: commondir "^1.0.1" make-dir "^2.0.0" pkg-dir "^3.0.0" find-cache-dir@^3.0.0, find-cache-dir@^3.3.1: - version "3.3.1" - resolved "https://registry.npm.taobao.org/find-cache-dir/download/find-cache-dir-3.3.1.tgz?cache=0&sync_timestamp=1583734806517&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-cache-dir%2Fdownload%2Ffind-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" - integrity sha1-ibM/rUpGcNqpT4Vff74x1thP6IA= + version "3.3.2" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" + integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== dependencies: commondir "^1.0.1" make-dir "^3.0.2" @@ -5100,55 +5171,65 @@ find-cache-dir@^3.0.0, find-cache-dir@^3.3.1: find-up@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha1-SRafHXmTQwZG2mHsxa41XCHJe3M= + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== dependencies: locate-path "^3.0.0" find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" - resolved "https://registry.npm.taobao.org/find-up/download/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" - integrity sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk= + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== dependencies: locate-path "^5.0.0" path-exists "^4.0.0" -flat@^5.0.0: +flat@^5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== -flatten@^1.0.2: - version "1.0.3" - resolved "https://registry.npm.taobao.org/flatten/download/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b" - integrity sha1-wSg6yfJ7Noq8HjbR/3sEUBowNWs= - flush-write-stream@^1.0.0: version "1.1.1" - resolved "https://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" - integrity sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug= + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== dependencies: inherits "^2.0.3" readable-stream "^2.3.6" follow-redirects@^1.0.0, follow-redirects@^1.14.0: - version "1.14.9" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz#dd4ea157de7bfaf9ea9b3fbd85aa16951f78d8d7" - integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w== + version "1.15.5" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.5.tgz#54d4d6d062c0fa7d9d17feb008461550e3ba8020" + integrity sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw== + +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" for-in@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +foreground-child@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.1.1.tgz#1d173e776d75d2772fed08efe4a0de1ea1b12d0d" + integrity sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg== + dependencies: + cross-spawn "^7.0.0" + signal-exit "^4.0.1" forever-agent@~0.6.1: version "0.6.1" - resolved "https://registry.npm.taobao.org/forever-agent/download/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== form-data@^3.0.0: version "3.0.1" - resolved "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== dependencies: asynckit "^0.4.0" @@ -5157,37 +5238,51 @@ form-data@^3.0.0: form-data@~2.3.2: version "2.3.3" - resolved "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha1-3M5SwF9kTymManq5Nr1yTO/786Y= + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== dependencies: asynckit "^0.4.0" combined-stream "^1.0.6" mime-types "^2.1.12" +fraction.js@^4.3.7: + version "4.3.7" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" + integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== + fragment-cache@^0.2.1: version "0.2.1" - resolved "https://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== dependencies: map-cache "^0.2.2" fresh@0.5.2, fresh@^0.5.2: version "0.5.2" - resolved "https://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== from2@^2.1.0: version "2.3.0" - resolved "https://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" - integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g== dependencies: inherits "^2.0.1" readable-stream "^2.0.0" +fs-extra@^10.1.0: + version "10.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" + integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + fs-extra@^8.1.0: version "8.1.0" - resolved "https://registry.npm.taobao.org/fs-extra/download/fs-extra-8.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffs-extra%2Fdownload%2Ffs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" - integrity sha1-SdQ8RaiM2Wd2aMt74bRu/bjS4cA= + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== dependencies: graceful-fs "^4.2.0" jsonfile "^4.0.0" @@ -5195,7 +5290,7 @@ fs-extra@^8.1.0: fs-extra@^9.1.0: version "9.1.0" - resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== dependencies: at-least-node "^1.0.0" @@ -5205,25 +5300,25 @@ fs-extra@^9.1.0: fs-memo@^1.2.0: version "1.2.0" - resolved "https://registry.npmjs.org/fs-memo/-/fs-memo-1.2.0.tgz#a2ec3be606b902077adbb37ec529c5ec5fb2e037" + resolved "https://registry.yarnpkg.com/fs-memo/-/fs-memo-1.2.0.tgz#a2ec3be606b902077adbb37ec529c5ec5fb2e037" integrity sha512-YEexkCpL4j03jn5SxaMHqcO6IuWuqm8JFUYhyCep7Ao89JIYmB8xoKhK7zXXJ9cCaNXpyNH5L3QtAmoxjoHW2w== fs-minipass@^2.0.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha1-f1A2/b8SxjwWkZDL5BmchSJx+fs= + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: minipass "^3.0.0" -fs-monkey@1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz#ae3ac92d53bb328efe0e9a1d9541f6ad8d48e2d3" - integrity sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q== +fs-monkey@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.5.tgz#fe450175f0db0d7ea758102e1d84096acb925788" + integrity sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew== fs-write-stream-atomic@^1.0.8: version "1.0.10" - resolved "https://registry.npm.taobao.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" - integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + integrity sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA== dependencies: graceful-fs "^4.1.2" iferr "^0.1.5" @@ -5232,26 +5327,41 @@ fs-write-stream-atomic@^1.0.8: fs.realpath@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== fsevents@^1.2.7: version "1.2.13" - resolved "https://registry.npm.taobao.org/fsevents/download/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" - integrity sha1-8yXLBFVZJCi88Rs4M3DvcOO/zDg= + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" + integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== dependencies: bindings "^1.5.0" nan "^2.12.1" fsevents@^2.3.2, fsevents@~2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== -function-bind@^1.1.1: - version "1.1.1" - resolved "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" - integrity sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0= +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +function.prototype.name@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz#cdf315b7d90ee77a4c6ee216c3c3362da07533fd" + integrity sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + functions-have-names "^1.2.3" + +functions-have-names@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" + integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== gauge@^3.0.0: version "3.0.2" @@ -5268,9 +5378,9 @@ gauge@^3.0.0: strip-ansi "^6.0.1" wide-align "^1.1.2" -gauge@^4.0.0: +gauge@^4.0.3: version "4.0.4" - resolved "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" integrity sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg== dependencies: aproba "^1.0.3 || ^2.0.0" @@ -5284,153 +5394,181 @@ gauge@^4.0.0: gaze@^1.0.0: version "1.1.3" - resolved "https://registry.npm.taobao.org/gaze/download/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" - integrity sha1-xEFzPhO5J6yMD/C0w7Az8ogSkko= + resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" + integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== dependencies: globule "^1.0.0" -gensync@^1.0.0-beta.1: - version "1.0.0-beta.1" - resolved "https://registry.npm.taobao.org/gensync/download/gensync-1.0.0-beta.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgensync%2Fdownload%2Fgensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" - integrity sha1-WPQ2H/mH5f9uHnohCCeqNx6qwmk= - gensync@^1.0.0-beta.2: version "1.0.0-beta.2" - resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-caller-file@^2.0.5: version "2.0.5" - resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" + get-package-type@^0.1.0: version "0.1.0" - resolved "https://registry.npm.taobao.org/get-package-type/download/get-package-type-0.1.0.tgz?cache=0&sync_timestamp=1589989507025&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fget-package-type%2Fdownload%2Fget-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha1-jeLYA8/0TfO8bEVuZmizbDkm4Ro= + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== get-port-please@^2.2.0: - version "2.4.3" - resolved "https://registry.npmjs.org/get-port-please/-/get-port-please-2.4.3.tgz#8f054020016bfafb7f65001db501079c02ed59d1" - integrity sha512-l5zVrG3mzz+I7MfbPwyJJ4xZKIdQfARpOtsBjUDUZ0iXlF0IXc1wMBg3Jb7G1te7tRzjOxu+MRLpvgxxTdCkwg== + version "2.6.1" + resolved "https://registry.yarnpkg.com/get-port-please/-/get-port-please-2.6.1.tgz#80143de24fcaab39b01df977f66ad967e06b17d1" + integrity sha512-4PDSrL6+cuMM1xs6w36ZIkaKzzE0xzfVBCfebHIJ3FE8iB9oic/ECwPw3iNiD4h1AoJ5XLLBhEviFAVrZsDC5A== dependencies: fs-memo "^1.2.0" get-stdin@^4.0.1: version "4.0.1" - resolved "https://registry.npm.taobao.org/get-stdin/download/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" - integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= - -get-stream@^4.1.0: - version "4.1.0" - resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" - integrity sha1-wbJVV189wh1Zv8ec09K0axw6VLU= - dependencies: - pump "^3.0.0" - -get-stream@^5.1.0: - version "5.1.0" - resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-5.1.0.tgz#01203cdc92597f9b909067c3e656cc1f4d3c4dc9" - integrity sha1-ASA83JJZf5uQkGfD5lbMH008Tck= - dependencies: - pump "^3.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw== get-stream@^6.0.0: version "6.0.1" - resolved "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== +get-symbol-description@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz#533744d5aa20aca4e079c8e5daf7fd44202821f5" + integrity sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg== + dependencies: + call-bind "^1.0.5" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + get-value@^2.0.3, get-value@^2.0.6: version "2.0.6" - resolved "https://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== getpass@^0.1.1: version "0.1.7" - resolved "https://registry.npm.taobao.org/getpass/download/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== dependencies: assert-plus "^1.0.0" git-config-path@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/git-config-path/download/git-config-path-2.0.0.tgz#62633d61af63af4405a5024efd325762f58a181b" - integrity sha1-YmM9Ya9jr0QFpQJO/TJXYvWKGBs= + resolved "https://registry.yarnpkg.com/git-config-path/-/git-config-path-2.0.0.tgz#62633d61af63af4405a5024efd325762f58a181b" + integrity sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA== -git-up@^4.0.0: - version "4.0.1" - resolved "https://registry.npm.taobao.org/git-up/download/git-up-4.0.1.tgz#cb2ef086653640e721d2042fe3104857d89007c0" - integrity sha1-yy7whmU2QOch0gQv4xBIV9iQB8A= +git-up@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/git-up/-/git-up-7.0.0.tgz#bace30786e36f56ea341b6f69adfd83286337467" + integrity sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ== dependencies: - is-ssh "^1.3.0" - parse-url "^5.0.0" + is-ssh "^1.4.0" + parse-url "^8.1.0" -git-url-parse@^11.4.4: - version "11.6.0" - resolved "https://registry.npmjs.org/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" - integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g== +git-url-parse@^13.1.1: + version "13.1.1" + resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-13.1.1.tgz#664bddf0857c6a75b3c1f0ae6239abb08a1486d4" + integrity sha512-PCFJyeSSdtnbfhSNRw9Wk96dDCNx+sogTe4YNXeXSJxt7xz5hvXekuRn9JX7m+Mf4OscCu8h+mtAl3+h5Fo8lQ== dependencies: - git-up "^4.0.0" + git-up "^7.0.0" glob-parent@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/glob-parent/download/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" - integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA== dependencies: is-glob "^3.1.0" path-dirname "^1.0.0" glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.1.1: - version "7.1.6" - resolved "https://registry.npm.taobao.org/glob/download/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" - integrity sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY= +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + +glob@^10.3.3: + version "10.3.10" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.10.tgz#0351ebb809fd187fe421ab96af83d3a70715df4b" + integrity sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g== + dependencies: + foreground-child "^3.1.0" + jackspeak "^2.3.5" + minimatch "^9.0.1" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-scurry "^1.10.1" + +glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7, glob@^7.2.0: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" + minimatch "^3.1.1" once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.7, glob@^7.2.0: - version "7.2.0" - resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" - integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== +glob@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" - minimatch "^3.0.4" + minimatch "^5.0.1" once "^1.3.0" - path-is-absolute "^1.0.0" -global-dirs@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686" - integrity sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA== +glob@~7.1.1: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== dependencies: - ini "2.0.0" + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" globals@^11.1.0: version "11.12.0" - resolved "https://registry.npm.taobao.org/globals/download/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" - integrity sha1-q4eVM4hooLq9hSV1gBjCp+uVxC4= + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== globals@^9.18.0: version "9.18.0" - resolved "https://registry.npm.taobao.org/globals/download/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" - integrity sha1-qjiWs+abSH8X4x7SFD1pqOMMLYo= + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ== + +globalthis@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/globalthis/-/globalthis-1.0.3.tgz#5852882a52b80dc301b0660273e1ed082f0b6ccf" + integrity sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA== + dependencies: + define-properties "^1.1.3" -globby@^11.0.3, globby@^11.0.4: +globby@^11.0.4: version "11.1.0" - resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== dependencies: array-union "^2.1.0" @@ -5441,71 +5579,51 @@ globby@^11.0.3, globby@^11.0.4: slash "^3.0.0" globule@^1.0.0: - version "1.3.2" - resolved "https://registry.npm.taobao.org/globule/download/globule-1.3.2.tgz?cache=0&sync_timestamp=1591641966255&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobule%2Fdownload%2Fglobule-1.3.2.tgz#d8bdd9e9e4eef8f96e245999a5dee7eb5d8529c4" - integrity sha1-2L3Z6eTu+PluJFmZpd7n612FKcQ= + version "1.3.4" + resolved "https://registry.yarnpkg.com/globule/-/globule-1.3.4.tgz#7c11c43056055a75a6e68294453c17f2796170fb" + integrity sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg== dependencies: glob "~7.1.1" - lodash "~4.17.10" + lodash "^4.17.21" minimatch "~3.0.2" good-listener@^1.2.2: version "1.2.2" - resolved "https://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" - integrity sha1-1TswzfkxPf+33JoNR3CWqm0UXFA= + resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" + integrity sha512-goW1b+d9q/HIwbVYZzZ6SsTr4IgE+WA44A0GmPIQstuOrgsFcT7VEJ48nmr9GaRtNu0XTKacFLGnBPAM6Afouw== dependencies: delegate "^3.1.2" -got@^9.6.0: - version "9.6.0" - resolved "https://registry.npm.taobao.org/got/download/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" - integrity sha1-7fRefWf5lUVwXeH3u+7rEhdl7YU= - dependencies: - "@sindresorhus/is" "^0.14.0" - "@szmarczak/http-timer" "^1.1.2" - cacheable-request "^6.0.0" - decompress-response "^3.3.0" - duplexer3 "^0.1.4" - get-stream "^4.1.0" - lowercase-keys "^1.0.1" - mimic-response "^1.0.1" - p-cancelable "^1.0.0" - to-readable-stream "^1.0.0" - url-parse-lax "^3.0.0" - -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: - version "4.2.4" - resolved "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz?cache=0&sync_timestamp=1588086905523&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" - integrity sha1-Ila94U02MpWMRl68ltxGfKB6Kfs= +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" -graceful-fs@^4.2.6, graceful-fs@^4.2.9: - version "4.2.9" - resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz#041b05df45755e587a24942279b9d113146e1c96" - integrity sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ== +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== gzip-size@^6.0.0: version "6.0.0" - resolved "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== dependencies: duplexer "^0.1.2" -hable@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/hable/download/hable-3.0.0.tgz#6de089b2df946635cf8134b9e4859f1b62de255f" - integrity sha1-beCJst+UZjXPgTS55IWfG2LeJV8= - har-schema@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" - integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q== har-validator@~5.1.3: - version "5.1.3" - resolved "https://registry.npm.taobao.org/har-validator/download/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080" - integrity sha1-HvievT5JllV2de7ZiTEQ3DUPoIA= + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== dependencies: - ajv "^6.5.5" + ajv "^6.12.3" har-schema "^2.0.0" hard-rejection@^2.1.0: @@ -5515,8 +5633,8 @@ hard-rejection@^2.1.0: hard-source-webpack-plugin@^0.13.1: version "0.13.1" - resolved "https://registry.npm.taobao.org/hard-source-webpack-plugin/download/hard-source-webpack-plugin-0.13.1.tgz#a99071e25b232f1438a5bc3c99f10a3869e4428e" - integrity sha1-qZBx4lsjLxQ4pbw8mfEKOGnkQo4= + resolved "https://registry.yarnpkg.com/hard-source-webpack-plugin/-/hard-source-webpack-plugin-0.13.1.tgz#a99071e25b232f1438a5bc3c99f10a3869e4428e" + integrity sha512-r9zf5Wq7IqJHdVAQsZ4OP+dcUSvoHqDMxJlIzaE2J0TZWn3UjMMrHqwDHR8Jr/pzPfG7XxSe36E7Y8QGNdtuAw== dependencies: chalk "^2.4.1" find-cache-dir "^2.0.0" @@ -5534,35 +5652,59 @@ hard-source-webpack-plugin@^0.13.1: has-ansi@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/has-ansi/download/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" - integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== dependencies: ansi-regex "^2.0.0" +has-bigints@^1.0.1, has-bigints@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz#0871bd3e3d51626f6ca0966668ba35d5602d6eaa" + integrity sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ== + has-flag@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" - integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== has-flag@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s= + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== -has-symbols@^1.0.0, has-symbols@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.1.tgz?cache=0&sync_timestamp=1573950719586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhas-symbols%2Fdownload%2Fhas-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" - integrity sha1-n1IUdYpEGWxAbZvXbOv4HsLdMeg= +has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.1, has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.0.1, has-proto@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== + +has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has-tostringtag@^1.0.0, has-tostringtag@^1.0.1, has-tostringtag@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== + dependencies: + has-symbols "^1.0.3" has-unicode@^2.0.1: version "2.0.1" - resolved "https://registry.npm.taobao.org/has-unicode/download/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" - integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== has-value@^0.3.1: version "0.3.1" - resolved "https://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== dependencies: get-value "^2.0.3" has-values "^0.1.4" @@ -5570,8 +5712,8 @@ has-value@^0.3.1: has-value@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== dependencies: get-value "^2.0.6" has-values "^1.0.0" @@ -5579,33 +5721,21 @@ has-value@^1.0.0: has-values@^0.1.4: version "0.1.4" - resolved "https://registry.npm.taobao.org/has-values/download/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== has-values@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/has-values/download/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== dependencies: is-number "^3.0.0" kind-of "^4.0.0" -has-yarn@^2.1.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/has-yarn/download/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" - integrity sha1-E34RNUp7W/EapctknPDG8/8rLnc= - -has@^1.0.0, has@^1.0.3: - version "1.0.3" - resolved "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" - integrity sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y= - dependencies: - function-bind "^1.1.1" - hash-base@^3.0.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/hash-base/download/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" - integrity sha1-VcOB2eBuHSmXqIO0o/3f5/DTrzM= + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" + integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== dependencies: inherits "^2.0.4" readable-stream "^3.6.0" @@ -5613,13 +5743,13 @@ hash-base@^3.0.0: hash-sum@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/hash-sum/download/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" - integrity sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ= + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" + integrity sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA== hash-sum@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/hash-sum/download/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a" - integrity sha1-gdAbtd6OpKIUrV1urRtSNGCwtFo= + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-2.0.0.tgz#81d01bb5de8ea4a214ad5d6ead1b523460b0b45a" + integrity sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg== hash.js@^1.0.0, hash.js@^1.0.3: version "1.1.7" @@ -5631,31 +5761,38 @@ hash.js@^1.0.0, hash.js@^1.0.3: hasha@^5.2.2: version "5.2.2" - resolved "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz#a48477989b3b327aea3c04f53096d816d97522a1" + resolved "https://registry.yarnpkg.com/hasha/-/hasha-5.2.2.tgz#a48477989b3b327aea3c04f53096d816d97522a1" integrity sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ== dependencies: is-stream "^2.0.0" type-fest "^0.8.0" -he@1.2.0, he@^1.1.0, he@^1.2.0: - version "1.2.0" - resolved "https://registry.npm.taobao.org/he/download/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" - integrity sha1-hK5l+n6vsWX922FWauFLrwVmTw8= +hasown@^2.0.0, hasown@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.1.tgz#26f48f039de2c0f8d3356c223fb8d50253519faa" + integrity sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA== + dependencies: + function-bind "^1.1.2" -hex-color-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.npm.taobao.org/hex-color-regex/download/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" - integrity sha1-TAb8y0YC/iYCs8k9+C1+fb8aio4= +he@1.2.0, he@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== hmac-drbg@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== dependencies: hash.js "^1.0.3" minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" +hookable@^4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/hookable/-/hookable-4.4.1.tgz#3d7154ac7e1f6f147e50fef583832f2645b9f04f" + integrity sha512-KWjZM8C7IVT2qne5HTXjM6R6VnRfjfRlf/oCnHd+yFxoHO1DzOl6B9LzV/VqGQK/IrFewq+EG+ePVrE9Tpc3fg== + hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -5668,42 +5805,27 @@ hosted-git-info@^4.0.1: dependencies: lru-cache "^6.0.0" -hsl-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/hsl-regex/download/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" - integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= - -hsla-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/hsla-regex/download/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" - integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= - -html-comment-regex@^1.1.0: - version "1.1.2" - resolved "https://registry.npm.taobao.org/html-comment-regex/download/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" - integrity sha1-l9RoiutcgYhqNk+qDK0d2hTUM6c= - html-encoding-sniffer@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== dependencies: whatwg-encoding "^1.0.5" -html-entities@^1.2.0: - version "1.3.1" - resolved "https://registry.npm.taobao.org/html-entities/download/html-entities-1.3.1.tgz#fb9a1a4b5b14c5daba82d3e34c6ae4fe701a0e44" - integrity sha1-+5oaS1sUxdq6gtPjTGrk/nAaDkQ= +html-entities@^2.1.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.4.0.tgz#edd0cee70402584c8c76cc2c0556db09d1f45061" + integrity sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ== -html-escaper@^2.0.0: +html-escaper@^2.0.0, html-escaper@^2.0.2: version "2.0.2" - resolved "https://registry.npm.taobao.org/html-escaper/download/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha1-39YAJ9o2o238viNiYsAKWCJoFFM= + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== html-minifier-terser@^5.0.1: version "5.1.1" - resolved "https://registry.npm.taobao.org/html-minifier-terser/download/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" - integrity sha1-ki6W8fO7YIMsJjS3mIQJY4mx8FQ= + resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" + integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== dependencies: camel-case "^4.1.1" clean-css "^4.2.3" @@ -5715,8 +5837,8 @@ html-minifier-terser@^5.0.1: html-minifier@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/html-minifier/download/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56" - integrity sha1-zKmq2LzhF14C4XqMM+RtiYiIn1Y= + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56" + integrity sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig== dependencies: camel-case "^3.0.0" clean-css "^4.2.1" @@ -5728,12 +5850,12 @@ html-minifier@^4.0.0: html-tags@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/html-tags/download/html-tags-2.0.0.tgz?cache=0&sync_timestamp=1566122004262&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhtml-tags%2Fdownload%2Fhtml-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b" - integrity sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos= + resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-2.0.0.tgz#10b30a386085f43cede353cc8fa7cb0deeea668b" + integrity sha512-+Il6N8cCo2wB/Vd3gqy/8TZhTD3QvcVeQLCnZiGkGCH3JP28IgGAY41giccp2W4R3jfyJPAP318FQTa1yU7K7g== html-webpack-plugin@^4.5.1: version "4.5.2" - resolved "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz#76fc83fa1a0f12dd5f7da0404a54e2699666bc12" integrity sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A== dependencies: "@types/html-minifier-terser" "^5.0.0" @@ -5746,37 +5868,35 @@ html-webpack-plugin@^4.5.1: tapable "^1.1.3" util.promisify "1.0.0" -htmlparser2@^3.3.0: - version "3.10.1" - resolved "https://registry.npm.taobao.org/htmlparser2/download/htmlparser2-3.10.1.tgz#bd679dc3f59897b6a34bb10749c855bb53a9392f" - integrity sha1-vWedw/WYl7ajS7EHSchVu1OpOS8= +htmlparser2@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== dependencies: - domelementtype "^1.3.1" - domhandler "^2.3.0" - domutils "^1.5.1" - entities "^1.1.1" - inherits "^2.0.1" - readable-stream "^3.1.1" + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.5.2" + entities "^2.0.0" -http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: +http-cache-semantics@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a" integrity sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ== -http-errors@~1.7.2: - version "1.7.3" - resolved "https://registry.npm.taobao.org/http-errors/download/http-errors-1.7.3.tgz?cache=0&sync_timestamp=1593407710477&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" - integrity sha1-bGGeT5xgMIw4UZSYwU+7EKrOuwY= +http-errors@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" + integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== dependencies: - depd "~1.1.2" + depd "2.0.0" inherits "2.0.4" - setprototypeof "1.1.1" - statuses ">= 1.5.0 < 2" - toidentifier "1.0.0" + setprototypeof "1.2.0" + statuses "2.0.1" + toidentifier "1.0.1" http-proxy-agent@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== dependencies: "@tootallnate/once" "1" @@ -5785,7 +5905,7 @@ http-proxy-agent@^4.0.1: http-proxy-middleware@^1.0.6: version "1.3.1" - resolved "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz#43700d6d9eecb7419bf086a128d0f7205d9eb665" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz#43700d6d9eecb7419bf086a128d0f7205d9eb665" integrity sha512-13eVVDYS4z79w7f1+NPllJtOQFx/FdUW4btIvVRMaRlUY9VGstAbo5MOhLEuUgZFRHn3x50ufn25zkj/boZnEg== dependencies: "@types/http-proxy" "^1.17.5" @@ -5796,8 +5916,8 @@ http-proxy-middleware@^1.0.6: http-proxy@^1.18.1: version "1.18.1" - resolved "https://registry.npm.taobao.org/http-proxy/download/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" - integrity sha1-QBVB8FNIhLv5UmAzTnL4juOXZUk= + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549" + integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== dependencies: eventemitter3 "^4.0.0" follow-redirects "^1.0.0" @@ -5805,8 +5925,8 @@ http-proxy@^1.18.1: http-signature@~1.2.0: version "1.2.0" - resolved "https://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" - integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ== dependencies: assert-plus "^1.0.0" jsprim "^1.2.2" @@ -5814,110 +5934,79 @@ http-signature@~1.2.0: https-browserify@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/https-browserify/download/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" - integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== https-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" - integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + version "5.0.1" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" + integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== dependencies: agent-base "6" debug "4" human-signals@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== humanize-ms@^1.2.1: version "1.2.1" - resolved "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" - integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== dependencies: ms "^2.0.0" iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" - resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&sync_timestamp=1593323598725&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha1-ICK0sl+93CHS9SSXSkdKr+czkIs= + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== dependencies: safer-buffer ">= 2.1.2 < 3" iconv-lite@^0.6.2: version "0.6.3" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -icss-utils@^4.0.0, icss-utils@^4.1.1: - version "4.1.1" - resolved "https://registry.npm.taobao.org/icss-utils/download/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" - integrity sha1-IRcLU3ie4nRHwvR91oMIFAP5pGc= - dependencies: - postcss "^7.0.14" +icss-utils@^5.0.0, icss-utils@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== -ieee754@^1.1.13: +ieee754@^1.1.4: version "1.2.1" - resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ieee754@^1.1.4: - version "1.1.13" - resolved "https://registry.npm.taobao.org/ieee754/download/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" - integrity sha1-7BaFWOlaoYH9h9N/VcMrvLZwi4Q= - iferr@^0.1.5: version "0.1.5" - resolved "https://registry.npm.taobao.org/iferr/download/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" - integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + integrity sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA== ignore-by-default@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/ignore-by-default/download/ignore-by-default-1.0.1.tgz?cache=0&sync_timestamp=1592055833647&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fignore-by-default%2Fdownload%2Fignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" - integrity sha1-SMptcvbGo68Aqa1K5odr44ieKwk= - -ignore@^5.1.8: - version "5.1.8" - resolved "https://registry.npm.taobao.org/ignore/download/ignore-5.1.8.tgz?cache=0&sync_timestamp=1590809380232&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fignore%2Fdownload%2Fignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57" - integrity sha1-8VCotQo0KJsz4i9YiavU2AFvDlc= - -ignore@^5.2.0: - version "5.2.0" - resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" - integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== + resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09" + integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA== -import-cwd@^2.0.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/import-cwd/download/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" - integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= - dependencies: - import-from "^2.1.0" - -import-fresh@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/import-fresh/download/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" - integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= - dependencies: - caller-path "^2.0.0" - resolve-from "^3.0.0" +ignore@^5.2.0, ignore@^5.3.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== -import-from@^2.1.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/import-from/download/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" - integrity sha1-M1238qev/VOqpHHUuAId7ja387E= +import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== dependencies: - resolve-from "^3.0.0" - -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/import-lazy/download/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= + parent-module "^1.0.0" + resolve-from "^4.0.0" import-local@^3.0.2: version "3.1.0" - resolved "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== dependencies: pkg-dir "^4.2.0" @@ -5925,60 +6014,45 @@ import-local@^3.0.2: imurmurhash@^0.1.4: version "0.1.4" - resolved "https://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" - integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== indent-string@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/indent-string/download/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" - integrity sha1-Yk+PRJfWGbLZdoUx1Y9BIoVNclE= - -indexes-of@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/indexes-of/download/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" - integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" - resolved "https://registry.npm.taobao.org/infer-owner/download/infer-owner-1.0.4.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finfer-owner%2Fdownload%2Finfer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha1-xM78qo5RBRwqQLos6KPScpWvlGc= + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== inflight@^1.0.4: version "1.0.6" - resolved "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== dependencies: once "^1.3.0" wrappy "1" inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" - resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" - integrity sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w= - -inherits@2.0.1: - version "2.0.1" - resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" - integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== inherits@2.0.3: version "2.0.3" - resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= - -ini@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" - integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA== + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== -ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: - version "1.3.7" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.7.tgz#a09363e1911972ea16d7a8851005d84cf09a9a84" - integrity sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ== +ini@^1.3.4, ini@^1.3.5: + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== inquirer@^7.3.3: version "7.3.3" - resolved "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== dependencies: ansi-escapes "^4.2.1" @@ -5995,366 +6069,354 @@ inquirer@^7.3.3: strip-ansi "^6.0.0" through "^2.3.6" +internal-slot@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.7.tgz#c06dcca3ed874249881007b0a5523b172a190802" + integrity sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g== + dependencies: + es-errors "^1.3.0" + hasown "^2.0.0" + side-channel "^1.0.4" + invariant@^2.2.2: version "2.2.4" - resolved "https://registry.npm.taobao.org/invariant/download/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" - integrity sha1-YQ88ksk1nOHbYW5TgAjSP/NRWOY= + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== dependencies: loose-envify "^1.0.0" -ip@^1.1.5: +ip-address@^9.0.5: + version "9.0.5" + resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" + integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== + dependencies: + jsbn "1.1.0" + sprintf-js "^1.1.3" + +ip@^1.1.8: version "1.1.9" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.9.tgz#8dfbcc99a754d07f425310b86a99546b1151e396" integrity sha512-cyRxvOEpNHNtchU3Ln9KC/auJgup87llfQpQ+t5ghoC/UhL16SWzbueiCsdTnWmqAWl7LadfuwhlqmtOaqMHdQ== -is-absolute-url@^2.0.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/is-absolute-url/download/is-absolute-url-2.1.0.tgz?cache=0&sync_timestamp=1569735737284&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-absolute-url%2Fdownload%2Fis-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" - integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= - -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= +is-accessor-descriptor@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz#3223b10628354644b86260db29b3e693f5ceedd4" + integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA== dependencies: - kind-of "^3.0.2" + hasown "^2.0.0" -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY= +is-array-buffer@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz#7a1f92b3d61edd2bc65d24f130530ea93d7fae98" + integrity sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw== dependencies: - kind-of "^6.0.0" + call-bind "^1.0.2" + get-intrinsic "^1.2.1" is-arrayish@^0.2.1: version "0.2.1" - resolved "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" - integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== -is-arrayish@^0.3.1: - version "0.3.2" - resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" - integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" is-binary-path@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" - integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== dependencies: binary-extensions "^1.0.0" is-binary-path@~2.1.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" - integrity sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk= + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== dependencies: binary-extensions "^2.0.0" -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1588707106955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha1-76ouqdqg16suoTqXsritUf776L4= - -is-callable@^1.1.4, is-callable@^1.2.0: - version "1.2.0" - resolved "https://registry.npm.taobao.org/is-callable/download/is-callable-1.2.0.tgz?cache=0&sync_timestamp=1591427607174&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-callable%2Fdownload%2Fis-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" - integrity sha1-gzNlYLVKOONeOi33r9BFTWkUaLs= - -is-ci@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/is-ci/download/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" - integrity sha1-a8YzQYGBDgS1wis9WJ/cpVAmQEw= +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== dependencies: - ci-info "^2.0.0" + call-bind "^1.0.2" + has-tostringtag "^1.0.0" -is-color-stop@^1.0.0: - version "1.1.0" - resolved "https://registry.npm.taobao.org/is-color-stop/download/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" - integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= - dependencies: - css-color-names "^0.0.4" - hex-color-regex "^1.1.0" - hsl-regex "^1.0.0" - hsla-regex "^1.0.0" - rgb-regex "^1.0.1" - rgba-regex "^1.0.0" +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== -is-core-module@^2.5.0, is-core-module@^2.8.1: - version "2.8.1" - resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz#f59fdfca701d5879d0a6b100a40aa1560ce27211" - integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA== - dependencies: - has "^1.0.3" +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= +is-core-module@^2.13.0, is-core-module@^2.5.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== dependencies: - kind-of "^3.0.2" + hasown "^2.0.0" -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc= +is-data-descriptor@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz#2109164426166d32ea38c405c1e0945d9e6a4eeb" + integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw== dependencies: - kind-of "^6.0.0" + hasown "^2.0.0" is-date-object@^1.0.1: - version "1.0.2" - resolved "https://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" - integrity sha1-vac28s2P0G0yhE53Q7+nSUw7/X4= + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco= + version "0.1.7" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.7.tgz#2727eb61fd789dcd5bdf0ed4569f551d2fe3be33" + integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg== dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" + is-accessor-descriptor "^1.0.1" + is-data-descriptor "^1.0.1" is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw= + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.3.tgz#92d27cb3cd311c4977a4db47df457234a13cb306" + integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - -is-directory@^0.3.1: - version "0.3.1" - resolved "https://registry.npm.taobao.org/is-directory/download/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" - integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= - -is-docker@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" - integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + is-accessor-descriptor "^1.0.1" + is-data-descriptor "^1.0.1" is-extendable@^0.1.0, is-extendable@^0.1.1: version "0.1.1" - resolved "https://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" - integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== is-extendable@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ= + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== dependencies: is-plain-object "^2.0.4" is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" - resolved "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" - integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= - -is-fullwidth-code-point@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" - integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== is-fullwidth-code-point@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0= + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== is-generator-fn@^2.0.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/is-generator-fn/download/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha1-fRQK3DiarzARqPKipM+m+q3/sRg= + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== is-glob@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" - integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw== dependencies: is-extglob "^2.1.0" is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw= + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== dependencies: is-extglob "^2.1.1" is-https@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/is-https/-/is-https-4.0.0.tgz#9ee725a334fb517b988278d2674efc96e4f348ed" + resolved "https://registry.yarnpkg.com/is-https/-/is-https-4.0.0.tgz#9ee725a334fb517b988278d2674efc96e4f348ed" integrity sha512-FeMLiqf8E5g6SdiVJsPcNZX8k4h2fBs1wp5Bb6uaNxn58ufK1axBqQZdmAQsqh0t9BuwFObybrdVJh6MKyPlyg== -is-installed-globally@^0.4.0: - version "0.4.0" - resolved "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" - integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ== - dependencies: - global-dirs "^3.0.0" - is-path-inside "^3.0.2" - is-lambda@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" - integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= + resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ== -is-npm@^5.0.0: - version "5.0.0" - resolved "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz#43e8d65cc56e1b67f8d47262cf667099193f45a8" - integrity sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA== +is-negative-zero@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz#ced903a027aca6381b777a5743069d7376a49747" + integrity sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw== + +is-number-object@^1.0.4: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.7.tgz#59d50ada4c45251784e9904f5246c742f07a42fc" + integrity sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ== + dependencies: + has-tostringtag "^1.0.0" is-number@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== dependencies: kind-of "^3.0.2" is-number@^7.0.0: version "7.0.0" - resolved "https://registry.npm.taobao.org/is-number/download/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" - integrity sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss= - -is-obj@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/is-obj/download/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" - integrity sha1-Rz+wXZc3BeP9liBUUBjKjiLvSYI= - -is-path-inside@^3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== is-plain-obj@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" - resolved "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" - integrity sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc= + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== dependencies: isobject "^3.0.1" +is-plain-object@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== + is-potential-custom-element-name@^1.0.1: version "1.0.1" - resolved "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== -is-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.npm.taobao.org/is-regex/download/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" - integrity sha1-7OOOOJ5JDfDcIcrqK9WW+Yf3Z/8= +is-regex@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== dependencies: - has-symbols "^1.0.1" - -is-resolvable@^1.0.0: - version "1.1.0" - resolved "https://registry.npm.taobao.org/is-resolvable/download/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" - integrity sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg= + call-bind "^1.0.2" + has-tostringtag "^1.0.0" is-retry-allowed@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-2.2.0.tgz#88f34cbd236e043e71b6932d09b0c65fb7b4d71d" integrity sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg== -is-ssh@^1.3.0: - version "1.3.1" - resolved "https://registry.npm.taobao.org/is-ssh/download/is-ssh-1.3.1.tgz#f349a8cadd24e65298037a522cf7520f2e81a0f3" - integrity sha1-80moyt0k5lKYA3pSLPdSDy6BoPM= +is-shared-array-buffer@^1.0.2, is-shared-array-buffer@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz#1237f1cba059cdb62431d378dcc37d9680181688" + integrity sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg== + dependencies: + call-bind "^1.0.7" + +is-ssh@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.0.tgz#4f8220601d2839d8fa624b3106f8e8884f01b8b2" + integrity sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ== dependencies: - protocols "^1.1.0" + protocols "^2.0.1" is-stream@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/is-stream/download/is-stream-2.0.0.tgz#bde9c32680d6fae04129d6ac9d921ce7815f78e3" - integrity sha1-venDJoDW+uBBKdasnZIc54FfeOM= + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== -is-svg@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/is-svg/download/is-svg-3.0.0.tgz?cache=0&sync_timestamp=1579236224749&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-svg%2Fdownload%2Fis-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" - integrity sha1-kyHb0pwhLlypnE+peUxxS8r6L3U= +is-string@^1.0.5, is-string@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== dependencies: - html-comment-regex "^1.1.0" + has-tostringtag "^1.0.0" -is-symbol@^1.0.2: - version "1.0.3" - resolved "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" - integrity sha1-OOEBS55jKb4N6dJKQU/XRB7GGTc= +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +is-typed-array@^1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.13.tgz#d6c5ca56df62334959322d7d7dd1cca50debe229" + integrity sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw== dependencies: - has-symbols "^1.0.1" + which-typed-array "^1.1.14" is-typedarray@^1.0.0, is-typedarray@~1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" - integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-weakref@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" + integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ== + dependencies: + call-bind "^1.0.2" is-whitespace@^0.3.0: version "0.3.0" - resolved "https://registry.npm.taobao.org/is-whitespace/download/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f" - integrity sha1-Fjnssb4DauxppUy7QBz77XEUq38= + resolved "https://registry.yarnpkg.com/is-whitespace/-/is-whitespace-0.3.0.tgz#1639ecb1be036aec69a54cbb401cfbed7114ab7f" + integrity sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg== is-windows@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0= + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== is-wsl@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/is-wsl/download/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" - integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= - -is-yarn-global@^0.3.0: - version "0.3.0" - resolved "https://registry.npm.taobao.org/is-yarn-global/download/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" - integrity sha1-1QLTOCWQ6jAEiTdGdUyJE5lz4jI= + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + integrity sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw== isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isarray@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" + integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== isexe@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" - integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== isobject@^2.0.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/isobject/download/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== dependencies: isarray "1.0.0" isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" - resolved "https://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" - integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== isstream@~0.1.2: version "0.1.2" - resolved "https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== -istanbul-lib-coverage@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/istanbul-lib-coverage/download/istanbul-lib-coverage-3.0.0.tgz#f5944a37c70b550b02a78a5c3b2055b280cec8ec" - integrity sha1-9ZRKN8cLVQsCp4pcOyBVsoDOyOw= - -istanbul-lib-coverage@^3.2.0: - version "3.2.0" - resolved "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" - integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz#2d166c4b0644d43a39f04bf6c2edd1e585f31756" + integrity sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg== istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" - integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== dependencies: "@babel/core" "^7.12.3" "@babel/parser" "^7.14.7" @@ -6363,17 +6425,17 @@ istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: semver "^6.3.0" istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== dependencies: istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" + make-dir "^4.0.0" supports-color "^7.1.0" istanbul-lib-source-maps@^4.0.0: version "4.0.1" - resolved "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== dependencies: debug "^4.1.1" @@ -6381,16 +6443,25 @@ istanbul-lib-source-maps@^4.0.0: source-map "^0.6.1" istanbul-reports@^3.1.3: - version "3.1.4" - resolved "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz#1b6f068ecbc6c331040aab5741991273e609e40c" - integrity sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw== + version "3.1.7" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.7.tgz#daed12b9e1dca518e15c056e1e537e741280fa0b" + integrity sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g== dependencies: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" +jackspeak@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-2.3.6.tgz#647ecc472238aee4b06ac0e461acc21a8c505ca8" + integrity sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jest-changed-files@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== dependencies: "@jest/types" "^27.5.1" @@ -6399,7 +6470,7 @@ jest-changed-files@^27.5.1: jest-circus@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" + resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== dependencies: "@jest/environment" "^27.5.1" @@ -6424,7 +6495,7 @@ jest-circus@^27.5.1: jest-cli@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== dependencies: "@jest/core" "^27.5.1" @@ -6442,7 +6513,7 @@ jest-cli@^27.5.1: jest-config@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== dependencies: "@babel/core" "^7.8.0" @@ -6472,7 +6543,7 @@ jest-config@^27.5.1: jest-diff@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== dependencies: chalk "^4.0.0" @@ -6482,14 +6553,14 @@ jest-diff@^27.5.1: jest-docblock@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== dependencies: detect-newline "^3.0.0" jest-each@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== dependencies: "@jest/types" "^27.5.1" @@ -6500,7 +6571,7 @@ jest-each@^27.5.1: jest-environment-jsdom@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== dependencies: "@jest/environment" "^27.5.1" @@ -6513,7 +6584,7 @@ jest-environment-jsdom@^27.5.1: jest-environment-node@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== dependencies: "@jest/environment" "^27.5.1" @@ -6525,12 +6596,12 @@ jest-environment-node@^27.5.1: jest-get-type@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== jest-haste-map@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== dependencies: "@jest/types" "^27.5.1" @@ -6550,7 +6621,7 @@ jest-haste-map@^27.5.1: jest-jasmine2@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== dependencies: "@jest/environment" "^27.5.1" @@ -6573,7 +6644,7 @@ jest-jasmine2@^27.5.1: jest-leak-detector@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== dependencies: jest-get-type "^27.5.1" @@ -6581,7 +6652,7 @@ jest-leak-detector@^27.5.1: jest-matcher-utils@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== dependencies: chalk "^4.0.0" @@ -6591,7 +6662,7 @@ jest-matcher-utils@^27.5.1: jest-message-util@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== dependencies: "@babel/code-frame" "^7.12.13" @@ -6606,25 +6677,25 @@ jest-message-util@^27.5.1: jest-mock@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== dependencies: "@jest/types" "^27.5.1" "@types/node" "*" jest-pnp-resolver@^1.2.2: - version "1.2.2" - resolved "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" - integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + version "1.2.3" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== jest-regex-util@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== jest-resolve-dependencies@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== dependencies: "@jest/types" "^27.5.1" @@ -6633,7 +6704,7 @@ jest-resolve-dependencies@^27.5.1: jest-resolve@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== dependencies: "@jest/types" "^27.5.1" @@ -6649,7 +6720,7 @@ jest-resolve@^27.5.1: jest-runner@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== dependencies: "@jest/console" "^27.5.1" @@ -6676,7 +6747,7 @@ jest-runner@^27.5.1: jest-runtime@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== dependencies: "@jest/environment" "^27.5.1" @@ -6704,7 +6775,7 @@ jest-runtime@^27.5.1: jest-serializer@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== dependencies: "@types/node" "*" @@ -6712,7 +6783,7 @@ jest-serializer@^27.5.1: jest-snapshot@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== dependencies: "@babel/core" "^7.7.2" @@ -6740,7 +6811,7 @@ jest-snapshot@^27.5.1: jest-util@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== dependencies: "@jest/types" "^27.5.1" @@ -6752,7 +6823,7 @@ jest-util@^27.5.1: jest-validate@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== dependencies: "@jest/types" "^27.5.1" @@ -6764,7 +6835,7 @@ jest-validate@^27.5.1: jest-watcher@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== dependencies: "@jest/test-result" "^27.5.1" @@ -6777,7 +6848,7 @@ jest-watcher@^27.5.1: jest-worker@^26.5.0: version "26.6.2" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== dependencies: "@types/node" "*" @@ -6786,7 +6857,7 @@ jest-worker@^26.5.0: jest-worker@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== dependencies: "@types/node" "*" @@ -6795,7 +6866,7 @@ jest-worker@^27.5.1: jest@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" + resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== dependencies: "@jest/core" "^27.5.1" @@ -6804,61 +6875,66 @@ jest@^27.5.1: jimp-compact@^0.16.1: version "0.16.1" - resolved "https://registry.npmjs.org/jimp-compact/-/jimp-compact-0.16.2.tgz#650bf90698eb7af797e20bf5f5cdccd137e7d08a" + resolved "https://registry.yarnpkg.com/jimp-compact/-/jimp-compact-0.16.2.tgz#650bf90698eb7af797e20bf5f5cdccd137e7d08a" integrity sha512-F/r0L283J46xiGUEvUb3jxUsei7aB94g3NRIMuJ4WhbpEcJV2U5GpaUNJLnBiOP2+x4lLTI4UiRVrmbrXQAOMA== -jiti@^1.9.2: - version "1.13.0" - resolved "https://registry.npmjs.org/jiti/-/jiti-1.13.0.tgz#3cdfc4e651ca0cca4c62ed5e47747b5841d41a8e" - integrity sha512-/n9mNxZj/HDSrincJ6RP+L+yXbpnB8FybySBa+IjIaoH9FIxBbrbRT5XUbe8R7zuVM2AQqNMNDDqz0bzx3znOQ== +jiti@^1.21.0: + version "1.21.0" + resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.0.tgz#7c97f8fe045724e136a397f7340475244156105d" + integrity sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q== -js-base64@^2.4.3: +js-base64@^2.4.9: version "2.6.4" - resolved "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz#f4e686c5de1ea1f867dbcad3d46d969428df98c4" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.6.4.tgz#f4e686c5de1ea1f867dbcad3d46d969428df98c4" integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ== js-beautify@^1.6.12, js-beautify@^1.6.14: - version "1.11.0" - resolved "https://registry.npm.taobao.org/js-beautify/download/js-beautify-1.11.0.tgz#afb873dc47d58986360093dcb69951e8bcd5ded2" - integrity sha1-r7hz3EfViYY2AJPctplR6LzV3tI= + version "1.15.1" + resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.15.1.tgz#4695afb508c324e1084ee0b952a102023fc65b64" + integrity sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA== dependencies: - config-chain "^1.1.12" - editorconfig "^0.15.3" - glob "^7.1.3" - mkdirp "~1.0.3" - nopt "^4.0.3" + config-chain "^1.1.13" + editorconfig "^1.0.4" + glob "^10.3.3" + js-cookie "^3.0.5" + nopt "^7.2.0" -js-cookie@^3.0.0: - version "3.0.1" - resolved "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.1.tgz#9e39b4c6c2f56563708d7d31f6f5f21873a92414" - integrity sha512-+0rgsUXZu4ncpPxRL+lNEptWMOWl9etvPHc/koSRp6MPwpRYAhmk0dUG00J4bxVV3r9uUzfo24wW0knS07SKSw== +js-cookie@^3.0.0, js-cookie@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-3.0.5.tgz#0b7e2fd0c01552c58ba86e0841f94dc2557dcdbc" + integrity sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw== "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/js-tokens/download/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" - integrity sha1-GSA/tZmR35jjoocFDUZHzerzJJk= + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== js-tokens@^3.0.2: version "3.0.2" - resolved "https://registry.npm.taobao.org/js-tokens/download/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" - integrity sha1-mGbfOVECEw449/mWvOtlRDIJwls= + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + integrity sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg== js-yaml@^3.13.1: - version "3.14.0" - resolved "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.14.0.tgz?cache=0&sync_timestamp=1590172281856&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-yaml%2Fdownload%2Fjs-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" - integrity sha1-p6NBcPJqIbsWJCTYray0ETpp5II= + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== dependencies: argparse "^1.0.7" esprima "^4.0.0" +jsbn@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" + integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== + jsbn@~0.1.0: version "0.1.1" - resolved "https://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== jsdom@^16.6.0: version "16.7.0" - resolved "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== dependencies: abab "^2.0.5" @@ -6891,23 +6967,18 @@ jsdom@^16.6.0: jsesc@^2.5.1: version "2.5.2" - resolved "https://registry.npm.taobao.org/jsesc/download/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" - integrity sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q= + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== jsesc@~0.5.0: version "0.5.0" - resolved "https://registry.npm.taobao.org/jsesc/download/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" - integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= - -json-buffer@3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/json-buffer/download/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" - integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" - integrity sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk= + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== json-parse-even-better-errors@^2.3.0: version "2.3.1" @@ -6919,144 +6990,130 @@ json-schema-traverse@^0.4.1: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== -json-schema@0.2.3: - version "0.2.3" - resolved "https://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" - integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== json-stringify-safe@~5.0.1: version "5.0.1" - resolved "https://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" - integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== json5@^0.5.1: version "0.5.1" - resolved "https://registry.npm.taobao.org/json5/download/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" - integrity sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE= + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + integrity sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw== json5@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" - integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + version "1.0.2" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.2.tgz#63d98d60f21b313b77c4d6da18bfa69d80e1d593" + integrity sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA== dependencies: minimist "^1.2.0" -json5@^2.1.1, json5@^2.1.2: - version "2.1.3" - resolved "https://registry.npm.taobao.org/json5/download/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" - integrity sha1-ybD3+pIzv+WAf+ZvzzpWF+1ZfUM= - dependencies: - minimist "^1.2.5" +json5@^2.1.1, json5@^2.1.2, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== optionalDependencies: graceful-fs "^4.1.6" jsonfile@^6.0.1: - version "6.0.1" - resolved "https://registry.npm.taobao.org/jsonfile/download/jsonfile-6.0.1.tgz#98966cba214378c8c84b82e085907b40bf614179" - integrity sha1-mJZsuiFDeMjIS4LghZB7QL9hQXk= + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== dependencies: - universalify "^1.0.0" + universalify "^2.0.0" optionalDependencies: graceful-fs "^4.1.6" jsprim@^1.2.2: - version "1.4.1" - resolved "https://registry.npm.taobao.org/jsprim/download/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" - integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + version "1.4.2" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.2.tgz#712c65533a15c878ba59e9ed5f0e26d5b77c5feb" + integrity sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw== dependencies: assert-plus "1.0.0" extsprintf "1.3.0" - json-schema "0.2.3" + json-schema "0.4.0" verror "1.10.0" -keyv@^3.0.0: - version "3.1.0" - resolved "https://registry.npm.taobao.org/keyv/download/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" - integrity sha1-7MIoSG9pmR5J6UdkhaW+Ho/FxNk= - dependencies: - json-buffer "3.0.0" - kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: version "3.2.2" - resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz?cache=0&sync_timestamp=1579194040958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkind-of%2Fdownload%2Fkind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== dependencies: is-buffer "^1.1.5" kind-of@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz?cache=0&sync_timestamp=1579194040958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkind-of%2Fdownload%2Fkind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== dependencies: is-buffer "^1.1.5" -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz?cache=0&sync_timestamp=1579194040958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkind-of%2Fdownload%2Fkind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha1-cpyR4thXt6QZofmqZWhcTDP1hF0= - -kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: +kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" - resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-6.0.3.tgz?cache=0&sync_timestamp=1579194040958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkind-of%2Fdownload%2Fkind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" - integrity sha1-B8BQNKbDSfoG4k+jWqdttFgM5N0= + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== kleur@^3.0.3: version "3.0.3" - resolved "https://registry.npm.taobao.org/kleur/download/kleur-3.0.3.tgz?cache=0&sync_timestamp=1593039498585&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkleur%2Fdownload%2Fkleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha1-p5yezIbuHOP6YgbRIWxQHxR/wH4= + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== klona@^2.0.4: - version "2.0.5" - resolved "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" - integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== + version "2.0.6" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" + integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== last-call-webpack-plugin@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/last-call-webpack-plugin/download/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" - integrity sha1-l0LfDhDjz0blwDgcLekNOnotdVU= + resolved "https://registry.yarnpkg.com/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz#9742df0e10e3cf46e5c0381c2de90d3a7a2d7555" + integrity sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w== dependencies: lodash "^4.17.5" webpack-sources "^1.1.0" -latest-version@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz#119dfe908fe38d15dfa43ecd13fa12ec8832face" - integrity sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA== - dependencies: - package-json "^6.3.0" - -launch-editor-middleware@^2.2.1: - version "2.2.1" - resolved "https://registry.npm.taobao.org/launch-editor-middleware/download/launch-editor-middleware-2.2.1.tgz#e14b07e6c7154b0a4b86a0fd345784e45804c157" - integrity sha1-4UsH5scVSwpLhqD9NFeE5FgEwVc= +launch-editor-middleware@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/launch-editor-middleware/-/launch-editor-middleware-2.6.1.tgz#7f2f400d8dda2283b69d02e9d83b1d272fef2bfb" + integrity sha512-Fg/xYhf7ARmRp40n18wIfJyuAMEjXo67Yull7uF7d0OJ3qA4EYJISt1XfPPn69IIJ5jKgQwzcg6DqHYo95LL/g== dependencies: - launch-editor "^2.2.1" + launch-editor "^2.6.1" -launch-editor@^2.2.1: - version "2.2.1" - resolved "https://registry.npm.taobao.org/launch-editor/download/launch-editor-2.2.1.tgz#871b5a3ee39d6680fcc26d37930b6eeda89db0ca" - integrity sha1-hxtaPuOdZoD8wm03kwtu7aidsMo= +launch-editor@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.6.1.tgz#f259c9ef95cbc9425620bbbd14b468fcdb4ffe3c" + integrity sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw== dependencies: - chalk "^2.3.0" - shell-quote "^1.6.1" + picocolors "^1.0.0" + shell-quote "^1.8.1" leven@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/leven/download/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha1-d4kd6DQGTMy6gq54QrtrFKE+1/I= + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.npm.taobao.org/levn/download/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" +lilconfig@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" + integrity sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== + +lilconfig@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.1.tgz#9d8a246fa753106cfc205fd2d77042faca56e5e3" + integrity sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ== lines-and-columns@^1.1.6: version "1.2.4" @@ -7065,13 +7122,13 @@ lines-and-columns@^1.1.6: loader-runner@^2.4.0: version "2.4.0" - resolved "https://registry.npm.taobao.org/loader-runner/download/loader-runner-2.4.0.tgz?cache=0&sync_timestamp=1593786162882&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Floader-runner%2Fdownload%2Floader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" - integrity sha1-7UcGa/5TTX6ExMe5mYwqdWB9k1c= + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" + integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== loader-runner@^4.1.0: - version "4.2.0" - resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" - integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== + version "4.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" + integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3: version "1.4.2" @@ -7082,10 +7139,10 @@ loader-utils@^1.0.2, loader-utils@^1.1.0, loader-utils@^1.2.3: emojis-list "^3.0.0" json5 "^1.0.1" -loader-utils@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz#e4cace5b816d425a166b5f097e10cd12b36064b0" - integrity sha1-5MrOW4FtQloWa18JfhDNErNgZLA= +loader-utils@^2.0.0, loader-utils@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c" + integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw== dependencies: big.js "^5.2.2" emojis-list "^3.0.0" @@ -7093,110 +7150,100 @@ loader-utils@^2.0.0: locate-path@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4= + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== dependencies: p-locate "^3.0.0" path-exists "^3.0.0" locate-path@^5.0.0: version "5.0.0" - resolved "https://registry.npm.taobao.org/locate-path/download/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" - integrity sha1-Gvujlq/WdqbUJQTQpno6frn2KqA= + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== dependencies: p-locate "^4.1.0" lodash._reinterpolate@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/lodash._reinterpolate/download/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" - integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + integrity sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA== lodash.debounce@^4.0.8: version "4.0.8" - resolved "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" - integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== lodash.kebabcase@^4.1.1: version "4.1.1" - resolved "https://registry.npm.taobao.org/lodash.kebabcase/download/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" - integrity sha1-hImxyw0p/4gZXM7KRI/21swpXDY= + resolved "https://registry.yarnpkg.com/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz#8489b1cb0d29ff88195cceca448ff6d6cc295c36" + integrity sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g== lodash.memoize@^4.1.2: version "4.1.2" - resolved "https://registry.npm.taobao.org/lodash.memoize/download/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" - integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== lodash.merge@^4.6.2: version "4.6.2" - resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== lodash.template@^4.5.0: version "4.5.0" - resolved "https://registry.npm.taobao.org/lodash.template/download/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" - integrity sha1-+XYZXPPzR9DV9SSDVp/oAxzM6Ks= + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== dependencies: lodash._reinterpolate "^3.0.0" lodash.templatesettings "^4.0.0" lodash.templatesettings@^4.0.0: version "4.2.0" - resolved "https://registry.npm.taobao.org/lodash.templatesettings/download/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" - integrity sha1-5IExDwSdPPbUfpEq0JMTsVTw+zM= + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== dependencies: lodash._reinterpolate "^3.0.0" lodash.uniq@^4.5.0: version "4.5.0" - resolved "https://registry.npm.taobao.org/lodash.uniq/download/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" - integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.7.0, lodash@~4.17.10: +lodash@^4.15.0, lodash@^4.17.11, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== loose-envify@^1.0.0: version "1.4.0" - resolved "https://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8= + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" lower-case@^1.1.1: version "1.1.4" - resolved "https://registry.npm.taobao.org/lower-case/download/lower-case-1.1.4.tgz?cache=0&sync_timestamp=1575601555695&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flower-case%2Fdownload%2Flower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" - integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + integrity sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA== -lower-case@^2.0.1: - version "2.0.1" - resolved "https://registry.npm.taobao.org/lower-case/download/lower-case-2.0.1.tgz?cache=0&sync_timestamp=1575601555695&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flower-case%2Fdownload%2Flower-case-2.0.1.tgz#39eeb36e396115cc05e29422eaea9e692c9408c7" - integrity sha1-Oe6zbjlhFcwF4pQi6uqeaSyUCMc= +lower-case@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" + integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== dependencies: - tslib "^1.10.0" - -lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/lowercase-keys/download/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" - integrity sha1-b54wtHCE2XGnyCD/FabFFnt0wm8= - -lowercase-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/lowercase-keys/download/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" - integrity sha1-JgPni3tLAAbLyi+8yKMgJVislHk= + tslib "^2.0.3" -lru-cache@^4.1.2, lru-cache@^4.1.5: +lru-cache@^4.1.2: version "4.1.5" - resolved "https://registry.npm.taobao.org/lru-cache/download/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha1-i75Q6oW+1ZvJ4z3KuCNe6bz0Q80= + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== dependencies: pseudomap "^1.0.2" yallist "^2.1.2" lru-cache@^5.1.1: version "5.1.1" - resolved "https://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" - integrity sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA= + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== dependencies: yallist "^3.0.2" @@ -7207,31 +7254,43 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +"lru-cache@^9.1.1 || ^10.0.0": + version "10.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" + integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== + make-dir@^1.0.0: version "1.3.0" - resolved "https://registry.npm.taobao.org/make-dir/download/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha1-ecEDO4BRW9bSTsmTPoYMp17ifww= + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== dependencies: pify "^3.0.0" make-dir@^2.0.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" - integrity sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU= + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== dependencies: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: +make-dir@^3.0.2, make-dir@^3.1.0, make-dir@~3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/make-dir/download/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" - integrity sha1-QV6WcEazp/HRhSd9hKpYIDcmoT8= + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" +make-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== + dependencies: + semver "^7.5.3" + make-fetch-happen@^9.1.0: version "9.1.0" - resolved "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== dependencies: agentkeepalive "^4.1.3" @@ -7251,29 +7310,22 @@ make-fetch-happen@^9.1.0: socks-proxy-agent "^6.0.0" ssri "^8.0.0" -makeerror@1.0.x: - version "1.0.11" - resolved "https://registry.npm.taobao.org/makeerror/download/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" - integrity sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw= - dependencies: - tmpl "1.0.x" - -map-age-cleaner@^0.1.3: - version "0.1.3" - resolved "https://registry.npm.taobao.org/map-age-cleaner/download/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" - integrity sha1-fVg6cwZDTAVf5HSw9FB45uG0uSo= +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: - p-defer "^1.0.0" + tmpl "1.0.5" map-cache@^0.2.2: version "0.2.2" - resolved "https://registry.npm.taobao.org/map-cache/download/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== map-obj@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/map-obj/download/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" - integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== map-obj@^4.0.0: version "4.3.0" @@ -7282,62 +7334,66 @@ map-obj@^4.0.0: map-visit@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== dependencies: object-visit "^1.0.0" +markdown-table@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" + integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== + dependencies: + repeat-string "^1.0.0" + material-design-icons-iconfont@^6.5.0: - version "6.5.0" - resolved "https://registry.npmjs.org/material-design-icons-iconfont/-/material-design-icons-iconfont-6.5.0.tgz#1e19c88da085aefd9464e526be1a3b52e9daf601" - integrity sha512-ImxSGnW7o5InRxgpL1UUuTPkBsgjzdQ8m7YBe5SdLfyjfcbIYVSHNHzBablNEVuliRdM8efa6mqiFtt8BQyMwA== + version "6.7.0" + resolved "https://registry.yarnpkg.com/material-design-icons-iconfont/-/material-design-icons-iconfont-6.7.0.tgz#55cf0f3d7e4c76e032855b7e810b6e30535eff3c" + integrity sha512-lSj71DgVv20kO0kGbs42icDzbRot61gEDBLQACzkUuznRQBUYmbxzEkGU6dNBb5fRWHMaScYlAXX96HQ4/cJWA== md5.js@^1.3.4: version "1.3.5" - resolved "https://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" - integrity sha1-tdB7jjIW4+J81yjXL3DR5qNCAF8= + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" + integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== dependencies: hash-base "^3.0.0" inherits "^2.0.1" safe-buffer "^5.1.2" -mdn-data@2.0.4: - version "2.0.4" - resolved "https://registry.npm.taobao.org/mdn-data/download/mdn-data-2.0.4.tgz?cache=0&sync_timestamp=1593508849116&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" - integrity sha1-aZs8OKxvHXKAkaZGULZdOIUC/Vs= +mdn-data@2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" + integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== -mdn-data@2.0.6: - version "2.0.6" - resolved "https://registry.npm.taobao.org/mdn-data/download/mdn-data-2.0.6.tgz?cache=0&sync_timestamp=1593508849116&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmdn-data%2Fdownload%2Fmdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978" - integrity sha1-hS3GD8ql2qLoz2yRicRA7T4EKXg= +mdn-data@2.0.28: + version "2.0.28" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba" + integrity sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g== -mem@^8.1.1: - version "8.1.1" - resolved "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz#cf118b357c65ab7b7e0817bdf00c8062297c0122" - integrity sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA== - dependencies: - map-age-cleaner "^0.1.3" - mimic-fn "^3.1.0" +mdn-data@2.0.30: + version "2.0.30" + resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc" + integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA== -memfs@^3.2.2: - version "3.4.1" - resolved "https://registry.npmjs.org/memfs/-/memfs-3.4.1.tgz#b78092f466a0dce054d63d39275b24c71d3f1305" - integrity sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw== +memfs@^3.4.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6" + integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ== dependencies: - fs-monkey "1.0.3" + fs-monkey "^1.0.4" memory-fs@^0.4.1: version "0.4.1" - resolved "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" - integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + integrity sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ== dependencies: errno "^0.1.3" readable-stream "^2.0.1" memory-fs@^0.5.0: version "0.5.0" - resolved "https://registry.npm.taobao.org/memory-fs/download/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" - integrity sha1-MkwBKIuIZSlm0WHbd4OHIIRajjw= + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" + integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== dependencies: errno "^0.1.3" readable-stream "^2.0.1" @@ -7362,25 +7418,25 @@ meow@^9.0.0: merge-source-map@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/merge-source-map/download/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" - integrity sha1-L93n5gIJOfcJBqaPLXrmheTIxkY= + resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" + integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== dependencies: source-map "^0.6.1" merge-stream@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/merge-stream/download/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" - integrity sha1-UoI2KaFN0AyXcPtq1H3GMQ8sH2A= + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== merge2@^1.3.0, merge2@^1.4.1: version "1.4.1" - resolved "https://registry.npm.taobao.org/merge2/download/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" - integrity sha1-Q2iJL4hekHRVpv19xVwMnUBJkK4= + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== micromatch@^3.1.10, micromatch@^3.1.4: version "3.1.10" - resolved "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha1-cIWbyVyYQJUvNZoGij/En57PrCM= + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== dependencies: arr-diff "^4.0.0" array-unique "^0.3.2" @@ -7396,17 +7452,9 @@ micromatch@^3.1.10, micromatch@^3.1.4: snapdragon "^0.8.1" to-regex "^3.0.2" -micromatch@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/micromatch/download/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" - integrity sha1-T8sJmb+fvC/L3SEvbWKbmlbDklk= - dependencies: - braces "^3.0.1" - picomatch "^2.0.5" - -micromatch@^4.0.4: +micromatch@^4.0.2, micromatch@^4.0.4: version "4.0.5" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== dependencies: braces "^3.0.2" @@ -7414,60 +7462,38 @@ micromatch@^4.0.4: miller-rabin@^4.0.0: version "4.0.1" - resolved "https://registry.npm.taobao.org/miller-rabin/download/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" - integrity sha1-8IA1HIZbDcViqEYpZtqlNUPHik0= + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== dependencies: bn.js "^4.0.0" brorand "^1.0.1" -mime-db@1.44.0, "mime-db@>= 1.43.0 < 2": - version "1.44.0" - resolved "https://registry.npm.taobao.org/mime-db/download/mime-db-1.44.0.tgz#fa11c5eb0aca1334b4233cb4d52f10c5a6272f92" - integrity sha1-+hHF6wrKEzS0Izy01S8QxaYnL5I= - -mime-db@1.52.0: +mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@^2.1.19, mime-types@~2.1.19, mime-types@~2.1.24: - version "2.1.27" - resolved "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.27.tgz#47949f98e279ea53119f5722e0f34e529bec009f" - integrity sha1-R5SfmOJ56lMRn1ci4PNOUpvsAJ8= - dependencies: - mime-db "1.44.0" - -mime-types@^2.1.27, mime-types@^2.1.30: +mime-types@^2.1.12, mime-types@^2.1.19, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.19, mime-types@~2.1.34: version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" mime@1.6.0: version "1.6.0" - resolved "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE= + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@^2.3.1: - version "2.4.6" - resolved "https://registry.npm.taobao.org/mime/download/mime-2.4.6.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1" - integrity sha1-5bQHyQ20QvK+tbFiNz0Htpr/pNE= +mime@~2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.5.2.tgz#6e3dc6cc2b9510643830e5f19d5cb753da5eeabe" + integrity sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg== mimic-fn@^2.1.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" - integrity sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs= - -mimic-fn@^3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz#65755145bbf3e36954b949c16450427451d5ca74" - integrity sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ== - -mimic-response@^1.0.0, mimic-response@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/mimic-response/download/mimic-response-1.0.1.tgz?cache=0&sync_timestamp=1589481629775&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmimic-response%2Fdownload%2Fmimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" - integrity sha1-SSNTiHju9CBjy4o+OweYeBSHqxs= + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== min-indent@^1.0.0: version "1.0.1" @@ -7482,9 +7508,37 @@ minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: minimalistic-crypto-utils@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.1.tgz#8a555f541cf976c622daf078bb28f29fb927c253" + integrity sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimatch@^9.0.1: + version "9.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.3.tgz#a6e00c3de44c3a542bfaae70abfc22420a6da825" + integrity sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg== + dependencies: + brace-expansion "^2.0.1" -minimatch@^3.0.4, minimatch@~3.0.2: +minimatch@~3.0.2, minimatch@~3.0.4: version "3.0.8" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.8.tgz#5e6a59bd11e2ab0de1cfb843eb2d82e546c321c1" integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q== @@ -7500,26 +7554,21 @@ minimist-options@4.1.0: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.2.0: - version "1.2.7" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz#daa1c4d91f507390437c6a8bc01078e7000c4d18" - integrity sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g== - -minimist@^1.2.5: - version "1.2.6" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" - integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== +minimist@^1.2.0, minimist@^1.2.6, minimist@^1.2.8: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== minipass-collect@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/minipass-collect/download/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha1-IrgTv3Rdxu26JXa5QAIq1u3Ixhc= + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== dependencies: minipass "^3.0.0" minipass-fetch@^1.3.2: version "1.4.1" - resolved "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== dependencies: minipass "^3.1.0" @@ -7530,45 +7579,41 @@ minipass-fetch@^1.3.2: minipass-flush@^1.0.5: version "1.0.5" - resolved "https://registry.npm.taobao.org/minipass-flush/download/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" - integrity sha1-gucTXX6JpQ/+ZGEKeHlTxMTLs3M= + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== dependencies: minipass "^3.0.0" -minipass-pipeline@^1.2.2: - version "1.2.3" - resolved "https://registry.npm.taobao.org/minipass-pipeline/download/minipass-pipeline-1.2.3.tgz#55f7839307d74859d6e8ada9c3ebe72cec216a34" - integrity sha1-VfeDkwfXSFnW6K2pw+vnLOwhajQ= - dependencies: - minipass "^3.0.0" - -minipass-pipeline@^1.2.4: +minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: version "1.2.4" - resolved "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" minipass-sized@^1.0.3: version "1.0.3" - resolved "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== dependencies: minipass "^3.0.0" -minipass@^3.0.0, minipass@^3.1.1: - version "3.1.3" - resolved "https://registry.npm.taobao.org/minipass/download/minipass-3.1.3.tgz?cache=0&sync_timestamp=1589332639319&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminipass%2Fdownload%2Fminipass-3.1.3.tgz#7d42ff1f39635482e15f9cdb53184deebd5815fd" - integrity sha1-fUL/HzljVILhX5zbUxhN7r1YFf0= +minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: + version "3.3.6" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" + integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== dependencies: yallist "^4.0.0" -minipass@^3.1.0, minipass@^3.1.3: - version "3.1.6" - resolved "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz#3b8150aa688a711a1521af5e8779c1d3bb4f45ee" - integrity sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ== - dependencies: - yallist "^4.0.0" +minipass@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" + integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== + +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0": + version "7.0.4" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" + integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== minizlib@^2.0.0, minizlib@^2.1.1: version "2.1.2" @@ -7580,8 +7625,8 @@ minizlib@^2.0.0, minizlib@^2.1.1: mississippi@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/mississippi/download/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" - integrity sha1-6goykfl+C16HdrNj1fChLZTGcCI= + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== dependencies: concat-stream "^1.5.0" duplexify "^3.4.2" @@ -7596,28 +7641,28 @@ mississippi@^3.0.0: mixin-deep@^1.2.0: version "1.3.2" - resolved "https://registry.npm.taobao.org/mixin-deep/download/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha1-ESC0PcNZp4Xc5ltVuC4lfM9HlWY= + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== dependencies: for-in "^1.0.2" is-extendable "^1.0.1" -mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@~0.5.1: - version "0.5.5" - resolved "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.5.tgz?cache=0&sync_timestamp=1587535418745&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" - integrity sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8= +mkdirp@^0.5.1, mkdirp@^0.5.3: + version "0.5.6" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" + integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== dependencies: - minimist "^1.2.5" + minimist "^1.2.6" -mkdirp@^1.0.3, mkdirp@^1.0.4, mkdirp@~1.0.3: +mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" - resolved "https://registry.npm.taobao.org/mkdirp/download/mkdirp-1.0.4.tgz?cache=0&sync_timestamp=1587535418745&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha1-PrXtYmInVteaXw4qIh3+utdcL34= + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== move-concurrently@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" - integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + integrity sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ== dependencies: aproba "^1.1.1" copy-concurrently "^1.0.0" @@ -7626,55 +7671,50 @@ move-concurrently@^1.0.1: rimraf "^2.5.4" run-queue "^1.0.3" -mrmime@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/mrmime/-/mrmime-1.0.0.tgz#14d387f0585a5233d291baba339b063752a2398b" - integrity sha512-a70zx7zFfVO7XpnQ2IX1Myh9yY4UYvfld/dikWRnsXxbyvMcfz+u6UfgNAtH+k2QqtJuzVpv6eLTx1G2+WKZbQ== +mrmime@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.0.tgz#151082a6e06e59a9a39b46b3e14d5cfe92b3abb4" + integrity sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw== ms@2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" - integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= - -ms@2.1.1: - version "2.1.1" - resolved "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" - integrity sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo= + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== -ms@2.1.2, ms@^2.1.1: +ms@2.1.2: version "2.1.2" - resolved "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk= + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.0.0: +ms@2.1.3, ms@^2.0.0, ms@^2.1.1: version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== mustache@^2.3.0: version "2.3.2" - resolved "https://registry.npm.taobao.org/mustache/download/mustache-2.3.2.tgz#a6d4d9c3f91d13359ab889a812954f9230a3d0c5" - integrity sha1-ptTZw/kdEzWauImoEpVPkjCj0MU= + resolved "https://registry.yarnpkg.com/mustache/-/mustache-2.3.2.tgz#a6d4d9c3f91d13359ab889a812954f9230a3d0c5" + integrity sha512-KpMNwdQsYz3O/SBS1qJ/o3sqUJ5wSb8gb0pul8CO0S56b9Y2ALm8zCfsjPXsqGFfoNBkDwZuZIAjhsZI03gYVQ== mute-stream@0.0.8: version "0.0.8" - resolved "https://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" - integrity sha1-FjDEKyJR/4HiooPelqVJfqkuXg0= + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== nan@^2.12.1, nan@^2.13.2: - version "2.14.1" - resolved "https://registry.npm.taobao.org/nan/download/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" - integrity sha1-174036MQW5FJTDFHCJMV7/iHSwE= + version "2.18.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.18.0.tgz#26a6faae7ffbeb293a39660e88a76b82e30b7554" + integrity sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w== -nanoid@^3.1.23: - version "3.3.2" - resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557" - integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA== +nanoid@^3.1.23, nanoid@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8" + integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g== nanomatch@^1.2.9: version "1.2.13" - resolved "https://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk= + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== dependencies: arr-diff "^4.0.0" array-unique "^0.3.2" @@ -7690,67 +7730,62 @@ nanomatch@^1.2.9: natural-compare@^1.4.0: version "1.4.0" - resolved "https://registry.npm.taobao.org/natural-compare/download/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" - integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== -negotiator@0.6.2: - version "0.6.2" - resolved "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz?cache=0&sync_timestamp=1589682752355&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnegotiator%2Fdownload%2Fnegotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" - integrity sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs= - -negotiator@^0.6.2: +negotiator@0.6.3, negotiator@^0.6.2: version "0.6.3" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== -neo-async@^2.5.0, neo-async@^2.6.1: - version "2.6.1" - resolved "https://registry.npm.taobao.org/neo-async/download/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" - integrity sha1-rCetpmFn+ohJpq3dg39rGJrSCBw= - -neo-async@^2.6.2: +neo-async@^2.5.0, neo-async@^2.6.1, neo-async@^2.6.2: version "2.6.2" - resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== no-case@^2.2.0: version "2.3.2" - resolved "https://registry.npm.taobao.org/no-case/download/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" - integrity sha1-YLgTOWvjmz8SiKTB7V0efSi0ZKw= + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" + integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== dependencies: lower-case "^1.1.1" -no-case@^3.0.3: - version "3.0.3" - resolved "https://registry.npm.taobao.org/no-case/download/no-case-3.0.3.tgz#c21b434c1ffe48b39087e86cfb4d2582e9df18f8" - integrity sha1-whtDTB/+SLOQh+hs+00lgunfGPg= +no-case@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" + integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== dependencies: - lower-case "^2.0.1" - tslib "^1.10.0" + lower-case "^2.0.2" + tslib "^2.0.3" node-addon-api@^1.7.1: version "1.7.2" - resolved "https://registry.npm.taobao.org/node-addon-api/download/node-addon-api-1.7.2.tgz?cache=0&sync_timestamp=1593613596883&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-addon-api%2Fdownload%2Fnode-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" - integrity sha1-PfMLlXILU8JOWZSLSVMrZiRE9U0= + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-1.7.2.tgz#3df30b95720b53c24e59948b49532b662444f54d" + integrity sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg== node-cache@^4.1.1: version "4.2.1" - resolved "https://registry.npm.taobao.org/node-cache/download/node-cache-4.2.1.tgz?cache=0&sync_timestamp=1593618983028&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-cache%2Fdownload%2Fnode-cache-4.2.1.tgz#efd8474dee4edec4138cdded580f5516500f7334" - integrity sha1-79hHTe5O3sQTjN3tWA9VFlAPczQ= + resolved "https://registry.yarnpkg.com/node-cache/-/node-cache-4.2.1.tgz#efd8474dee4edec4138cdded580f5516500f7334" + integrity sha512-BOb67bWg2dTyax5kdef5WfU3X8xu4wPg+zHzkvls0Q/QpYycIFRLEEIdAx9Wma43DxG6Qzn4illdZoYseKWa4A== dependencies: clone "2.x" lodash "^4.17.15" +node-fetch-native@^1.4.1, node-fetch-native@^1.6.1: + version "1.6.2" + resolved "https://registry.yarnpkg.com/node-fetch-native/-/node-fetch-native-1.6.2.tgz#f439000d972eb0c8a741b65dcda412322955e1c6" + integrity sha512-69mtXOFZ6hSkYiXAVB5SqaRvrbITC/NPyqv7yuu/qw0nmgPyYbIMYYNIDhNtwPrzk0ptrimrLz/hhjvm4w5Z+w== + node-fetch@^2.6.1: - version "2.6.7" - resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad" - integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== + version "2.7.0" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== dependencies: whatwg-url "^5.0.0" node-gyp@^8.4.1: version "8.4.1" - resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz#3d49308fc31f768180957d6b5746845fbd429937" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-8.4.1.tgz#3d49308fc31f768180957d6b5746845fbd429937" integrity sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w== dependencies: env-paths "^2.2.0" @@ -7764,23 +7799,23 @@ node-gyp@^8.4.1: tar "^6.1.2" which "^2.0.2" -node-html-parser@^3.2.0: - version "3.3.6" - resolved "https://registry.npmjs.org/node-html-parser/-/node-html-parser-3.3.6.tgz#fdbb3ba16d1252d7197ec39f0260d9c10ef33590" - integrity sha512-VkWDHvNgFGB3mbQGMyzqRE1i/BG7TKX9wRXC8e/v8kL0kZR/Oy6RjYxXH91K6/+m3g8iQ8dTqRy75lTYoA2Cjg== +node-html-parser@^6.1.12: + version "6.1.12" + resolved "https://registry.yarnpkg.com/node-html-parser/-/node-html-parser-6.1.12.tgz#6138f805d0ad7a6b5ef415bcd91bca07374bf575" + integrity sha512-/bT/Ncmv+fbMGX96XG9g05vFt43m/+SYKIs9oAemQVYyVcZmDAI2Xq/SbNcpOA35eF0Zk2av3Ksf+Xk8Vt8abA== dependencies: - css-select "^4.1.3" + css-select "^5.1.0" he "1.2.0" node-int64@^0.4.0: version "0.4.0" - resolved "https://registry.npm.taobao.org/node-int64/download/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== node-libs-browser@^2.2.1: version "2.2.1" - resolved "https://registry.npm.taobao.org/node-libs-browser/download/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" - integrity sha1-tk9RPRgzhiX5A0bSew0jXmMfZCU= + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" + integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== dependencies: assert "^1.1.1" browserify-zlib "^0.2.0" @@ -7808,23 +7843,18 @@ node-libs-browser@^2.2.1: node-object-hash@^1.2.0: version "1.4.2" - resolved "https://registry.npm.taobao.org/node-object-hash/download/node-object-hash-1.4.2.tgz#385833d85b229902b75826224f6077be969a9e94" - integrity sha1-OFgz2FsimQK3WCYiT2B3vpaanpQ= + resolved "https://registry.yarnpkg.com/node-object-hash/-/node-object-hash-1.4.2.tgz#385833d85b229902b75826224f6077be969a9e94" + integrity sha512-UdS4swXs85fCGWWf6t6DMGgpN/vnlKeSGEQ7hJcrs7PBFoxoKLmibc3QRb7fwiYsjdL7PX8iI/TMSlZ90dgHhQ== -node-releases@^1.1.71: - version "1.1.72" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.72.tgz#14802ab6b1039a79a0c7d662b610a5bbd76eacbe" - integrity sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw== - -node-releases@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz#7139fe71e2f4f11b47d4d2986aaf8c48699e0c01" - integrity sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg== +node-releases@^2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== node-res@^5.0.1: version "5.0.1" - resolved "https://registry.npm.taobao.org/node-res/download/node-res-5.0.1.tgz#ffaa462e206509d66d0ba28a4daf1f032daa6460" - integrity sha1-/6pGLiBlCdZtC6KKTa8fAy2qZGA= + resolved "https://registry.yarnpkg.com/node-res/-/node-res-5.0.1.tgz#ffaa462e206509d66d0ba28a4daf1f032daa6460" + integrity sha512-YOleO9c7MAqoHC+Ccu2vzvV1fL6Ku49gShq3PIMKWHRgrMSih3XcwL05NbLBi6oU2J471gTBfdpVVxwT6Pfhxg== dependencies: destroy "^1.0.4" etag "^1.8.1" @@ -7833,9 +7863,9 @@ node-res@^5.0.1: vary "^1.1.2" node-sass@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/node-sass/-/node-sass-7.0.1.tgz#ad4f6bc663de8acc0a9360db39165a1e2620aa72" - integrity sha512-uMy+Xt29NlqKCFdFRZyXKOTqGt+QaKHexv9STj2WeLottnlqZEEWx6Bj0MXNthmFRRdM/YwyNo/8Tr46TOM0jQ== + version "7.0.3" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-7.0.3.tgz#7620bcd5559c2bf125c4fbb9087ba75cd2df2ab2" + integrity sha512-8MIlsY/4dXUkJDYht9pIWBhMil3uHmE8b/AdJPjmFn1nBx9X9BASzfzmsCy0uCCb8eqI3SYYzVPDswWqSx7gjw== dependencies: async-foreach "^0.1.3" chalk "^4.1.2" @@ -7849,33 +7879,25 @@ node-sass@^7.0.1: node-gyp "^8.4.1" npmlog "^5.0.0" request "^2.88.0" - sass-graph "4.0.0" + sass-graph "^4.0.1" stdout-stream "^1.4.0" "true-case-path" "^1.0.2" nodemon@^2.0.15: - version "2.0.15" - resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.15.tgz#504516ce3b43d9dc9a955ccd9ec57550a31a8d4e" - integrity sha512-gdHMNx47Gw7b3kWxJV64NI+Q5nfl0y5DgDbiVtShiwa7Z0IZ07Ll4RLFo6AjrhzMtoEZn5PDE3/c2AbVsiCkpA== + version "2.0.22" + resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.22.tgz#182c45c3a78da486f673d6c1702e00728daf5258" + integrity sha512-B8YqaKMmyuCO7BowF1Z1/mkPqLk6cs/l63Ojtd6otKjMx47Dq1utxfRxcavH1I7VSaL8n5BUaoutadnsX3AAVQ== dependencies: chokidar "^3.5.2" debug "^3.2.7" ignore-by-default "^1.0.1" - minimatch "^3.0.4" + minimatch "^3.1.2" pstree.remy "^1.1.8" semver "^5.7.1" + simple-update-notifier "^1.0.7" supports-color "^5.5.0" touch "^3.1.0" undefsafe "^2.0.5" - update-notifier "^5.1.0" - -nopt@^4.0.3: - version "4.0.3" - resolved "https://registry.npm.taobao.org/nopt/download/nopt-4.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnopt%2Fdownload%2Fnopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" - integrity sha1-o3XK2dAv2SEnjZVMIlTVqlfhXkg= - dependencies: - abbrev "1" - osenv "^0.1.4" nopt@^5.0.0: version "5.0.0" @@ -7884,17 +7906,24 @@ nopt@^5.0.0: dependencies: abbrev "1" +nopt@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-7.2.0.tgz#067378c68116f602f552876194fd11f1292503d7" + integrity sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA== + dependencies: + abbrev "^2.0.0" + nopt@~1.0.10: version "1.0.10" - resolved "https://registry.npm.taobao.org/nopt/download/nopt-1.0.10.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnopt%2Fdownload%2Fnopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" - integrity sha1-bd0hvSoxQXuScn3Vhfim83YI6+4= + resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" + integrity sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg== dependencies: abbrev "1" normalize-package-data@^2.5.0: version "2.5.0" - resolved "https://registry.npm.taobao.org/normalize-package-data/download/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" - integrity sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg= + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== dependencies: hosted-git-info "^2.1.4" resolve "^1.10.0" @@ -7913,44 +7942,39 @@ normalize-package-data@^3.0.0: normalize-path@^2.1.1: version "2.1.1" - resolved "https://registry.npm.taobao.org/normalize-path/download/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" - integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== dependencies: remove-trailing-separator "^1.0.1" normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" - integrity sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU= + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== normalize-range@^0.1.2: version "0.1.2" - resolved "https://registry.npm.taobao.org/normalize-range/download/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== normalize-url@1.9.1: version "1.9.1" - resolved "https://registry.npm.taobao.org/normalize-url/download/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" - integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + integrity sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ== dependencies: object-assign "^4.0.1" prepend-http "^1.0.0" query-string "^4.1.0" sort-keys "^1.0.0" -normalize-url@^3.0.0, normalize-url@^3.3.0: - version "3.3.0" - resolved "https://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" - integrity sha1-suHE3E98bVd0PfczpPWXjRhlBVk= - -normalize-url@^4.1.0: - version "4.5.0" - resolved "https://registry.npm.taobao.org/normalize-url/download/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129" - integrity sha1-RTNUCH5sqWlXvY9br3U/WYIUISk= +normalize-url@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== npm-run-path@^4.0.1: version "4.0.1" - resolved "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== dependencies: path-key "^3.0.0" @@ -7966,37 +7990,25 @@ npmlog@^5.0.0: set-blocking "^2.0.0" npmlog@^6.0.0: - version "6.0.1" - resolved "https://registry.npmjs.org/npmlog/-/npmlog-6.0.1.tgz#06f1344a174c06e8de9c6c70834cfba2964bba17" - integrity sha512-BTHDvY6nrRHuRfyjt1MAufLxYdVXZfd099H4+i1f0lPywNQyI4foeNXJRObB/uy+TYqUW0vAD9gbdSOXPst7Eg== + version "6.0.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" + integrity sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg== dependencies: are-we-there-yet "^3.0.0" console-control-strings "^1.1.0" - gauge "^4.0.0" + gauge "^4.0.3" set-blocking "^2.0.0" -nth-check@^1.0.2, nth-check@~1.0.1: - version "1.0.2" - resolved "https://registry.npm.taobao.org/nth-check/download/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" - integrity sha1-sr0pXDfj3VijvwcAN2Zjuk2c8Fw= - dependencies: - boolbase "~1.0.0" - nth-check@^2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" - integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== + version "2.1.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d" + integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w== dependencies: boolbase "^1.0.0" -num2fraction@^1.2.2: - version "1.2.2" - resolved "https://registry.npm.taobao.org/num2fraction/download/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" - integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= - nuxt-i18n@^6.28.1: version "6.28.1" - resolved "https://registry.npmjs.org/nuxt-i18n/-/nuxt-i18n-6.28.1.tgz#63e3e809fa41d855c5c7c443c0074eecaa97d273" + resolved "https://registry.yarnpkg.com/nuxt-i18n/-/nuxt-i18n-6.28.1.tgz#63e3e809fa41d855c5c7c443c0074eecaa97d273" integrity sha512-JKRs8AmixVZ7k90Rrwq468McfnInP1ymuejYHRGA4VV0nZCLYsdDQXZxXl3JXaER9VatM9C24GM3ArAYFOtUhg== dependencies: "@babel/parser" "^7.14.9" @@ -8013,252 +8025,201 @@ nuxt-i18n@^6.28.1: vue-i18n "^8.25.0" nuxt@^2.15.8: - version "2.15.8" - resolved "https://registry.npmjs.org/nuxt/-/nuxt-2.15.8.tgz#946cba46bdaaf0e3918aa27fd9ea0fed8ed303b0" - integrity sha512-ceK3qLg/Baj7J8mK9bIxqw9AavrF+LXqwYEreBdY/a4Sj8YV4mIvhqea/6E7VTCNNGvKT2sJ/TTJjtfQ597lTA== - dependencies: - "@nuxt/babel-preset-app" "2.15.8" - "@nuxt/builder" "2.15.8" - "@nuxt/cli" "2.15.8" - "@nuxt/components" "^2.1.8" - "@nuxt/config" "2.15.8" - "@nuxt/core" "2.15.8" - "@nuxt/generator" "2.15.8" - "@nuxt/loading-screen" "^2.0.3" - "@nuxt/opencollective" "^0.3.2" - "@nuxt/server" "2.15.8" - "@nuxt/telemetry" "^1.3.3" - "@nuxt/utils" "2.15.8" - "@nuxt/vue-app" "2.15.8" - "@nuxt/vue-renderer" "2.15.8" - "@nuxt/webpack" "2.15.8" + version "2.17.3" + resolved "https://registry.yarnpkg.com/nuxt/-/nuxt-2.17.3.tgz#68e9bef3287f7f6fa58aed7e753c14167593f631" + integrity sha512-mQUy0J2DYYxHZvgBX8YvrrM8sKUhBqBxcQ0ePjy7cdyTaDAN8QeOLrizINm7NVPMrFGLYurhp5rbX3/qyQcKyg== + dependencies: + "@nuxt/babel-preset-app" "2.17.3" + "@nuxt/builder" "2.17.3" + "@nuxt/cli" "2.17.3" + "@nuxt/components" "^2.2.1" + "@nuxt/config" "2.17.3" + "@nuxt/core" "2.17.3" + "@nuxt/generator" "2.17.3" + "@nuxt/loading-screen" "^2.0.4" + "@nuxt/opencollective" "^0.4.0" + "@nuxt/server" "2.17.3" + "@nuxt/telemetry" "^1.5.0" + "@nuxt/utils" "2.17.3" + "@nuxt/vue-app" "2.17.3" + "@nuxt/vue-renderer" "2.17.3" + "@nuxt/webpack" "2.17.3" nwsapi@^2.2.0: - version "2.2.0" - resolved "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" - integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== + version "2.2.7" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.7.tgz#738e0707d3128cb750dddcfe90e4610482df0f30" + integrity sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ== oauth-sign@~0.9.0: version "0.9.0" - resolved "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" - integrity sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU= + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" - resolved "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== object-copy@^0.1.0: version "0.1.0" - resolved "https://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== dependencies: copy-descriptor "^0.1.0" define-property "^0.2.5" kind-of "^3.0.3" -object-inspect@^1.7.0: - version "1.8.0" - resolved "https://registry.npm.taobao.org/object-inspect/download/object-inspect-1.8.0.tgz?cache=0&sync_timestamp=1592545133086&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-inspect%2Fdownload%2Fobject-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" - integrity sha1-34B+Xs9TpgnMa/6T6sPMe+WzqdA= +object-inspect@^1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" + integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== -object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: +object-keys@^1.1.1: version "1.1.1" - resolved "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" - integrity sha1-HEfyct8nfzsdrwYWd9nILiMixg4= + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== object-visit@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== dependencies: isobject "^3.0.0" -object.assign@^4.1.0: - version "4.1.0" - resolved "https://registry.npm.taobao.org/object.assign/download/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" - integrity sha1-lovxEA15Vrs8oIbwBvhGs7xACNo= +object.assign@^4.1.4, object.assign@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.5.tgz#3a833f9ab7fdb80fc9e8d2300c803d216d8fdbb0" + integrity sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ== dependencies: - define-properties "^1.1.2" - function-bind "^1.1.1" - has-symbols "^1.0.0" - object-keys "^1.0.11" + call-bind "^1.0.5" + define-properties "^1.2.1" + has-symbols "^1.0.3" + object-keys "^1.1.1" -object.getownpropertydescriptors@^2.0.3, object.getownpropertydescriptors@^2.1.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" - integrity sha1-Npvx+VktiridcS3O1cuBx8U1Jkk= +object.getownpropertydescriptors@^2.0.3: + version "2.1.7" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz#7a466a356cd7da4ba8b9e94ff6d35c3eeab5d56a" + integrity sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g== dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" + array.prototype.reduce "^1.0.6" + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" + safe-array-concat "^1.0.0" object.pick@^1.3.0: version "1.3.0" - resolved "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== dependencies: isobject "^3.0.1" -object.values@^1.1.0: - version "1.1.1" - resolved "https://registry.npm.taobao.org/object.values/download/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" - integrity sha1-aKmezeNWt+kpWjxeDOMdyMlT3l4= +on-finished@2.4.1, on-finished@^2.3.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" + integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.0-next.1" - function-bind "^1.1.1" - has "^1.0.3" + ee-first "1.1.1" -on-finished@^2.3.0, on-finished@~2.3.0: +on-finished@~2.3.0: version "2.3.0" - resolved "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww== dependencies: ee-first "1.1.1" on-headers@^1.0.2, on-headers@~1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" - integrity sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8= + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" - resolved "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" - integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== dependencies: wrappy "1" -onetime@^5.1.0: - version "5.1.0" - resolved "https://registry.npm.taobao.org/onetime/download/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" - integrity sha1-//DzyRYX/mK7UBiWNumayKbfe+U= - dependencies: - mimic-fn "^2.1.0" - -onetime@^5.1.2: +onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" - resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== dependencies: mimic-fn "^2.1.0" opener@1.5.2, opener@^1.5.2: version "1.5.2" - resolved "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== -optimize-css-assets-webpack-plugin@^5.0.4: - version "5.0.8" - resolved "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.8.tgz#cbccdcf5a6ef61d4f8cc78cf083a67446e5f402a" - integrity sha512-mgFS1JdOtEGzD8l+EuISqL57cKO+We9GcoiQEmdCWRqqck+FGNmYJtx9qfAPzEz+lRrlThWMuGDaRkI/yWNx/Q== +optimize-css-assets-webpack-plugin@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-6.0.1.tgz#7719bceabba1f3891ec3ae04efb81a1cc99cd793" + integrity sha512-BshV2UZPfggZLdUfN3zFBbG4sl/DynUI+YCB6fRRDWaqO2OiWN8GPcp4Y0/fEV6B3k9Hzyk3czve3V/8B/SzKQ== dependencies: - cssnano "^4.1.10" + cssnano "^5.0.2" last-call-webpack-plugin "^3.0.0" - -optionator@^0.8.1: - version "0.8.3" - resolved "https://registry.npm.taobao.org/optionator/download/optionator-0.8.3.tgz?cache=0&sync_timestamp=1585966141328&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Foptionator%2Fdownload%2Foptionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha1-hPodA2/p08fiHZmIS2ARZ+yPtJU= - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" + postcss "^8.2.1" os-browserify@^0.3.0: version "0.3.0" - resolved "https://registry.npm.taobao.org/os-browserify/download/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" - integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= - -os-homedir@^1.0.0: - version "1.0.2" - resolved "https://registry.npm.taobao.org/os-homedir/download/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" - integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + integrity sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A== -os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: +os-tmpdir@~1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" - integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= - -osenv@^0.1.4: - version "0.1.5" - resolved "https://registry.npm.taobao.org/osenv/download/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" - integrity sha1-hc36+uso6Gd/QW4odZK18/SepBA= - dependencies: - os-homedir "^1.0.0" - os-tmpdir "^1.0.0" - -p-cancelable@^1.0.0: - version "1.1.0" - resolved "https://registry.npm.taobao.org/p-cancelable/download/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" - integrity sha1-0HjRWjr0CSIMiG8dmgyi5EGrJsw= - -p-defer@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/p-defer/download/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" - integrity sha1-n26xgvbJqozXQwBKfU+WsZaw+ww= + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" - resolved "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz?cache=0&sync_timestamp=1591460606987&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-limit%2Fdownload%2Fp-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" - integrity sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE= + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== dependencies: p-try "^2.0.0" p-limit@^3.0.2: version "3.1.0" - resolved "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== dependencies: yocto-queue "^0.1.0" p-locate@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ= + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== dependencies: p-limit "^2.0.0" p-locate@^4.1.0: version "4.1.0" - resolved "https://registry.npm.taobao.org/p-locate/download/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" - integrity sha1-o0KLtwiLOmApL2aRkni3wpetTwc= + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== dependencies: p-limit "^2.2.0" p-map@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== dependencies: aggregate-error "^3.0.0" p-try@^2.0.0: version "2.2.0" - resolved "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" - integrity sha1-yyhoVA4xPWHeWPr741zpAE1VQOY= - -package-json@^6.3.0: - version "6.5.0" - resolved "https://registry.npm.taobao.org/package-json/download/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" - integrity sha1-b+7ayjXnVyWHbQsOZJdGl/7RRbA= - dependencies: - got "^9.6.0" - registry-auth-token "^4.0.0" - registry-url "^5.0.0" - semver "^6.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== pako@~1.0.5: version "1.0.11" - resolved "https://registry.npm.taobao.org/pako/download/pako-1.0.11.tgz?cache=0&sync_timestamp=1580284192633&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpako%2Fdownload%2Fpako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" - integrity sha1-bJWZ00DVTf05RjgCUqNXBaa5kr8= + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== parallel-transform@^1.1.0: version "1.2.0" - resolved "https://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" - integrity sha1-kEnKN9bLIYLDsdLHIL6U0UpYFPw= + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" + integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== dependencies: cyclist "^1.0.1" inherits "^2.0.3" @@ -8266,50 +8227,56 @@ parallel-transform@^1.1.0: param-case@^2.1.1: version "2.1.1" - resolved "https://registry.npm.taobao.org/param-case/download/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" - integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + integrity sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w== dependencies: no-case "^2.2.0" param-case@^3.0.3: - version "3.0.3" - resolved "https://registry.npm.taobao.org/param-case/download/param-case-3.0.3.tgz#4be41f8399eff621c56eebb829a5e451d9801238" - integrity sha1-S+Qfg5nv9iHFbuu4KaXkUdmAEjg= + version "3.0.4" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" + integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== dependencies: - dot-case "^3.0.3" - tslib "^1.10.0" + dot-case "^3.0.4" + tslib "^2.0.3" -parse-asn1@^5.0.0, parse-asn1@^5.1.5: - version "5.1.5" - resolved "https://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.5.tgz#003271343da58dc94cace494faef3d2147ecea0e" - integrity sha1-ADJxND2ljclMrOSU+u89IUfs6g4= +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== dependencies: - asn1.js "^4.0.0" + callsites "^3.0.0" + +parse-asn1@^5.0.0, parse-asn1@^5.1.6: + version "5.1.6" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" + integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== + dependencies: + asn1.js "^5.2.0" browserify-aes "^1.0.0" - create-hash "^1.1.0" evp_bytestokey "^1.0.0" pbkdf2 "^3.0.3" safe-buffer "^5.1.1" parse-git-config@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/parse-git-config/download/parse-git-config-3.0.0.tgz#4a2de08c7b74a2555efa5ae94d40cd44302a6132" - integrity sha1-Si3gjHt0olVe+lrpTUDNRDAqYTI= + resolved "https://registry.yarnpkg.com/parse-git-config/-/parse-git-config-3.0.0.tgz#4a2de08c7b74a2555efa5ae94d40cd44302a6132" + integrity sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA== dependencies: git-config-path "^2.0.0" ini "^1.3.5" parse-json@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" - integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw== dependencies: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" parse-json@^5.0.0, parse-json@^5.2.0: version "5.2.0" - resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== dependencies: "@babel/code-frame" "^7.0.0" @@ -8317,91 +8284,95 @@ parse-json@^5.0.0, parse-json@^5.2.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" -parse-path@^4.0.0: - version "4.0.1" - resolved "https://registry.npm.taobao.org/parse-path/download/parse-path-4.0.1.tgz#0ec769704949778cb3b8eda5e994c32073a1adff" - integrity sha1-DsdpcElJd4yzuO2l6ZTDIHOhrf8= +parse-path@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-7.0.0.tgz#605a2d58d0a749c8594405d8cc3a2bf76d16099b" + integrity sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog== dependencies: - is-ssh "^1.3.0" - protocols "^1.4.0" + protocols "^2.0.0" -parse-url@^5.0.0: - version "5.0.1" - resolved "https://registry.npm.taobao.org/parse-url/download/parse-url-5.0.1.tgz#99c4084fc11be14141efa41b3d117a96fcb9527f" - integrity sha1-mcQIT8Eb4UFB76QbPRF6lvy5Un8= +parse-url@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-8.1.0.tgz#972e0827ed4b57fc85f0ea6b0d839f0d8a57a57d" + integrity sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w== dependencies: - is-ssh "^1.3.0" - normalize-url "^3.3.0" - parse-path "^4.0.0" - protocols "^1.4.0" + parse-path "^7.0.0" parse5@6.0.1: version "6.0.1" - resolved "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== parseurl@~1.3.3: version "1.3.3" - resolved "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" - integrity sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ= + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -pascal-case@^3.1.1: - version "3.1.1" - resolved "https://registry.npm.taobao.org/pascal-case/download/pascal-case-3.1.1.tgz#5ac1975133ed619281e88920973d2cd1f279de5f" - integrity sha1-WsGXUTPtYZKB6Ikglz0s0fJ53l8= +pascal-case@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" + integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== dependencies: - no-case "^3.0.3" - tslib "^1.10.0" + no-case "^3.0.4" + tslib "^2.0.3" pascalcase@^0.1.1: version "0.1.1" - resolved "https://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== path-browserify@0.0.1: version "0.0.1" - resolved "https://registry.npm.taobao.org/path-browserify/download/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" - integrity sha1-5sTd1+06onxoogzE5Q4aTug7vEo= + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" + integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== path-dirname@^1.0.0: version "1.0.2" - resolved "https://registry.npm.taobao.org/path-dirname/download/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" - integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q== path-exists@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== path-exists@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/path-exists/download/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" - integrity sha1-UTvb4tO5XXdi6METfvoZXGxhtbM= + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== path-is-absolute@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== path-key@^3.0.0, path-key@^3.1.0: version "3.1.1" - resolved "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz?cache=0&sync_timestamp=1574441404712&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpath-key%2Fdownload%2Fpath-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" - integrity sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U= + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== -path-parse@^1.0.6, path-parse@^1.0.7: +path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.10.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.10.1.tgz#9ba6bf5aa8500fe9fd67df4f0d9483b2b0bfc698" + integrity sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ== + dependencies: + lru-cache "^9.1.1 || ^10.0.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-type@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/path-type/download/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" - integrity sha1-hO0BwKe6OAr+CdkKjBgNzZ0DBDs= + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== pbkdf2@^3.0.3: - version "3.1.1" - resolved "https://registry.npm.taobao.org/pbkdf2/download/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" - integrity sha1-y4cksPramEWWhW0abrr9NYRlS5Q= + version "3.1.2" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075" + integrity sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA== dependencies: create-hash "^1.1.2" create-hmac "^1.1.4" @@ -8411,768 +8382,849 @@ pbkdf2@^3.0.3: performance-now@^2.1.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== + +picocolors@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" + integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA== picocolors@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: - version "2.2.2" - resolved "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpicomatch%2Fdownload%2Fpicomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" - integrity sha1-IfMz6ba46v8CRo9RRupAbTRfTa0= - -picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== pify@^2.3.0: version "2.3.0" - resolved "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== pify@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" - integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg== pify@^4.0.1: version "4.0.1" - resolved "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" - integrity sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE= + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== pify@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== pirates@^4.0.4: - version "4.0.5" - resolved "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" - integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== + version "4.0.6" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== pkg-dir@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM= + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== dependencies: find-up "^3.0.0" pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" - resolved "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" - integrity sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM= + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== dependencies: find-up "^4.0.0" -pnp-webpack-plugin@^1.6.4: +pnp-webpack-plugin@^1.7.0: version "1.7.0" - resolved "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.7.0.tgz#65741384f6d8056f36e2255a8d67ffc20866f5c9" + resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.7.0.tgz#65741384f6d8056f36e2255a8d67ffc20866f5c9" integrity sha512-2Rb3vm+EXble/sMXNSu6eoBx8e79gKqhNq9F5ZWW6ERNCTE/Q0wQNne5541tE5vKjfM8hpNCYL+LGc1YTfI0dg== dependencies: ts-pnp "^1.1.6" posix-character-classes@^0.1.0: version "0.1.1" - resolved "https://registry.npm.taobao.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== -postcss-attribute-case-insensitive@^4.0.1: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-attribute-case-insensitive/download/postcss-attribute-case-insensitive-4.0.2.tgz#d93e46b504589e94ac7277b0463226c68041a880" - integrity sha1-2T5GtQRYnpSscnewRjImxoBBqIA= - dependencies: - postcss "^7.0.2" - postcss-selector-parser "^6.0.2" +possible-typed-array-names@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz#89bb63c6fada2c3e90adc4a647beeeb39cc7bf8f" + integrity sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q== -postcss-calc@^7.0.1: - version "7.0.2" - resolved "https://registry.npm.taobao.org/postcss-calc/download/postcss-calc-7.0.2.tgz?cache=0&sync_timestamp=1582014221563&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-calc%2Fdownload%2Fpostcss-calc-7.0.2.tgz#504efcd008ca0273120568b0792b16cdcde8aac1" - integrity sha1-UE780AjKAnMSBWiweSsWzc3oqsE= +postcss-attribute-case-insensitive@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-6.0.3.tgz#d118023911a768dfccfc0b0147f5ff06d8485806" + integrity sha512-KHkmCILThWBRtg+Jn1owTnHPnFit4OkqS+eKiGEOPIGke54DCeYGJ6r0Fx/HjfE9M9kznApCLcU0DvnPchazMQ== dependencies: - postcss "^7.0.27" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.2" + postcss-selector-parser "^6.0.13" -postcss-color-functional-notation@^2.0.1: - version "2.0.1" - resolved "https://registry.npm.taobao.org/postcss-color-functional-notation/download/postcss-color-functional-notation-2.0.1.tgz#5efd37a88fbabeb00a2966d1e53d98ced93f74e0" - integrity sha1-Xv03qI+6vrAKKWbR5T2Yztk/dOA= +postcss-calc@^8.2.3: + version "8.2.4" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" + integrity sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + postcss-selector-parser "^6.0.9" + postcss-value-parser "^4.2.0" -postcss-color-gray@^5.0.0: - version "5.0.0" - resolved "https://registry.npm.taobao.org/postcss-color-gray/download/postcss-color-gray-5.0.0.tgz#532a31eb909f8da898ceffe296fdc1f864be8547" - integrity sha1-Uyox65CfjaiYzv/ilv3B+GS+hUc= +postcss-calc@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6" + integrity sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ== dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.5" - postcss-values-parser "^2.0.0" + postcss-selector-parser "^6.0.11" + postcss-value-parser "^4.2.0" -postcss-color-hex-alpha@^5.0.3: - version "5.0.3" - resolved "https://registry.npm.taobao.org/postcss-color-hex-alpha/download/postcss-color-hex-alpha-5.0.3.tgz#a8d9ca4c39d497c9661e374b9c51899ef0f87388" - integrity sha1-qNnKTDnUl8lmHjdLnFGJnvD4c4g= +postcss-clamp@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/postcss-clamp/-/postcss-clamp-4.1.0.tgz#7263e95abadd8c2ba1bd911b0b5a5c9c93e02363" + integrity sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow== dependencies: - postcss "^7.0.14" - postcss-values-parser "^2.0.1" + postcss-value-parser "^4.2.0" -postcss-color-mod-function@^3.0.3: - version "3.0.3" - resolved "https://registry.npm.taobao.org/postcss-color-mod-function/download/postcss-color-mod-function-3.0.3.tgz#816ba145ac11cc3cb6baa905a75a49f903e4d31d" - integrity sha1-gWuhRawRzDy2uqkFp1pJ+QPk0x0= +postcss-color-functional-notation@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-6.0.5.tgz#eca158e833b5655c5715c998e92aab9481124c18" + integrity sha512-aTFsIy89ftjyclwUHRwvz1IxucLzVrzmmcXmtbPWT9GdyYeaJEKeAwbaZzOZn7AQlXg4xfwgkYhKsofC4aLIwg== dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" -postcss-color-rebeccapurple@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-color-rebeccapurple/download/postcss-color-rebeccapurple-4.0.1.tgz?cache=0&sync_timestamp=1587821587752&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-color-rebeccapurple%2Fdownload%2Fpostcss-color-rebeccapurple-4.0.1.tgz#c7a89be872bb74e45b1e3022bfe5748823e6de77" - integrity sha1-x6ib6HK7dORbHjAiv+V0iCPm3nc= +postcss-color-hex-alpha@^9.0.4: + version "9.0.4" + resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-9.0.4.tgz#f455902fb222453b2eb9699dfa9fc17a9c056f1e" + integrity sha512-XQZm4q4fNFqVCYMGPiBjcqDhuG7Ey2xrl99AnDJMyr5eDASsAGalndVgHZF8i97VFNy1GQeZc4q2ydagGmhelQ== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" -postcss-colormin@^4.0.3: - version "4.0.3" - resolved "https://registry.npm.taobao.org/postcss-colormin/download/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" - integrity sha1-rgYLzpPteUrHEmTwgTLVUJVr04E= +postcss-color-rebeccapurple@^9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-9.0.3.tgz#63e14d9b9ab196e62e3491606a2b77a9531a6825" + integrity sha512-ruBqzEFDYHrcVq3FnW3XHgwRqVMrtEPLBtD7K2YmsLKVc2jbkxzzNEctJKsPCpDZ+LeMHLKRDoSShVefGc+CkQ== dependencies: - browserslist "^4.0.0" - color "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" -postcss-convert-values@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-convert-values/download/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" - integrity sha1-yjgT7U2g+BL51DcDWE5Enr4Ymn8= +postcss-colormin@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.1.tgz#86c27c26ed6ba00d96c79e08f3ffb418d1d1988f" + integrity sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ== dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + browserslist "^4.21.4" + caniuse-api "^3.0.0" + colord "^2.9.1" + postcss-value-parser "^4.2.0" -postcss-custom-media@^7.0.8: - version "7.0.8" - resolved "https://registry.npm.taobao.org/postcss-custom-media/download/postcss-custom-media-7.0.8.tgz#fffd13ffeffad73621be5f387076a28b00294e0c" - integrity sha1-//0T/+/61zYhvl84cHaiiwApTgw= +postcss-colormin@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-6.0.3.tgz#d33f444299e490e8b0914bd347ca8010983e935c" + integrity sha512-ECpkS+UZRyAtu/kjive2/1mihP+GNtgC8kcdU8ueWZi1ZVxMNnRziCLdhrWECJhEtSWijfX2Cl9XTTCK/hjGaA== dependencies: - postcss "^7.0.14" + browserslist "^4.23.0" + caniuse-api "^3.0.0" + colord "^2.9.3" + postcss-value-parser "^4.2.0" -postcss-custom-properties@^8.0.11: - version "8.0.11" - resolved "https://registry.npm.taobao.org/postcss-custom-properties/download/postcss-custom-properties-8.0.11.tgz#2d61772d6e92f22f5e0d52602df8fae46fa30d97" - integrity sha1-LWF3LW6S8i9eDVJgLfj65G+jDZc= +postcss-convert-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393" + integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA== + dependencies: + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" + +postcss-convert-values@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-6.0.4.tgz#1f4cc51197f0f8bd85d6b5df4206df470f3a3df0" + integrity sha512-YT2yrGzPXoQD3YeA2kBo/696qNwn7vI+15AOS2puXWEvSWqdCqlOyDWRy5GNnOc9ACRGOkuQ4ESQEqPJBWt/GA== + dependencies: + browserslist "^4.23.0" + postcss-value-parser "^4.2.0" + +postcss-custom-media@^10.0.3: + version "10.0.3" + resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-10.0.3.tgz#7131ee7f6e55cbb0423dcfca37c8946539f1b214" + integrity sha512-wfJ9nKpLn/Qy7LASKu0Rj9Iq2uMzlRt27P4FAE1889IKRMdYUgy8SqvdXfAOs7LJLQX9Fjm0mZ+TSFphD/mKwA== + dependencies: + "@csstools/cascade-layer-name-parser" "^1.0.8" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/media-query-list-parser" "^2.1.8" + +postcss-custom-properties@^13.3.5: + version "13.3.5" + resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-13.3.5.tgz#0083841407dbf93c833457ecffdf1a3d74a76d10" + integrity sha512-xHg8DTCMfN2nrqs2CQTF+0m5jgnzKL5zrW5Y05KF6xBRO0uDPxiplBm/xcr1o49SLbyJXkMuaRJKhRzkrquKnQ== + dependencies: + "@csstools/cascade-layer-name-parser" "^1.0.8" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" + +postcss-custom-selectors@^7.1.7: + version "7.1.7" + resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-7.1.7.tgz#66b7adb9a3470ba11860ad7847947c7fd29e985d" + integrity sha512-N19MpExaR+hYTXU59VO02xE42zLoAUYSVcupwkKlWWLteOb+sWCWHw5FhV7u7gVLTzaGULy7nZP3DNTHgOZAPA== + dependencies: + "@csstools/cascade-layer-name-parser" "^1.0.8" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + postcss-selector-parser "^6.0.13" + +postcss-dir-pseudo-class@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-8.0.1.tgz#b93755f52fb90215301b1d3ecb7c5e6416930a1e" + integrity sha512-uULohfWBBVoFiZXgsQA24JV6FdKIidQ+ZqxOouhWwdE+qJlALbkS5ScB43ZTjPK+xUZZhlaO/NjfCt5h4IKUfw== dependencies: - postcss "^7.0.17" - postcss-values-parser "^2.0.1" + postcss-selector-parser "^6.0.13" -postcss-custom-selectors@^5.1.2: +postcss-discard-comments@^5.1.2: version "5.1.2" - resolved "https://registry.npm.taobao.org/postcss-custom-selectors/download/postcss-custom-selectors-5.1.2.tgz#64858c6eb2ecff2fb41d0b28c9dd7b3db4de7fba" - integrity sha1-ZIWMbrLs/y+0HQsoyd17PbTef7o= + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz#8df5e81d2925af2780075840c1526f0660e53696" + integrity sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ== + +postcss-discard-comments@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-6.0.1.tgz#46176212bd9c3e5f48aa4b8b4868786726c41d36" + integrity sha512-f1KYNPtqYLUeZGCHQPKzzFtsHaRuECe6jLakf/RjSRqvF5XHLZnM2+fXLhb8Qh/HBFHs3M4cSLb1k3B899RYIg== + +postcss-discard-duplicates@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz#9eb4fe8456706a4eebd6d3b7b777d07bad03e848" + integrity sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw== + +postcss-discard-duplicates@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.2.tgz#11f389e6af55099b928dca34b10734360b34bc93" + integrity sha512-U2rsj4w6pAGROCCcD13LP2eBIi1whUsXs4kgE6xkIuGfkbxCBSKhkCTWyowFd66WdVlLv0uM1euJKIgmdmZObg== + +postcss-discard-empty@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz#e57762343ff7f503fe53fca553d18d7f0c369c6c" + integrity sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A== + +postcss-discard-empty@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-6.0.2.tgz#9c4ca61f949dede0f7a1dfe3959e1003d0454500" + integrity sha512-rj6pVC2dVCJrP0Y2RkYTQEbYaCf4HEm+R/2StQgJqGHxAa3+KcYslNQhcRqjLHtl/4wpzipJluaJLqBj6d5eDQ== + +postcss-discard-overridden@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz#7e8c5b53325747e9d90131bb88635282fb4a276e" + integrity sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw== + +postcss-discard-overridden@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-6.0.1.tgz#c63c559237758d74bc505452393a64dda9b19ef4" + integrity sha512-qs0ehZMMZpSESbRkw1+inkf51kak6OOzNRaoLd/U7Fatp0aN2HQ1rxGOrJvYcRAN9VpX8kUF13R2ofn8OlvFVA== + +postcss-double-position-gradients@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-5.0.4.tgz#294787043e5e6187b5489ee52950ecfb303f9ea9" + integrity sha512-xOH2QhazCPeYR+ziYaDcGlpo7Bpw8PVoggOFfU/xPkmBRUQH8MR2eWoPY1CZM93CB0WKs2mxq3ORo83QGIooLw== dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" -postcss-dir-pseudo-class@^5.0.0: +postcss-focus-visible@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-9.0.1.tgz#eede1032ce86b3bb2556d93ca5df63c68dfc2559" + integrity sha512-N2VQ5uPz3Z9ZcqI5tmeholn4d+1H14fKXszpjogZIrFbhaq0zNAtq8sAnw6VLiqGbL8YBzsnu7K9bBkTqaRimQ== + dependencies: + postcss-selector-parser "^6.0.13" + +postcss-focus-within@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-8.0.1.tgz#524af4c7eabae35cb1efa220a7903016fcc897fa" + integrity sha512-NFU3xcY/xwNaapVb+1uJ4n23XImoC86JNwkY/uduytSl2s9Ekc2EpzmRR63+ExitnW3Mab3Fba/wRPCT5oDILA== + dependencies: + postcss-selector-parser "^6.0.13" + +postcss-font-variant@^5.0.0: version "5.0.0" - resolved "https://registry.npm.taobao.org/postcss-dir-pseudo-class/download/postcss-dir-pseudo-class-5.0.0.tgz#6e3a4177d0edb3abcc85fdb6fbb1c26dabaeaba2" - integrity sha1-bjpBd9Dts6vMhf22+7HCbauuq6I= + resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66" + integrity sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA== + +postcss-gap-properties@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-5.0.1.tgz#887b64655f42370b43f0ab266cc6dbabf504d276" + integrity sha512-k2z9Cnngc24c0KF4MtMuDdToROYqGMMUQGcE6V0odwjHyOHtaDBlLeRBV70y9/vF7KIbShrTRZ70JjsI1BZyWw== + +postcss-image-set-function@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-6.0.3.tgz#84c5e32cc1085198f2cf4a786028dae8a2632bb2" + integrity sha512-i2bXrBYzfbRzFnm+pVuxVePSTCRiNmlfssGI4H0tJQvDue+yywXwUxe68VyzXs7cGtMaH6MCLY6IbCShrSroCw== dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" + "@csstools/utilities" "^1.0.0" + postcss-value-parser "^4.2.0" -postcss-discard-comments@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-discard-comments/download/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" - integrity sha1-H7q9LCRr/2qq15l7KwkY9NevQDM= +postcss-import-resolver@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz#95c61ac5489047bd93ff42a9cd405cfe9041e2c0" + integrity sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw== dependencies: - postcss "^7.0.0" + enhanced-resolve "^4.1.1" -postcss-discard-duplicates@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-discard-duplicates/download/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" - integrity sha1-P+EzzTyCKC5VD8myORdqkge3hOs= +postcss-import@^15.1.0: + version "15.1.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70" + integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew== dependencies: - postcss "^7.0.0" + postcss-value-parser "^4.0.0" + read-cache "^1.0.0" + resolve "^1.1.7" -postcss-discard-empty@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-discard-empty/download/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" - integrity sha1-yMlR6fc+2UKAGUWERKAq2Qu592U= +postcss-lab-function@^6.0.10: + version "6.0.10" + resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-6.0.10.tgz#efe1bbf9fa1f1034890a0ad078286bfbace11106" + integrity sha512-Csvw/CwwuwTojK2O3Ad0SvYKrfnAKy+uvT+1Fjk6igR+n8gHuJHIwdj1A2s46EZZojg3RkibdMBuv1vMvR6Sng== dependencies: - postcss "^7.0.0" + "@csstools/css-color-parser" "^1.5.2" + "@csstools/css-parser-algorithms" "^2.6.0" + "@csstools/css-tokenizer" "^2.2.3" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/utilities" "^1.0.0" -postcss-discard-overridden@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-discard-overridden/download/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" - integrity sha1-ZSrvipZybwKfXj4AFG7npOdV/1c= +postcss-loader@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-4.3.0.tgz#2c4de9657cd4f07af5ab42bd60a673004da1b8cc" + integrity sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q== dependencies: - postcss "^7.0.0" + cosmiconfig "^7.0.0" + klona "^2.0.4" + loader-utils "^2.0.0" + schema-utils "^3.0.0" + semver "^7.3.4" -postcss-double-position-gradients@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/postcss-double-position-gradients/download/postcss-double-position-gradients-1.0.0.tgz#fc927d52fddc896cb3a2812ebc5df147e110522e" - integrity sha1-/JJ9Uv3ciWyzooEuvF3xR+EQUi4= +postcss-logical@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-7.0.1.tgz#a3121f6510591b195321b16e65fbe13b1cfd3115" + integrity sha512-8GwUQZE0ri0K0HJHkDv87XOLC8DE0msc+HoWLeKdtjDZEwpZ5xuK3QdV6FhmHSQW40LPkg43QzvATRAI3LsRkg== dependencies: - postcss "^7.0.5" - postcss-values-parser "^2.0.0" + postcss-value-parser "^4.2.0" -postcss-env-function@^2.0.2: - version "2.0.2" - resolved "https://registry.npm.taobao.org/postcss-env-function/download/postcss-env-function-2.0.2.tgz?cache=0&sync_timestamp=1587906157986&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-env-function%2Fdownload%2Fpostcss-env-function-2.0.2.tgz#0f3e3d3c57f094a92c2baf4b6241f0b0da5365d7" - integrity sha1-Dz49PFfwlKksK69LYkHwsNpTZdc= +postcss-merge-longhand@^5.1.7: + version "5.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16" + integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + postcss-value-parser "^4.2.0" + stylehacks "^5.1.1" -postcss-focus-visible@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/postcss-focus-visible/download/postcss-focus-visible-4.0.0.tgz#477d107113ade6024b14128317ade2bd1e17046e" - integrity sha1-R30QcROt5gJLFBKDF63ivR4XBG4= +postcss-merge-longhand@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-6.0.3.tgz#862ec759face52b7b33e6a6ee72b1d7dbdee0268" + integrity sha512-kF/y3DU8CRt+SX3tP/aG+2gkZI2Z7OXDsPU7FgxIJmuyhQQ1EHceIYcsp/alvzCm2P4c37Sfdu8nNrHc+YeyLg== dependencies: - postcss "^7.0.2" + postcss-value-parser "^4.2.0" + stylehacks "^6.0.3" -postcss-focus-within@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/postcss-focus-within/download/postcss-focus-within-3.0.0.tgz?cache=0&sync_timestamp=1586785456116&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-focus-within%2Fdownload%2Fpostcss-focus-within-3.0.0.tgz#763b8788596cee9b874c999201cdde80659ef680" - integrity sha1-djuHiFls7puHTJmSAc3egGWe9oA= +postcss-merge-rules@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz#2f26fa5cacb75b1402e213789f6766ae5e40313c" + integrity sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g== dependencies: - postcss "^7.0.2" + browserslist "^4.21.4" + caniuse-api "^3.0.0" + cssnano-utils "^3.1.0" + postcss-selector-parser "^6.0.5" -postcss-font-variant@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/postcss-font-variant/download/postcss-font-variant-4.0.0.tgz#71dd3c6c10a0d846c5eda07803439617bbbabacc" - integrity sha1-cd08bBCg2EbF7aB4A0OWF7u6usw= +postcss-merge-rules@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-6.0.4.tgz#a4ac3ed63502428d846f8b71b2c880dba58c78f1" + integrity sha512-97iF3UJ5v8N1BWy38y+0l+Z8o5/9uGlEgtWic2PJPzoRrLB6Gxg8TVG93O0EK52jcLeMsywre26AUlX1YAYeHA== dependencies: - postcss "^7.0.2" + browserslist "^4.23.0" + caniuse-api "^3.0.0" + cssnano-utils "^4.0.1" + postcss-selector-parser "^6.0.15" -postcss-gap-properties@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/postcss-gap-properties/download/postcss-gap-properties-2.0.0.tgz#431c192ab3ed96a3c3d09f2ff615960f902c1715" - integrity sha1-QxwZKrPtlqPD0J8v9hWWD5AsFxU= +postcss-minify-font-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz#f1df0014a726083d260d3bd85d7385fb89d1f01b" + integrity sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA== dependencies: - postcss "^7.0.2" + postcss-value-parser "^4.2.0" -postcss-image-set-function@^3.0.1: - version "3.0.1" - resolved "https://registry.npm.taobao.org/postcss-image-set-function/download/postcss-image-set-function-3.0.1.tgz#28920a2f29945bed4c3198d7df6496d410d3f288" - integrity sha1-KJIKLymUW+1MMZjX32SW1BDT8og= +postcss-minify-font-values@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-6.0.2.tgz#fbaad399635ed9fd21078114b5c1109d43a714ed" + integrity sha512-IedzbVMoX0a7VZWjSYr5qJ6C37rws8kl8diPBeMZLJfWKkgXuMFY5R/OxPegn/q9tK9ztd0XRH3aR0u2t+A7uQ== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + postcss-value-parser "^4.2.0" -postcss-import-resolver@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/postcss-import-resolver/download/postcss-import-resolver-2.0.0.tgz#95c61ac5489047bd93ff42a9cd405cfe9041e2c0" - integrity sha1-lcYaxUiQR72T/0KpzUBc/pBB4sA= +postcss-minify-gradients@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz#f1fe1b4f498134a5068240c2f25d46fcd236ba2c" + integrity sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw== dependencies: - enhanced-resolve "^4.1.1" + colord "^2.9.1" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-import@^12.0.1: - version "12.0.1" - resolved "https://registry.npm.taobao.org/postcss-import/download/postcss-import-12.0.1.tgz#cf8c7ab0b5ccab5649024536e565f841928b7153" - integrity sha1-z4x6sLXMq1ZJAkU25WX4QZKLcVM= +postcss-minify-gradients@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-6.0.2.tgz#9efc9e3cf026ca2b4d33bce70a167b8416315868" + integrity sha512-vP5mF7iI6/5fcpv+rSfwWQekOE+8I1i7/7RjZPGuIjj6eUaZVeG4XZYZrroFuw1WQd51u2V32wyQFZ+oYdE7CA== dependencies: - postcss "^7.0.1" - postcss-value-parser "^3.2.3" - read-cache "^1.0.0" - resolve "^1.1.7" + colord "^2.9.3" + cssnano-utils "^4.0.1" + postcss-value-parser "^4.2.0" -postcss-initial@^3.0.0: - version "3.0.2" - resolved "https://registry.npm.taobao.org/postcss-initial/download/postcss-initial-3.0.2.tgz#f018563694b3c16ae8eaabe3c585ac6319637b2d" - integrity sha1-8BhWNpSzwWro6qvjxYWsYxljey0= +postcss-minify-params@^5.1.4: + version "5.1.4" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352" + integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw== dependencies: - lodash.template "^4.5.0" - postcss "^7.0.2" + browserslist "^4.21.4" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-lab-function@^2.0.1: - version "2.0.1" - resolved "https://registry.npm.taobao.org/postcss-lab-function/download/postcss-lab-function-2.0.1.tgz#bb51a6856cd12289ab4ae20db1e3821ef13d7d2e" - integrity sha1-u1GmhWzRIomrSuINseOCHvE9fS4= +postcss-minify-params@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-6.0.3.tgz#c7e10f924350ae4a3d9698e4d56cc2ec02d65689" + integrity sha512-j4S74d3AAeCK5eGdQndXSrkxusV2ekOxbXGnlnZthMyZBBvSDiU34CihTASbJxuVB3bugudmwolS7+Dgs5OyOQ== dependencies: - "@csstools/convert-colors" "^1.4.0" - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + browserslist "^4.23.0" + cssnano-utils "^4.0.1" + postcss-value-parser "^4.2.0" -postcss-load-config@^2.0.0: - version "2.1.0" - resolved "https://registry.npm.taobao.org/postcss-load-config/download/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" - integrity sha1-yE1pK3u3tB3c7ZTuYuirMbQXsAM= +postcss-minify-selectors@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz#d4e7e6b46147b8117ea9325a915a801d5fe656c6" + integrity sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg== dependencies: - cosmiconfig "^5.0.0" - import-cwd "^2.0.0" + postcss-selector-parser "^6.0.5" -postcss-loader@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/postcss-loader/download/postcss-loader-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-loader%2Fdownload%2Fpostcss-loader-3.0.0.tgz#6b97943e47c72d845fa9e03f273773d4e8dd6c2d" - integrity sha1-a5eUPkfHLYRfqeA/Jzdz1OjdbC0= +postcss-minify-selectors@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-6.0.2.tgz#62065b38d3453ddc6627ba50e4f4a2154b031aa0" + integrity sha512-0b+m+w7OAvZejPQdN2GjsXLv5o0jqYHX3aoV0e7RBKPCsB7TYG5KKWBFhGnB/iP3213Ts8c5H4wLPLMm7z28Sg== dependencies: - loader-utils "^1.1.0" - postcss "^7.0.0" - postcss-load-config "^2.0.0" - schema-utils "^1.0.0" + postcss-selector-parser "^6.0.15" -postcss-logical@^3.0.0: +postcss-modules-extract-imports@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/postcss-logical/download/postcss-logical-3.0.0.tgz#2495d0f8b82e9f262725f75f9401b34e7b45d5b5" - integrity sha1-JJXQ+LgunyYnJfdflAGzTntF1bU= - dependencies: - postcss "^7.0.2" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" + integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== -postcss-media-minmax@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/postcss-media-minmax/download/postcss-media-minmax-4.0.0.tgz#b75bb6cbc217c8ac49433e12f22048814a4f5ed5" - integrity sha1-t1u2y8IXyKxJQz4S8iBIgUpPXtU= +postcss-modules-local-by-default@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.4.tgz#7cbed92abd312b94aaea85b68226d3dec39a14e6" + integrity sha512-L4QzMnOdVwRm1Qb8m4x8jsZzKAaPAgrUF1r/hjDR2Xj7R+8Zsf97jAlSQzWtKx5YNiNGN8QxmPFIc/sh+RQl+Q== dependencies: - postcss "^7.0.2" + icss-utils "^5.0.0" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" -postcss-merge-longhand@^4.0.11: - version "4.0.11" - resolved "https://registry.npm.taobao.org/postcss-merge-longhand/download/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" - integrity sha1-YvSaE+Sg7gTnuY9CuxYGLKJUniQ= +postcss-modules-scope@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.1.1.tgz#32cfab55e84887c079a19bbb215e721d683ef134" + integrity sha512-uZgqzdTleelWjzJY+Fhti6F3C9iF1JR/dODLs/JDefozYcKTBCdD8BIl6nNPbTbcLnGrk56hzwZC2DaGNvYjzA== dependencies: - css-color-names "0.0.4" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - stylehacks "^4.0.0" + postcss-selector-parser "^6.0.4" -postcss-merge-rules@^4.0.3: - version "4.0.3" - resolved "https://registry.npm.taobao.org/postcss-merge-rules/download/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" - integrity sha1-NivqT/Wh+Y5AdacTxsslrv75plA= +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== dependencies: - browserslist "^4.0.0" - caniuse-api "^3.0.0" - cssnano-util-same-parent "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" - vendors "^1.0.0" + icss-utils "^5.0.0" -postcss-minify-font-values@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-minify-font-values/download/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" - integrity sha1-zUw0TM5HQ0P6xdgiBqssvLiv1aY= +postcss-nesting@^12.0.3: + version "12.0.4" + resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-12.0.4.tgz#593d577fd1fbbfbe0997a6c81dbff074b26c83a2" + integrity sha512-WuCe0KnP4vKjLZK8VNoUWKL8ZLOv/5jiM94mHcI3VszLropHwmjotdUyP/ObzqZpXuQKP2Jf9R12vIHKFSStKw== dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + "@csstools/selector-specificity" "^3.0.2" + postcss-selector-parser "^6.0.13" -postcss-minify-gradients@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-minify-gradients/download/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" - integrity sha1-k7KcL/UJnFNe7NpWxKpuZlpmNHE= - dependencies: - cssnano-util-get-arguments "^4.0.0" - is-color-stop "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" +postcss-normalize-charset@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz#9302de0b29094b52c259e9b2cf8dc0879879f0ed" + integrity sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg== -postcss-minify-params@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-minify-params/download/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" - integrity sha1-a5zvAwwR41Jh+V9hjJADbWgNuHQ= - dependencies: - alphanum-sort "^1.0.0" - browserslist "^4.0.0" - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - uniqs "^2.0.0" +postcss-normalize-charset@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-6.0.1.tgz#5f70e1eb8bbdbcfcbed060ef70f179e8fef57d0c" + integrity sha512-aW5LbMNRZ+oDV57PF9K+WI1Z8MPnF+A8qbajg/T8PP126YrGX1f9IQx21GI2OlGz7XFJi/fNi0GTbY948XJtXg== -postcss-minify-selectors@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-minify-selectors/download/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" - integrity sha1-4uXrQL/uUA0M2SQ1APX46kJi+9g= +postcss-normalize-display-values@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz#72abbae58081960e9edd7200fcf21ab8325c3da8" + integrity sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA== dependencies: - alphanum-sort "^1.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-modules-extract-imports@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/postcss-modules-extract-imports/download/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" - integrity sha1-gYcZoa4doyX5gyRGsBE27rSTzX4= +postcss-normalize-display-values@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.1.tgz#ff9aa30bbf1283294bfd9cc8b6fb81ff060a7f2d" + integrity sha512-mc3vxp2bEuCb4LgCcmG1y6lKJu1Co8T+rKHrcbShJwUmKJiEl761qb/QQCfFwlrvSeET3jksolCR/RZuMURudw== dependencies: - postcss "^7.0.5" + postcss-value-parser "^4.2.0" -postcss-modules-local-by-default@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" - integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== +postcss-normalize-positions@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz#ef97279d894087b59325b45c47f1e863daefbb92" + integrity sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg== dependencies: - icss-utils "^4.1.1" - postcss "^7.0.32" - postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.1.0" + postcss-value-parser "^4.2.0" -postcss-modules-scope@^2.2.0: - version "2.2.0" - resolved "https://registry.npm.taobao.org/postcss-modules-scope/download/postcss-modules-scope-2.2.0.tgz?cache=0&sync_timestamp=1584620714522&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-modules-scope%2Fdownload%2Fpostcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" - integrity sha1-OFyuATzHdD9afXYC0Qc6iequYu4= +postcss-normalize-positions@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-6.0.1.tgz#41ffdc72994f024c6cd6e91dbfb40ab9abe6fe90" + integrity sha512-HRsq8u/0unKNvm0cvwxcOUEcakFXqZ41fv3FOdPn916XFUrympjr+03oaLkuZENz3HE9RrQE9yU0Xv43ThWjQg== dependencies: - postcss "^7.0.6" - postcss-selector-parser "^6.0.0" + postcss-value-parser "^4.2.0" -postcss-modules-values@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/postcss-modules-values/download/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" - integrity sha1-W1AA1uuuKbQlUwG0o6VFdEI+fxA= +postcss-normalize-repeat-style@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz#e9eb96805204f4766df66fd09ed2e13545420fb2" + integrity sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g== dependencies: - icss-utils "^4.0.0" - postcss "^7.0.6" + postcss-value-parser "^4.2.0" -postcss-nesting@^7.0.0: - version "7.0.1" - resolved "https://registry.npm.taobao.org/postcss-nesting/download/postcss-nesting-7.0.1.tgz#b50ad7b7f0173e5b5e3880c3501344703e04c052" - integrity sha1-tQrXt/AXPlteOIDDUBNEcD4EwFI= +postcss-normalize-repeat-style@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.1.tgz#55dc54b6f80305b280a379899a6626e0a07b04a8" + integrity sha512-Gbb2nmCy6tTiA7Sh2MBs3fj9W8swonk6lw+dFFeQT68B0Pzwp1kvisJQkdV6rbbMSd9brMlS8I8ts52tAGWmGQ== dependencies: - postcss "^7.0.2" + postcss-value-parser "^4.2.0" -postcss-normalize-charset@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-normalize-charset/download/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" - integrity sha1-izWt067oOhNrBHHg1ZvlilAoXdQ= +postcss-normalize-string@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz#411961169e07308c82c1f8c55f3e8a337757e228" + integrity sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w== dependencies: - postcss "^7.0.0" + postcss-value-parser "^4.2.0" -postcss-normalize-display-values@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-normalize-display-values/download/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" - integrity sha1-Db4EpM6QY9RmftK+R2u4MMglk1o= +postcss-normalize-string@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-6.0.1.tgz#7605e0fb4ec7bf2709709991d13a949e4419db1d" + integrity sha512-5Fhx/+xzALJD9EI26Aq23hXwmv97Zfy2VFrt5PLT8lAhnBIZvmaT5pQk+NuJ/GWj/QWaKSKbnoKDGLbV6qnhXg== dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-normalize-positions@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-normalize-positions/download/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" - integrity sha1-BfdX+E8mBDc3g2ipH4ky1LECkX8= +postcss-normalize-timing-functions@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz#d5614410f8f0b2388e9f240aa6011ba6f52dafbb" + integrity sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg== dependencies: - cssnano-util-get-arguments "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-normalize-repeat-style@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-normalize-repeat-style/download/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" - integrity sha1-xOu8KJ85kaAo1EdRy90RkYsXkQw= +postcss-normalize-timing-functions@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.1.tgz#ef937b7ca2fd62ed0b46645ea5728b842a3600db" + integrity sha512-4zcczzHqmCU7L5dqTB9rzeqPWRMc0K2HoR+Bfl+FSMbqGBUcP5LRfgcH4BdRtLuzVQK1/FHdFoGT3F7rkEnY+g== dependencies: - cssnano-util-get-arguments "^4.0.0" - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-normalize-string@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-normalize-string/download/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" - integrity sha1-zUTECrB6DHo23F6Zqs4eyk7CaQw= +postcss-normalize-unicode@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz#f67297fca3fea7f17e0d2caa40769afc487aa030" + integrity sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA== dependencies: - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + browserslist "^4.21.4" + postcss-value-parser "^4.2.0" -postcss-normalize-timing-functions@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-normalize-timing-functions/download/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" - integrity sha1-jgCcoqOUnNr4rSPmtquZy159KNk= +postcss-normalize-unicode@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-6.0.3.tgz#86ca57e765d841ecc0c1c4f2a86182e728bbcf20" + integrity sha512-T2Bb3gXz0ASgc3ori2dzjv6j/P2IantreaC6fT8tWjqYUiqMAh5jGIkdPwEV2FaucjQlCLeFJDJh2BeSugE1ig== dependencies: - cssnano-util-get-match "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + browserslist "^4.23.0" + postcss-value-parser "^4.2.0" -postcss-normalize-unicode@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-normalize-unicode/download/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" - integrity sha1-hBvUj9zzAZrUuqdJOj02O1KuHPs= +postcss-normalize-url@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz#ed9d88ca82e21abef99f743457d3729a042adcdc" + integrity sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew== dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + normalize-url "^6.0.1" + postcss-value-parser "^4.2.0" -postcss-normalize-url@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-normalize-url/download/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" - integrity sha1-EOQ3+GvHx+WPe5ZS7YeNqqlfquE= +postcss-normalize-url@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-6.0.1.tgz#eae58cb4f5f9a4fa5bbbf6d4222dff534ad46186" + integrity sha512-jEXL15tXSvbjm0yzUV7FBiEXwhIa9H88JOXDGQzmcWoB4mSjZIsmtto066s2iW9FYuIrIF4k04HA2BKAOpbsaQ== dependencies: - is-absolute-url "^2.0.0" - normalize-url "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-normalize-whitespace@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-normalize-whitespace/download/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" - integrity sha1-vx1AcP5Pzqh9E0joJdjMDF+qfYI= +postcss-normalize-whitespace@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz#08a1a0d1ffa17a7cc6efe1e6c9da969cc4493cfa" + integrity sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA== dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-ordered-values@^4.1.2: - version "4.1.2" - resolved "https://registry.npm.taobao.org/postcss-ordered-values/download/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" - integrity sha1-DPdcgg7H1cTSgBiVWeC1ceusDu4= +postcss-normalize-whitespace@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.1.tgz#b5933750b938814c028d3d2b2e5c0199e0037b53" + integrity sha512-76i3NpWf6bB8UHlVuLRxG4zW2YykF9CTEcq/9LGAiz2qBuX5cBStadkk0jSkg9a9TCIXbMQz7yzrygKoCW9JuA== dependencies: - cssnano-util-get-arguments "^4.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + postcss-value-parser "^4.2.0" -postcss-overflow-shorthand@^2.0.0: +postcss-opacity-percentage@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/postcss-overflow-shorthand/download/postcss-overflow-shorthand-2.0.0.tgz#31ecf350e9c6f6ddc250a78f0c3e111f32dd4c30" - integrity sha1-MezzUOnG9t3CUKePDD4RHzLdTDA= - dependencies: - postcss "^7.0.2" + resolved "https://registry.yarnpkg.com/postcss-opacity-percentage/-/postcss-opacity-percentage-2.0.0.tgz#c0a56060cd4586e3f954dbde1efffc2deed53002" + integrity sha512-lyDrCOtntq5Y1JZpBFzIWm2wG9kbEdujpNt4NLannF+J9c8CgFIzPa80YQfdza+Y+yFfzbYj/rfoOsYsooUWTQ== -postcss-page-break@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/postcss-page-break/download/postcss-page-break-2.0.0.tgz#add52d0e0a528cabe6afee8b46e2abb277df46bf" - integrity sha1-rdUtDgpSjKvmr+6LRuKrsnffRr8= +postcss-ordered-values@^5.1.3: + version "5.1.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz#b6fd2bd10f937b23d86bc829c69e7732ce76ea38" + integrity sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ== dependencies: - postcss "^7.0.2" + cssnano-utils "^3.1.0" + postcss-value-parser "^4.2.0" -postcss-place@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-place/download/postcss-place-4.0.1.tgz#e9f39d33d2dc584e46ee1db45adb77ca9d1dcc62" - integrity sha1-6fOdM9LcWE5G7h20Wtt3yp0dzGI= +postcss-ordered-values@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-6.0.1.tgz#553e735d009065b362da93340e57f43d5f2d0fbc" + integrity sha512-XXbb1O/MW9HdEhnBxitZpPFbIvDgbo9NK4c/5bOfiKpnIGZDoL2xd7/e6jW5DYLsWxBbs+1nZEnVgnjnlFViaA== dependencies: - postcss "^7.0.2" - postcss-values-parser "^2.0.0" + cssnano-utils "^4.0.1" + postcss-value-parser "^4.2.0" -postcss-preset-env@^6.7.0: - version "6.7.0" - resolved "https://registry.npm.taobao.org/postcss-preset-env/download/postcss-preset-env-6.7.0.tgz?cache=0&sync_timestamp=1562662643428&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-preset-env%2Fdownload%2Fpostcss-preset-env-6.7.0.tgz#c34ddacf8f902383b35ad1e030f178f4cdf118a5" - integrity sha1-w03az4+QI4OzWtHgMPF49M3xGKU= - dependencies: - autoprefixer "^9.6.1" - browserslist "^4.6.4" - caniuse-lite "^1.0.30000981" - css-blank-pseudo "^0.1.4" - css-has-pseudo "^0.10.0" - css-prefers-color-scheme "^3.1.1" - cssdb "^4.4.0" - postcss "^7.0.17" - postcss-attribute-case-insensitive "^4.0.1" - postcss-color-functional-notation "^2.0.1" - postcss-color-gray "^5.0.0" - postcss-color-hex-alpha "^5.0.3" - postcss-color-mod-function "^3.0.3" - postcss-color-rebeccapurple "^4.0.1" - postcss-custom-media "^7.0.8" - postcss-custom-properties "^8.0.11" - postcss-custom-selectors "^5.1.2" - postcss-dir-pseudo-class "^5.0.0" - postcss-double-position-gradients "^1.0.0" - postcss-env-function "^2.0.2" - postcss-focus-visible "^4.0.0" - postcss-focus-within "^3.0.0" - postcss-font-variant "^4.0.0" - postcss-gap-properties "^2.0.0" - postcss-image-set-function "^3.0.1" - postcss-initial "^3.0.0" - postcss-lab-function "^2.0.1" - postcss-logical "^3.0.0" - postcss-media-minmax "^4.0.0" - postcss-nesting "^7.0.0" - postcss-overflow-shorthand "^2.0.0" - postcss-page-break "^2.0.0" - postcss-place "^4.0.1" - postcss-pseudo-class-any-link "^6.0.0" - postcss-replace-overflow-wrap "^3.0.0" - postcss-selector-matches "^4.0.0" - postcss-selector-not "^4.0.0" - -postcss-pseudo-class-any-link@^6.0.0: - version "6.0.0" - resolved "https://registry.npm.taobao.org/postcss-pseudo-class-any-link/download/postcss-pseudo-class-any-link-6.0.0.tgz#2ed3eed393b3702879dec4a87032b210daeb04d1" - integrity sha1-LtPu05OzcCh53sSocDKyENrrBNE= +postcss-overflow-shorthand@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-5.0.1.tgz#c0a124edad4f7ad88109275a60510e1fb07ab833" + integrity sha512-XzjBYKLd1t6vHsaokMV9URBt2EwC9a7nDhpQpjoPk2HRTSQfokPfyAS/Q7AOrzUu6q+vp/GnrDBGuj/FCaRqrQ== dependencies: - postcss "^7.0.2" - postcss-selector-parser "^5.0.0-rc.3" + postcss-value-parser "^4.2.0" -postcss-reduce-initial@^4.0.3: - version "4.0.3" - resolved "https://registry.npm.taobao.org/postcss-reduce-initial/download/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" - integrity sha1-f9QuvqXpyBRgljniwuhK4nC6SN8= +postcss-page-break@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f" + integrity sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ== + +postcss-place@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-9.0.1.tgz#c08c46a94e639c1ee3457ac96d50c50a89bd6ac3" + integrity sha512-JfL+paQOgRQRMoYFc2f73pGuG/Aw3tt4vYMR6UA3cWVMxivviPTnMFnFTczUJOA4K2Zga6xgQVE+PcLs64WC8Q== + dependencies: + postcss-value-parser "^4.2.0" + +postcss-preset-env@^9.3.0: + version "9.4.0" + resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-9.4.0.tgz#9896efc0e9896d68316adcf2d314d36f38f04bba" + integrity sha512-5X2UA4Dn4xo7sJFCxlzW/dAGo71Oxh/K5DVls33hd2e3j06OKnW5FJQTw2hB0wTnGv0f6WcMaVBGFqcEfAgwlw== + dependencies: + "@csstools/postcss-cascade-layers" "^4.0.3" + "@csstools/postcss-color-function" "^3.0.10" + "@csstools/postcss-color-mix-function" "^2.0.10" + "@csstools/postcss-exponential-functions" "^1.0.4" + "@csstools/postcss-font-format-keywords" "^3.0.2" + "@csstools/postcss-gamut-mapping" "^1.0.3" + "@csstools/postcss-gradients-interpolation-method" "^4.0.10" + "@csstools/postcss-hwb-function" "^3.0.9" + "@csstools/postcss-ic-unit" "^3.0.4" + "@csstools/postcss-initial" "^1.0.1" + "@csstools/postcss-is-pseudo-class" "^4.0.5" + "@csstools/postcss-light-dark-function" "^1.0.0" + "@csstools/postcss-logical-float-and-clear" "^2.0.1" + "@csstools/postcss-logical-overflow" "^1.0.1" + "@csstools/postcss-logical-overscroll-behavior" "^1.0.1" + "@csstools/postcss-logical-resize" "^2.0.1" + "@csstools/postcss-logical-viewport-units" "^2.0.6" + "@csstools/postcss-media-minmax" "^1.1.3" + "@csstools/postcss-media-queries-aspect-ratio-number-values" "^2.0.6" + "@csstools/postcss-nested-calc" "^3.0.2" + "@csstools/postcss-normalize-display-values" "^3.0.2" + "@csstools/postcss-oklab-function" "^3.0.10" + "@csstools/postcss-progressive-custom-properties" "^3.1.0" + "@csstools/postcss-relative-color-syntax" "^2.0.10" + "@csstools/postcss-scope-pseudo-class" "^3.0.1" + "@csstools/postcss-stepped-value-functions" "^3.0.5" + "@csstools/postcss-text-decoration-shorthand" "^3.0.4" + "@csstools/postcss-trigonometric-functions" "^3.0.5" + "@csstools/postcss-unset-value" "^3.0.1" + autoprefixer "^10.4.17" + browserslist "^4.22.3" + css-blank-pseudo "^6.0.1" + css-has-pseudo "^6.0.2" + css-prefers-color-scheme "^9.0.1" + cssdb "^7.11.0" + postcss-attribute-case-insensitive "^6.0.3" + postcss-clamp "^4.1.0" + postcss-color-functional-notation "^6.0.5" + postcss-color-hex-alpha "^9.0.4" + postcss-color-rebeccapurple "^9.0.3" + postcss-custom-media "^10.0.3" + postcss-custom-properties "^13.3.5" + postcss-custom-selectors "^7.1.7" + postcss-dir-pseudo-class "^8.0.1" + postcss-double-position-gradients "^5.0.4" + postcss-focus-visible "^9.0.1" + postcss-focus-within "^8.0.1" + postcss-font-variant "^5.0.0" + postcss-gap-properties "^5.0.1" + postcss-image-set-function "^6.0.3" + postcss-lab-function "^6.0.10" + postcss-logical "^7.0.1" + postcss-nesting "^12.0.3" + postcss-opacity-percentage "^2.0.0" + postcss-overflow-shorthand "^5.0.1" + postcss-page-break "^3.0.4" + postcss-place "^9.0.1" + postcss-pseudo-class-any-link "^9.0.1" + postcss-replace-overflow-wrap "^4.0.0" + postcss-selector-not "^7.0.2" + +postcss-pseudo-class-any-link@^9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-9.0.1.tgz#71c24a886765763d4e37e21a27ecc6f1c1a5d698" + integrity sha512-cKYGGZ9yzUZi+dZd7XT2M8iSDfo+T2Ctbpiizf89uBTBfIpZpjvTavzIJXpCReMVXSKROqzpxClNu6fz4DHM0Q== + dependencies: + postcss-selector-parser "^6.0.13" + +postcss-reduce-initial@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz#798cd77b3e033eae7105c18c9d371d989e1382d6" + integrity sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg== dependencies: - browserslist "^4.0.0" + browserslist "^4.21.4" caniuse-api "^3.0.0" - has "^1.0.0" - postcss "^7.0.0" -postcss-reduce-transforms@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-reduce-transforms/download/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" - integrity sha1-F++kBerMbge+NBSlyi0QdGgdTik= +postcss-reduce-initial@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-6.0.3.tgz#112b039079ca96faeb0c5bbd8bfab6cf38e8177d" + integrity sha512-w4QIR9pEa1N4xMx3k30T1vLZl6udVK2RmNqrDXhBXX9L0mBj2a8ADs8zkbaEH7eUy1m30Wyr5EBgHN31Yq1JvA== dependencies: - cssnano-util-get-match "^4.0.0" - has "^1.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" + browserslist "^4.23.0" + caniuse-api "^3.0.0" -postcss-replace-overflow-wrap@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/postcss-replace-overflow-wrap/download/postcss-replace-overflow-wrap-3.0.0.tgz#61b360ffdaedca84c7c918d2b0f0d0ea559ab01c" - integrity sha1-YbNg/9rtyoTHyRjSsPDQ6lWasBw= +postcss-reduce-transforms@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz#333b70e7758b802f3dd0ddfe98bb1ccfef96b6e9" + integrity sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ== dependencies: - postcss "^7.0.2" + postcss-value-parser "^4.2.0" -postcss-selector-matches@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/postcss-selector-matches/download/postcss-selector-matches-4.0.0.tgz#71c8248f917ba2cc93037c9637ee09c64436fcff" - integrity sha1-ccgkj5F7osyTA3yWN+4JxkQ2/P8= +postcss-reduce-transforms@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.1.tgz#7bf59d7c6e7066e3b18ef17237d2344bd3da6d75" + integrity sha512-fUbV81OkUe75JM+VYO1gr/IoA2b/dRiH6HvMwhrIBSUrxq3jNZQZitSnugcTLDi1KkQh1eR/zi+iyxviUNBkcQ== dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" + postcss-value-parser "^4.2.0" -postcss-selector-not@^4.0.0: +postcss-replace-overflow-wrap@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/postcss-selector-not/download/postcss-selector-not-4.0.0.tgz#c68ff7ba96527499e832724a2674d65603b645c0" - integrity sha1-xo/3upZSdJnoMnJKJnTWVgO2RcA= - dependencies: - balanced-match "^1.0.0" - postcss "^7.0.2" + resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz#d2df6bed10b477bf9c52fab28c568b4b29ca4319" + integrity sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw== -postcss-selector-parser@^3.0.0: - version "3.1.2" - resolved "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" - integrity sha1-sxD1xMD9r3b5SQK7qjDbaqhPUnA= - dependencies: - dot-prop "^5.2.0" - indexes-of "^1.0.1" - uniq "^1.0.1" - -postcss-selector-parser@^5.0.0-rc.3, postcss-selector-parser@^5.0.0-rc.4: - version "5.0.0" - resolved "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-5.0.0.tgz#249044356697b33b64f1a8f7c80922dddee7195c" - integrity sha1-JJBENWaXsztk8aj3yAki3d7nGVw= +postcss-selector-not@^7.0.2: + version "7.0.2" + resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-7.0.2.tgz#f9184c7770be5dcb4abd7efa3610a15fbd2f0b31" + integrity sha512-/SSxf/90Obye49VZIfc0ls4H0P6i6V1iHv0pzZH8SdgvZOPFkF37ef1r5cyWcMflJSFJ5bfuoluTnFnBBFiuSA== dependencies: - cssesc "^2.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" + postcss-selector-parser "^6.0.13" -postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2: - version "6.0.2" - resolved "https://registry.npm.taobao.org/postcss-selector-parser/download/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" - integrity sha1-k0z3mdAWyDQRhZ4J3Oyt4BKG7Fw= +postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.13, postcss-selector-parser@^6.0.15, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9: + version "6.0.15" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz#11cc2b21eebc0b99ea374ffb9887174855a01535" + integrity sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw== dependencies: cssesc "^3.0.0" - indexes-of "^1.0.1" - uniq "^1.0.1" + util-deprecate "^1.0.2" -postcss-svgo@^4.0.2: - version "4.0.2" - resolved "https://registry.npm.taobao.org/postcss-svgo/download/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" - integrity sha1-F7mXvHEbMzurFDqu07jT1uPTglg= +postcss-svgo@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d" + integrity sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA== dependencies: - is-svg "^3.0.0" - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" + postcss-value-parser "^4.2.0" + svgo "^2.7.0" -postcss-svgo@^4.0.3: - version "4.0.3" - resolved "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz#343a2cdbac9505d416243d496f724f38894c941e" - integrity sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw== +postcss-svgo@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-6.0.2.tgz#dbc9d03e7f346bc0d82443078602a951e0214836" + integrity sha512-IH5R9SjkTkh0kfFOQDImyy1+mTCb+E830+9SV1O+AaDcoHTvfsvt6WwJeo7KwcHbFnevZVCsXhDmjFiGVuwqFQ== dependencies: - postcss "^7.0.0" - postcss-value-parser "^3.0.0" - svgo "^1.0.0" + postcss-value-parser "^4.2.0" + svgo "^3.2.0" -postcss-unique-selectors@^4.0.1: - version "4.0.1" - resolved "https://registry.npm.taobao.org/postcss-unique-selectors/download/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" - integrity sha1-lEaRHzKJv9ZMbWgPBzwDsfnuS6w= +postcss-unique-selectors@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz#a9f273d1eacd09e9aa6088f4b0507b18b1b541b6" + integrity sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA== dependencies: - alphanum-sort "^1.0.0" - postcss "^7.0.0" - uniqs "^2.0.0" + postcss-selector-parser "^6.0.5" -postcss-url@^8.0.0: - version "8.0.0" - resolved "https://registry.npm.taobao.org/postcss-url/download/postcss-url-8.0.0.tgz#7b10059bd12929cdbb1971c60f61a0e5af86b4ca" - integrity sha1-exAFm9EpKc27GXHGD2Gg5a+GtMo= +postcss-unique-selectors@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-6.0.2.tgz#09a34a5a31a649d3e9bca5962af0616f39d071d2" + integrity sha512-8IZGQ94nechdG7Y9Sh9FlIY2b4uS8/k8kdKRX040XHsS3B6d1HrJAkXrBSsSu4SuARruSsUjW3nlSw8BHkaAYQ== dependencies: - mime "^2.3.1" - minimatch "^3.0.4" - mkdirp "^0.5.0" - postcss "^7.0.2" - xxhashjs "^0.2.1" - -postcss-value-parser@^3.0.0, postcss-value-parser@^3.2.3: - version "3.3.1" - resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-3.3.1.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" - integrity sha1-n/giVH4okyE88cMO+lGsX9G6goE= + postcss-selector-parser "^6.0.15" -postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: - version "4.1.0" - resolved "https://registry.npm.taobao.org/postcss-value-parser/download/postcss-value-parser-4.1.0.tgz?cache=0&sync_timestamp=1588083303810&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpostcss-value-parser%2Fdownload%2Fpostcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" - integrity sha1-RD9qIM7WSBor2k+oUypuVdeJoss= - -postcss-values-parser@^2.0.0, postcss-values-parser@^2.0.1: - version "2.0.1" - resolved "https://registry.npm.taobao.org/postcss-values-parser/download/postcss-values-parser-2.0.1.tgz#da8b472d901da1e205b47bdc98637b9e9e550e5f" - integrity sha1-2otHLZAdoeIFtHvcmGN7np5VDl8= +postcss-url@^10.1.3: + version "10.1.3" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-10.1.3.tgz#54120cc910309e2475ec05c2cfa8f8a2deafdf1e" + integrity sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw== dependencies: - flatten "^1.0.2" - indexes-of "^1.0.1" - uniq "^1.0.1" + make-dir "~3.1.0" + mime "~2.5.2" + minimatch "~3.0.4" + xxhashjs "~0.2.2" + +postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" + integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: - version "7.0.36" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.36.tgz#056f8cffa939662a8f5905950c07d5285644dfcb" - integrity sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw== +postcss@^7.0.36: + version "7.0.39" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309" + integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA== dependencies: - chalk "^2.4.2" + picocolors "^0.2.1" source-map "^0.6.1" - supports-color "^6.1.0" -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.npm.taobao.org/prelude-ls/download/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= +postcss@^8.2.1, postcss@^8.2.15, postcss@^8.4.14, postcss@^8.4.33: + version "8.4.35" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.35.tgz#60997775689ce09011edf083a549cea44aabe2f7" + integrity sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA== + dependencies: + nanoid "^3.3.7" + picocolors "^1.0.0" + source-map-js "^1.0.2" prepend-http@^1.0.0: version "1.0.4" - resolved "https://registry.npm.taobao.org/prepend-http/download/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - -prepend-http@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/prepend-http/download/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + integrity sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg== -prettier@^1.18.2: - version "1.19.1" - resolved "https://registry.npm.taobao.org/prettier/download/prettier-1.19.1.tgz?cache=0&sync_timestamp=1587488858835&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fprettier%2Fdownload%2Fprettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" - integrity sha1-99f1/4qc2HKnvkyhQglZVqYHl8s= +"prettier@^1.18.2 || ^2.0.0": + version "2.8.8" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da" + integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== pretty-bytes@^5.6.0: version "5.6.0" - resolved "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" + resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== pretty-error@^2.1.1: - version "2.1.1" - resolved "https://registry.npm.taobao.org/pretty-error/download/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" - integrity sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM= + version "2.1.2" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.2.tgz#be89f82d81b1c86ec8fdfbc385045882727f93b6" + integrity sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw== dependencies: - renderkid "^2.0.1" - utila "~0.4" + lodash "^4.17.20" + renderkid "^2.0.4" pretty-format@^27.5.1: version "27.5.1" - resolved "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== dependencies: ansi-regex "^5.0.1" @@ -9181,13 +9233,13 @@ pretty-format@^27.5.1: pretty-time@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/pretty-time/download/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" - integrity sha1-/7dCmvq7hTXDRqNOQYc63z103Q4= + resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e" + integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA== pretty@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/pretty/download/pretty-2.0.0.tgz#adbc7960b7bbfe289a557dc5f737619a220d06a5" - integrity sha1-rbx5YLe7/iiaVX3F9zdhmiINBqU= + resolved "https://registry.yarnpkg.com/pretty/-/pretty-2.0.0.tgz#adbc7960b7bbfe289a557dc5f737619a220d06a5" + integrity sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w== dependencies: condense-newlines "^0.2.1" extend-shallow "^2.0.1" @@ -9195,38 +9247,38 @@ pretty@^2.0.0: process-nextick-args@~2.0.0: version "2.0.1" - resolved "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" - integrity sha1-eCDZsWEgzFXKmud5JoCufbptf+I= + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== process@^0.11.10: version "0.11.10" - resolved "https://registry.npm.taobao.org/process/download/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" - integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== promise-inflight@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== promise-retry@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== dependencies: err-code "^2.0.2" retry "^0.12.0" prompts@^2.0.1: - version "2.3.2" - resolved "https://registry.npm.taobao.org/prompts/download/prompts-2.3.2.tgz#480572d89ecf39566d2bd3fe2c9fccb7c4c0b068" - integrity sha1-SAVy2J7POVZtK9P+LJ/Mt8TAsGg= + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== dependencies: kleur "^3.0.3" - sisteransi "^1.0.4" + sisteransi "^1.0.5" proper-lockfile@^4.1.2: version "4.1.2" - resolved "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" + resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" integrity sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA== dependencies: graceful-fs "^4.2.4" @@ -9235,38 +9287,38 @@ proper-lockfile@^4.1.2: proto-list@~1.2.1: version "1.2.4" - resolved "https://registry.npm.taobao.org/proto-list/download/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" - integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA== -protocols@^1.1.0, protocols@^1.4.0: - version "1.4.7" - resolved "https://registry.npm.taobao.org/protocols/download/protocols-1.4.7.tgz#95f788a4f0e979b291ffefcf5636ad113d037d32" - integrity sha1-lfeIpPDpebKR/+/PVjatET0DfTI= +protocols@^2.0.0, protocols@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.1.tgz#8f155da3fc0f32644e83c5782c8e8212ccf70a86" + integrity sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q== prr@~1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/prr/download/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" - integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw== pseudomap@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/pseudomap/download/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== psl@^1.1.28, psl@^1.1.33: - version "1.8.0" - resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" - integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== pstree.remy@^1.1.8: version "1.1.8" - resolved "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a" + resolved "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a" integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== public-encrypt@^4.0.0: version "4.0.3" - resolved "https://registry.npm.taobao.org/public-encrypt/download/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" - integrity sha1-T8ydd6B+SLp1J+fL4N4z0HATMeA= + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" + integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== dependencies: bn.js "^4.1.0" browserify-rsa "^4.0.0" @@ -9277,55 +9329,45 @@ public-encrypt@^4.0.0: pump@^2.0.0: version "2.0.1" - resolved "https://registry.npm.taobao.org/pump/download/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" - integrity sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk= + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== dependencies: end-of-stream "^1.1.0" once "^1.3.1" pump@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" - integrity sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ= + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== dependencies: end-of-stream "^1.1.0" once "^1.3.1" pumpify@^1.3.3: version "1.5.1" - resolved "https://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" - integrity sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4= + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== dependencies: duplexify "^3.6.0" inherits "^2.0.3" pump "^2.0.0" -punycode@1.3.2: - version "1.3.2" - resolved "https://registry.npm.taobao.org/punycode/download/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" - integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= - -punycode@^1.2.4: +punycode@^1.2.4, punycode@^1.4.1: version "1.4.1" - resolved "https://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + version "2.3.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" + integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== -pupa@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz#f5e8fd4afc2c5d97828faa523549ed8744a20d62" - integrity sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A== +qs@^6.11.2: + version "6.11.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" + integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== dependencies: - escape-goat "^2.0.0" - -q@^1.1.2: - version "1.5.1" - resolved "https://registry.npm.taobao.org/q/download/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" - integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + side-channel "^1.0.4" qs@~6.5.2: version "6.5.3" @@ -9334,21 +9376,26 @@ qs@~6.5.2: query-string@^4.1.0: version "4.3.4" - resolved "https://registry.npm.taobao.org/query-string/download/query-string-4.3.4.tgz?cache=0&sync_timestamp=1591853388817&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fquery-string%2Fdownload%2Fquery-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" - integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + integrity sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q== dependencies: object-assign "^4.1.0" strict-uri-encode "^1.0.0" querystring-es3@^0.2.0: version "0.2.1" - resolved "https://registry.npm.taobao.org/querystring-es3/download/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" - integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + integrity sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA== -querystring@0.2.0, querystring@^0.2.0: - version "0.2.0" - resolved "https://registry.npm.taobao.org/querystring/download/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" - integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== quick-lru@^4.0.1: version "4.0.1" @@ -9357,52 +9404,42 @@ quick-lru@^4.0.1: randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/randombytes/download/randombytes-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frandombytes%2Fdownload%2Frandombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" - integrity sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo= + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" randomfill@^1.0.3: version "1.0.4" - resolved "https://registry.npm.taobao.org/randomfill/download/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" - integrity sha1-ySGW/IarQr6YPxvzF3giSTHWFFg= + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" + integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== dependencies: randombytes "^2.0.5" safe-buffer "^5.1.0" range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" - resolved "https://registry.npm.taobao.org/range-parser/download/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" - integrity sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE= - -rc9@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/rc9/-/rc9-1.2.0.tgz#ef098181fdde714efc4c426383d6e46c14b1254a" - integrity sha512-/jknmhG0USFAx5uoKkAKhtG40sONds9RWhFHrP1UzJ3OvVfqFWOypSUpmsQD0fFwAV7YtzHhsn3QNasfAoxgcQ== - dependencies: - defu "^2.0.4" - destr "^1.0.0" - flat "^5.0.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -rc@^1.2.8: - version "1.2.8" - resolved "https://registry.npm.taobao.org/rc/download/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0= +rc9@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/rc9/-/rc9-2.1.1.tgz#6614c32db7731b44cd48641ce68f373c3ee212a9" + integrity sha512-lNeOl38Ws0eNxpO3+wD1I9rkHGQyj1NU1jlzv4go2CtEnEQEUfqnIvZG7W+bC/aXdJ27n5x/yUjb6RoT9tko+Q== dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" + defu "^6.1.2" + destr "^2.0.0" + flat "^5.0.2" react-is@^17.0.1: version "17.0.2" - resolved "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== read-cache@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/read-cache/download/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" - integrity sha1-5mTvMRYRZsl1HNvo28+GtftY93Q= + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA== dependencies: pify "^2.3.0" @@ -9426,9 +9463,9 @@ read-pkg@^5.2.0: type-fest "^0.6.0" "readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: - version "2.3.7" - resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" - integrity sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c= + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== dependencies: core-util-is "~1.0.0" inherits "~2.0.3" @@ -9438,10 +9475,10 @@ read-pkg@^5.2.0: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.1.1, readable-stream@^3.6.0: - version "3.6.0" - resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha1-M3u9o63AcGvT4CRCaihtS0sskZg= +readable-stream@^3.6.0, readable-stream@^3.6.2: + version "3.6.2" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" + integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== dependencies: inherits "^2.0.3" string_decoder "^1.1.1" @@ -9449,8 +9486,8 @@ readable-stream@^3.1.1, readable-stream@^3.6.0: readdirp@^2.2.1: version "2.2.1" - resolved "https://registry.npm.taobao.org/readdirp/download/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" - integrity sha1-DodiKjMlqjPokihcr4tOhGUppSU= + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== dependencies: graceful-fs "^4.1.11" micromatch "^3.1.10" @@ -9458,7 +9495,7 @@ readdirp@^2.2.1: readdirp@~3.6.0: version "3.6.0" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== dependencies: picomatch "^2.2.1" @@ -9471,157 +9508,107 @@ redent@^3.0.0: indent-string "^4.0.0" strip-indent "^3.0.0" -regenerate-unicode-properties@^10.0.1: - version "10.0.1" - resolved "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz#7f442732aa7934a3740c779bb9b3340dccc1fb56" - integrity sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw== +regenerate-unicode-properties@^10.1.0: + version "10.1.1" + resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz#6b0e05489d9076b04c436f318d9b067bba459480" + integrity sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q== dependencies: regenerate "^1.4.2" -regenerate-unicode-properties@^8.2.0: - version "8.2.0" - resolved "https://registry.npm.taobao.org/regenerate-unicode-properties/download/regenerate-unicode-properties-8.2.0.tgz?cache=0&sync_timestamp=1583946996794&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerate-unicode-properties%2Fdownload%2Fregenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" - integrity sha1-5d5xEdZV57pgwFfb6f83yH5lzew= - dependencies: - regenerate "^1.4.0" - -regenerate@^1.4.0: - version "1.4.1" - resolved "https://registry.npm.taobao.org/regenerate/download/regenerate-1.4.1.tgz#cad92ad8e6b591773485fbe05a485caf4f457e6f" - integrity sha1-ytkq2Oa1kXc0hfvgWkhcr09Ffm8= - regenerate@^1.4.2: version "1.4.2" - resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== regenerator-runtime@^0.11.0: version "0.11.1" - resolved "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.11.1.tgz?cache=0&sync_timestamp=1584052392667&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" - integrity sha1-vgWtf5v30i4Fb5cmzuUBf78Z4uk= + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== -regenerator-runtime@^0.13.4: - version "0.13.5" - resolved "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.5.tgz?cache=0&sync_timestamp=1584052392667&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-runtime%2Fdownload%2Fregenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" - integrity sha1-2Hih0JS0MG0QuQlkhLM+vVXiZpc= +regenerator-runtime@^0.14.0, regenerator-runtime@^0.14.1: + version "0.14.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f" + integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw== -regenerator-runtime@^0.13.7: - version "0.13.9" - resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" - integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== - -regenerator-transform@^0.14.2: - version "0.14.5" - resolved "https://registry.npm.taobao.org/regenerator-transform/download/regenerator-transform-0.14.5.tgz?cache=0&sync_timestamp=1593557271381&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregenerator-transform%2Fdownload%2Fregenerator-transform-0.14.5.tgz#c98da154683671c9c4dcb16ece736517e1b7feb4" - integrity sha1-yY2hVGg2ccnE3LFuznNlF+G3/rQ= +regenerator-transform@^0.15.2: + version "0.15.2" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.15.2.tgz#5bbae58b522098ebdf09bca2f83838929001c7a4" + integrity sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg== dependencies: "@babel/runtime" "^7.8.4" regex-not@^1.0.0, regex-not@^1.0.2: version "1.0.2" - resolved "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw= + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== dependencies: extend-shallow "^3.0.2" safe-regex "^1.1.0" -regexpu-core@^4.7.0: - version "4.7.0" - resolved "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-4.7.0.tgz?cache=0&sync_timestamp=1583949999327&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregexpu-core%2Fdownload%2Fregexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" - integrity sha1-/L9FjFBDGwu3tF1pZ7gZLZHz2Tg= +regexp.prototype.flags@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz#138f644a3350f981a858c44f6bb1a61ff59be334" + integrity sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw== dependencies: - regenerate "^1.4.0" - regenerate-unicode-properties "^8.2.0" - regjsgen "^0.5.1" - regjsparser "^0.6.4" - unicode-match-property-ecmascript "^1.0.4" - unicode-match-property-value-ecmascript "^1.2.0" + call-bind "^1.0.6" + define-properties "^1.2.1" + es-errors "^1.3.0" + set-function-name "^2.0.1" -regexpu-core@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz#c531122a7840de743dcf9c83e923b5560323ced3" - integrity sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw== +regexpu-core@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-5.3.2.tgz#11a2b06884f3527aec3e93dbbf4a3b958a95546b" + integrity sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ== dependencies: + "@babel/regjsgen" "^0.8.0" regenerate "^1.4.2" - regenerate-unicode-properties "^10.0.1" - regjsgen "^0.6.0" - regjsparser "^0.8.2" + regenerate-unicode-properties "^10.1.0" + regjsparser "^0.9.1" unicode-match-property-ecmascript "^2.0.0" - unicode-match-property-value-ecmascript "^2.0.0" - -registry-auth-token@^4.0.0: - version "4.1.1" - resolved "https://registry.npm.taobao.org/registry-auth-token/download/registry-auth-token-4.1.1.tgz#40a33be1e82539460f94328b0f7f0f84c16d9479" - integrity sha1-QKM74eglOUYPlDKLD38PhMFtlHk= - dependencies: - rc "^1.2.8" - -registry-url@^5.0.0: - version "5.1.0" - resolved "https://registry.npm.taobao.org/registry-url/download/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" - integrity sha1-6YM0tQ1UNLgRNrROxjjZwgCcUAk= - dependencies: - rc "^1.2.8" - -regjsgen@^0.5.1: - version "0.5.2" - resolved "https://registry.npm.taobao.org/regjsgen/download/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" - integrity sha1-kv8pX7He7L9uzaslQ9IH6RqjNzM= - -regjsgen@^0.6.0: - version "0.6.0" - resolved "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz#83414c5354afd7d6627b16af5f10f41c4e71808d" - integrity sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA== - -regjsparser@^0.6.4: - version "0.6.4" - resolved "https://registry.npm.taobao.org/regjsparser/download/regjsparser-0.6.4.tgz?cache=0&sync_timestamp=1583896720909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fregjsparser%2Fdownload%2Fregjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" - integrity sha1-p2n4aEMIQBpm6bUp0kNv9NBmYnI= - dependencies: - jsesc "~0.5.0" + unicode-match-property-value-ecmascript "^2.1.0" -regjsparser@^0.8.2: - version "0.8.4" - resolved "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz#8a14285ffcc5de78c5b95d62bbf413b6bc132d5f" - integrity sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA== +regjsparser@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.9.1.tgz#272d05aa10c7c1f67095b1ff0addae8442fc5709" + integrity sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ== dependencies: jsesc "~0.5.0" relateurl@^0.2.7: version "0.2.7" - resolved "https://registry.npm.taobao.org/relateurl/download/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" - integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog== remove-trailing-separator@^1.0.1: version "1.1.0" - resolved "https://registry.npm.taobao.org/remove-trailing-separator/download/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" - integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== -renderkid@^2.0.1: - version "2.0.3" - resolved "https://registry.npm.taobao.org/renderkid/download/renderkid-2.0.3.tgz#380179c2ff5ae1365c522bf2fcfcff01c5b74149" - integrity sha1-OAF5wv9a4TZcUivy/Pz/AcW3QUk= +renderkid@^2.0.4: + version "2.0.7" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.7.tgz#464f276a6bdcee606f4a15993f9b29fc74ca8609" + integrity sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ== dependencies: - css-select "^1.1.0" - dom-converter "^0.2" - htmlparser2 "^3.3.0" - strip-ansi "^3.0.0" - utila "^0.4.0" + css-select "^4.1.3" + dom-converter "^0.2.0" + htmlparser2 "^6.1.0" + lodash "^4.17.21" + strip-ansi "^3.0.1" repeat-element@^1.1.2: - version "1.1.3" - resolved "https://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" - integrity sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4= + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== -repeat-string@^1.6.1: +repeat-string@^1.0.0, repeat-string@^1.6.1: version "1.6.1" - resolved "https://registry.npm.taobao.org/repeat-string/download/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== request@^2.88.0: version "2.88.2" - resolved "https://registry.npm.taobao.org/request/download/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" - integrity sha1-1zyRhzHLWofaBH4gcjQUb2ZNErM= + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== dependencies: aws-sign2 "~0.7.0" aws4 "^1.8.0" @@ -9646,101 +9633,82 @@ request@^2.88.0: require-directory@^2.1.1: version "2.1.1" - resolved "https://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== requires-port@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/requires-port/download/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== resolve-cwd@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== dependencies: resolve-from "^5.0.0" -resolve-from@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" - integrity sha1-six699nWiBvItuZTM17rywoYh0g= +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== resolve-from@^5.0.0: version "5.0.0" - resolved "https://registry.npm.taobao.org/resolve-from/download/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" - integrity sha1-w1IlhD3493bfIcV1V7wIfp39/Gk= + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== resolve-url@^0.2.1: version "0.2.1" - resolved "https://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== resolve.exports@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" - integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== - -resolve@^1.1.7, resolve@^1.10.0, resolve@^1.2.0, resolve@^1.3.2: - version "1.17.0" - resolved "https://registry.npm.taobao.org/resolve/download/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha1-sllBtUloIxzC0bt2p5y38sC/hEQ= - dependencies: - path-parse "^1.0.6" + version "1.1.1" + resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.1.tgz#05cfd5b3edf641571fd46fa608b610dda9ead999" + integrity sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ== -resolve@^1.14.2, resolve@^1.20.0: - version "1.22.0" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz#5e0b8c67c15df57a89bdbabe603a002f21731198" - integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw== +resolve@^1.1.7, resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.0: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== dependencies: - is-core-module "^2.8.1" + is-core-module "^2.13.0" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -responselike@^1.0.2: - version "1.0.2" - resolved "https://registry.npm.taobao.org/responselike/download/responselike-1.0.2.tgz?cache=0&sync_timestamp=1570573217730&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fresponselike%2Fdownload%2Fresponselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" - integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= - dependencies: - lowercase-keys "^1.0.0" - restore-cursor@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" - integrity sha1-OfZ8VLOnpYzqUjbZXPADQjljH34= + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== dependencies: onetime "^5.1.0" signal-exit "^3.0.2" ret@~0.1.10: version "0.1.15" - resolved "https://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w= + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== retry@^0.12.0: version "0.12.0" - resolved "https://registry.npm.taobao.org/retry/download/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== reusify@^1.0.4: version "1.0.4" - resolved "https://registry.npm.taobao.org/reusify/download/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" - integrity sha1-kNo4Kx4SbvwCFG6QhFqI2xKSXXY= - -rgb-regex@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/rgb-regex/download/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" - integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= - -rgba-regex@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/rgba-regex/download/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" - integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3: version "2.7.1" - resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-2.7.1.tgz?cache=0&sync_timestamp=1592382115665&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frimraf%2Fdownload%2Frimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" - integrity sha1-NXl/E6f9rcVmFCwp1PB8ytSD4+w= + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" @@ -9753,72 +9721,93 @@ rimraf@^3.0.0, rimraf@^3.0.2: ripemd160@^2.0.0, ripemd160@^2.0.1: version "2.0.2" - resolved "https://registry.npm.taobao.org/ripemd160/download/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" - integrity sha1-ocGm9iR1FXe6XQeRTLyShQWFiQw= + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" + integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== dependencies: hash-base "^3.0.0" inherits "^2.0.1" run-async@^2.4.0: version "2.4.1" - resolved "https://registry.npm.taobao.org/run-async/download/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" - integrity sha1-hEDsz5nqPnC9QJ1JqriOEMGJpFU= + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== run-parallel@^1.1.9: - version "1.1.9" - resolved "https://registry.npm.taobao.org/run-parallel/download/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679" - integrity sha1-yd06fPn0ssS2JE4XOm7YZuYd1nk= + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" run-queue@^1.0.0, run-queue@^1.0.3: version "1.0.3" - resolved "https://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" - integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + integrity sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg== dependencies: aproba "^1.1.1" rxjs@^6.6.0: - version "6.6.0" - resolved "https://registry.npm.taobao.org/rxjs/download/rxjs-6.6.0.tgz#af2901eedf02e3a83ffa7f886240ff9018bbec84" - integrity sha1-rykB7t8C46g/+n+IYkD/kBi77IQ= + version "6.6.7" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" + integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" +safe-array-concat@^1.0.0, safe-array-concat@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.0.tgz#8d0cae9cb806d6d1c06e08ab13d847293ebe0692" + integrity sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg== + dependencies: + call-bind "^1.0.5" + get-intrinsic "^1.2.2" + has-symbols "^1.0.3" + isarray "^2.0.5" + safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" - resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1589129010497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" - integrity sha1-mR7GnSluAxN0fVm9/St0XDX4go0= + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" - resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1589129010497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" - integrity sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY= + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-regex-test@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz#a5b4c0f06e0ab50ea2c395c14d8371232924c377" + integrity sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + is-regex "^1.1.4" safe-regex@^1.1.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== dependencies: ret "~0.1.10" "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@^2.1.2, safer-buffer@~2.1.0: version "2.1.2" - resolved "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" - integrity sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo= + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sass-graph@4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/sass-graph/-/sass-graph-4.0.0.tgz#fff8359efc77b31213056dfd251d05dadc74c613" - integrity sha512-WSO/MfXqKH7/TS8RdkCX3lVkPFQzCgbqdGsmSKq6tlPU+GpGEsa/5aW18JqItnqh+lPtcjifqdZ/VmiILkKckQ== +sass-graph@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-4.0.1.tgz#2ff8ca477224d694055bf4093f414cf6cfad1d2e" + integrity sha512-5YCfmGBmxoIRYHnKK2AKzrAkCoQ8ozO+iumT8K4tXJXRVCPf+7s1/9KxTSW3Rbvf+7Y7b4FR3mWyLnQr3PHocA== dependencies: glob "^7.0.0" lodash "^4.17.11" - scss-tokenizer "^0.3.0" + scss-tokenizer "^0.4.3" yargs "^17.2.1" sass-loader@^10.2.0, sass-loader@^10.2.1: - version "10.2.1" - resolved "https://registry.npmjs.org/sass-loader/-/sass-loader-10.2.1.tgz#17e51df313f1a7a203889ce8ff91be362651276e" - integrity sha512-RRvWl+3K2LSMezIsd008ErK4rk6CulIMSwrcc2aZvjymUgKo/vjXGp1rSWmfTUX7bblEOz8tst4wBwWtCGBqKA== + version "10.5.2" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-10.5.2.tgz#1ca30534fff296417b853c7597ca3b0bbe8c37d0" + integrity sha512-vMUoSNOUKJILHpcNCCyD23X34gve1TS7Rjd9uXHeKqhvBG39x6XbswFDtpbTElj6XdMFezoWhkh5vtKudf2cgQ== dependencies: klona "^2.0.4" loader-utils "^2.0.0" @@ -9828,44 +9817,35 @@ sass-loader@^10.2.0, sass-loader@^10.2.1: sass@~1.32.13: version "1.32.13" - resolved "https://registry.npmjs.org/sass/-/sass-1.32.13.tgz#8d29c849e625a415bce71609c7cf95e15f74ed00" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.32.13.tgz#8d29c849e625a415bce71609c7cf95e15f74ed00" integrity sha512-dEgI9nShraqP7cXQH+lEXVf73WOPCse0QlFzSD8k+1TcOxCMwVXfQlr0jtoluZysQOyJGnfr21dLvYKDJq8HkA== dependencies: chokidar ">=3.0.0 <4.0.0" sax@~1.2.4: version "1.2.4" - resolved "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" - integrity sha1-KBYjTiN4vdxOU1T6tcqold9xANk= + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== saxes@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== dependencies: xmlchars "^2.2.0" schema-utils@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/schema-utils/download/schema-utils-1.0.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" - integrity sha1-C3mpMgTXtgDUsoUNH2bCo0lRx3A= + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" + integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== dependencies: ajv "^6.1.0" ajv-errors "^1.0.0" ajv-keywords "^3.1.0" schema-utils@^2.0.0, schema-utils@^2.6.5, schema-utils@^2.7.0: - version "2.7.0" - resolved "https://registry.npm.taobao.org/schema-utils/download/schema-utils-2.7.0.tgz?cache=0&sync_timestamp=1590761195120&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fschema-utils%2Fdownload%2Fschema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7" - integrity sha1-FxUfdtjq5n+793lgwzxnatn078c= - dependencies: - "@types/json-schema" "^7.0.4" - ajv "^6.12.2" - ajv-keywords "^3.4.1" - -schema-utils@^2.7.1: version "2.7.1" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== dependencies: "@types/json-schema" "^7.0.5" @@ -9873,130 +9853,157 @@ schema-utils@^2.7.1: ajv-keywords "^3.5.2" schema-utils@^3.0.0: - version "3.1.1" - resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" - integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== + version "3.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" + integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg== dependencies: "@types/json-schema" "^7.0.8" ajv "^6.12.5" ajv-keywords "^3.5.2" -scss-tokenizer@^0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.3.0.tgz#ef7edc3bc438b25cd6ffacf1aa5b9ad5813bf260" - integrity sha512-14Zl9GcbBvOT9057ZKjpz5yPOyUWG2ojd9D5io28wHRYsOrs7U95Q+KNL87+32p8rc+LvDpbu/i9ZYjM9Q+FsQ== +schema-utils@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.2.0.tgz#70d7c93e153a273a805801882ebd3bff20d89c8b" + integrity sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw== + dependencies: + "@types/json-schema" "^7.0.9" + ajv "^8.9.0" + ajv-formats "^2.1.1" + ajv-keywords "^5.1.0" + +scss-tokenizer@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.4.3.tgz#1058400ee7d814d71049c29923d2b25e61dc026c" + integrity sha512-raKLgf1LI5QMQnG+RxHz6oK0sL3x3I4FN2UDLqgLOGO8hodECNnNh5BXn7fAyBxrA8zVzdQizQ6XjNJQ+uBwMw== dependencies: - js-base64 "^2.4.3" - source-map "^0.7.1" + js-base64 "^2.4.9" + source-map "^0.7.3" scule@^0.2.1: version "0.2.1" - resolved "https://registry.npmjs.org/scule/-/scule-0.2.1.tgz#0c1dc847b18e07219ae9a3832f2f83224e2079dc" + resolved "https://registry.yarnpkg.com/scule/-/scule-0.2.1.tgz#0c1dc847b18e07219ae9a3832f2f83224e2079dc" integrity sha512-M9gnWtn3J0W+UhJOHmBxBTwv8mZCan5i1Himp60t6vvZcor0wr+IM0URKmIglsWJ7bRujNAVVN77fp+uZaWoKg== select@^1.1.2: version "1.1.2" - resolved "https://registry.npm.taobao.org/select/download/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" - integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= - -semver-diff@^3.1.1: - version "3.1.1" - resolved "https://registry.npm.taobao.org/semver-diff/download/semver-diff-3.1.1.tgz?cache=0&sync_timestamp=1571064474000&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver-diff%2Fdownload%2Fsemver-diff-3.1.1.tgz#05f77ce59f325e00e2706afd67bb506ddb1ca32b" - integrity sha1-Bfd85Z8yXgDicGr9Z7tQbdscoys= - dependencies: - semver "^6.3.0" - -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.6.0, semver@^5.7.1: - version "5.7.1" - resolved "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" - integrity sha1-qVT5Ma66UI0we78Gnv8MAclhFvc= - -semver@7.0.0: - version "7.0.0" - resolved "https://registry.npm.taobao.org/semver/download/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha1-XzyjV2HkfgWyBsba/yz4FPAxa44= + resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" + integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA== -semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: - version "6.3.0" - resolved "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" - integrity sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0= +"semver@2 || 3 || 4 || 5", semver@^5.6.0, semver@^5.7.1: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== -semver@^7.3.2: - version "7.3.2" - resolved "https://registry.npm.taobao.org/semver/download/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" - integrity sha1-YElisFK4HtB4aq6EOJ/7pw/9OTg= +semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.4, semver@^7.3.5: - version "7.3.5" - resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== +semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.5.3, semver@^7.5.4: + version "7.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" + integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" -send@0.17.1: - version "0.17.1" - resolved "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" - integrity sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg= +semver@~7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" + integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== + +send@0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" + integrity sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg== dependencies: debug "2.6.9" - depd "~1.1.2" - destroy "~1.0.4" + depd "2.0.0" + destroy "1.2.0" encodeurl "~1.0.2" escape-html "~1.0.3" etag "~1.8.1" fresh "0.5.2" - http-errors "~1.7.2" + http-errors "2.0.0" mime "1.6.0" - ms "2.1.1" - on-finished "~2.3.0" + ms "2.1.3" + on-finished "2.4.1" range-parser "~1.2.1" - statuses "~1.5.0" + statuses "2.0.1" -serialize-javascript@^3.1.0: - version "3.1.0" - resolved "https://registry.npm.taobao.org/serialize-javascript/download/serialize-javascript-3.1.0.tgz?cache=0&sync_timestamp=1591622032410&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fserialize-javascript%2Fdownload%2Fserialize-javascript-3.1.0.tgz#8bf3a9170712664ef2561b44b691eafe399214ea" - integrity sha1-i/OpFwcSZk7yVhtEtpHq/jmSFOo= +serialize-javascript@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" + integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== dependencies: randombytes "^2.1.0" serialize-javascript@^5.0.1: version "5.0.1" - resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== dependencies: randombytes "^2.1.0" -serve-placeholder@^1.2.3: - version "1.2.4" - resolved "https://registry.npmjs.org/serve-placeholder/-/serve-placeholder-1.2.4.tgz#513eac9c435272c7fe9a86612c852ae9b1467fd4" - integrity sha512-jWD9cZXLcr4vHTTL5KEPIUBUYyOWN/z6v/tn0l6XxFhi9iqV3Fc5Y1aFeduUyz+cx8sALzGCUczkPfeOlrq9jg== +serialize-javascript@^6.0.0, serialize-javascript@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" + integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== dependencies: - defu "^5.0.0" + randombytes "^2.1.0" -serve-static@^1.14.1: - version "1.14.1" - resolved "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" - integrity sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk= +serve-placeholder@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/serve-placeholder/-/serve-placeholder-2.0.1.tgz#dfa741812f49dfea472a68c4f292dbc40d28389a" + integrity sha512-rUzLlXk4uPFnbEaIz3SW8VISTxMuONas88nYWjAWaM2W9VDbt9tyFOr3lq8RhVOFrT3XISoBw8vni5una8qMnQ== + dependencies: + defu "^6.0.0" + +serve-static@^1.14.1, serve-static@^1.15.0: + version "1.15.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.15.0.tgz#faaef08cffe0a1a62f60cad0c4e513cff0ac9540" + integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.17.1" + send "0.18.0" server-destroy@^1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/server-destroy/download/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" - integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= + resolved "https://registry.yarnpkg.com/server-destroy/-/server-destroy-1.0.1.tgz#f13bf928e42b9c3e79383e61cc3998b5d14e6cdd" + integrity sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ== set-blocking@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" - integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-function-length@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.1.tgz#47cc5945f2c771e2cf261c6737cf9684a2a5e425" + integrity sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g== + dependencies: + define-data-property "^1.1.2" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.3" + gopd "^1.0.1" + has-property-descriptors "^1.0.1" + +set-function-name@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + functions-have-names "^1.2.3" + has-property-descriptors "^1.0.2" set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" - resolved "https://registry.npm.taobao.org/set-value/download/set-value-2.0.1.tgz?cache=0&sync_timestamp=1585774809732&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fset-value%2Fdownload%2Fset-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha1-oY1AUw5vB95CKMfe/kInr4ytAFs= + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== dependencies: extend-shallow "^2.0.1" is-extendable "^0.1.1" @@ -10005,96 +10012,101 @@ set-value@^2.0.0, set-value@^2.0.1: setimmediate@^1.0.4: version "1.0.5" - resolved "https://registry.npm.taobao.org/setimmediate/download/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" - integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== -setprototypeof@1.1.1: - version "1.1.1" - resolved "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" - integrity sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM= +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== sha.js@^2.4.0, sha.js@^2.4.8: version "2.4.11" - resolved "https://registry.npm.taobao.org/sha.js/download/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" - integrity sha1-N6XPC4HsvGlD3hCbopYNGyZYSuc= + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" + integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== dependencies: inherits "^2.0.1" safe-buffer "^5.0.1" shallow-clone@^3.0.0: version "3.0.1" - resolved "https://registry.npm.taobao.org/shallow-clone/download/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" - integrity sha1-jymBrZJTH1UDWwH7IwdppA4C76M= + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== dependencies: kind-of "^6.0.2" shebang-command@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/shebang-command/download/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" - integrity sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo= + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== dependencies: shebang-regex "^3.0.0" shebang-regex@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/shebang-regex/download/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" - integrity sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI= - -shell-quote@^1.6.1: - version "1.7.3" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123" - integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -sigmund@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/sigmund/download/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" - integrity sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA= +shell-quote@^1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" + integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: - version "3.0.3" - resolved "https://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.3.tgz?cache=0&sync_timestamp=1585253373618&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsignal-exit%2Fdownload%2Fsignal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" - integrity sha1-oUEMLt2PB3sItOJTyOrPyvBXRhw= +side-channel@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.5.tgz#9a84546599b48909fb6af1211708d23b1946221b" + integrity sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ== + dependencies: + call-bind "^1.0.6" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" -signal-exit@^3.0.7: +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3, signal-exit@^3.0.7: version "3.0.7" - resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== -simple-swizzle@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" - integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= +signal-exit@^4.0.1, signal-exit@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + +simple-update-notifier@^1.0.7: + version "1.1.0" + resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz#67694c121de354af592b347cdba798463ed49c82" + integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== dependencies: - is-arrayish "^0.3.1" + semver "~7.0.0" -sirv@^1.0.7: - version "1.0.19" - resolved "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz#1d73979b38c7fe91fcba49c85280daa9c2363b49" - integrity sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ== +sirv@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0" + integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ== dependencies: - "@polka/url" "^1.0.0-next.20" - mrmime "^1.0.0" - totalist "^1.0.0" + "@polka/url" "^1.0.0-next.24" + mrmime "^2.0.0" + totalist "^3.0.0" -sisteransi@^1.0.4: +sisteransi@^1.0.5: version "1.0.5" - resolved "https://registry.npm.taobao.org/sisteransi/download/sisteransi-1.0.5.tgz?cache=0&sync_timestamp=1584536509196&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsisteransi%2Fdownload%2Fsisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha1-E01oEpd1ZDfMBcoBNw06elcQde0= + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== slash@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/slash/download/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" - integrity sha1-ZTm+hwwWWtvVJAIg2+Nh8bxNRjQ= + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== smart-buffer@^4.2.0: version "4.2.0" - resolved "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== snapdragon-node@^2.0.1: version "2.1.1" - resolved "https://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha1-bBdfhv8UvbByRWPo88GwIaKGhTs= + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== dependencies: define-property "^1.0.0" isobject "^3.0.0" @@ -10102,15 +10114,15 @@ snapdragon-node@^2.0.1: snapdragon-util@^3.0.1: version "3.0.1" - resolved "https://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI= + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== dependencies: kind-of "^3.2.0" snapdragon@^0.8.1: version "0.8.2" - resolved "https://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0= + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== dependencies: base "^0.11.1" debug "^2.2.0" @@ -10122,45 +10134,50 @@ snapdragon@^0.8.1: use "^3.1.0" socks-proxy-agent@^6.0.0: - version "6.1.1" - resolved "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz#e664e8f1aaf4e1fb3df945f09e3d94f911137f87" - integrity sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew== + version "6.2.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz#2687a31f9d7185e38d530bef1944fe1f1496d6ce" + integrity sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ== dependencies: agent-base "^6.0.2" - debug "^4.3.1" - socks "^2.6.1" + debug "^4.3.3" + socks "^2.6.2" -socks@^2.6.1: - version "2.6.2" - resolved "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz#ec042d7960073d40d94268ff3bb727dc685f111a" - integrity sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA== +socks@^2.6.2: + version "2.8.1" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.8.1.tgz#22c7d9dd7882649043cba0eafb49ae144e3457af" + integrity sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ== dependencies: - ip "^1.1.5" + ip-address "^9.0.5" smart-buffer "^4.2.0" sort-keys@^1.0.0: version "1.1.2" - resolved "https://registry.npm.taobao.org/sort-keys/download/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" - integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + integrity sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg== dependencies: is-plain-obj "^1.0.0" sort-keys@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + integrity sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg== dependencies: is-plain-obj "^1.0.0" source-list-map@^2.0.0: version "2.0.1" - resolved "https://registry.npm.taobao.org/source-list-map/download/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" - integrity sha1-OZO9hzv8SEecyp6jpUeDXHwVSzQ= + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== + +source-map-js@^1.0.1, source-map-js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c" + integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw== source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: version "0.5.3" - resolved "https://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.3.tgz?cache=0&sync_timestamp=1584829552965&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-resolve%2Fdownload%2Fsource-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha1-GQhmvs51U+H48mei7oLGBrVQmho= + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== dependencies: atob "^2.1.2" decode-uri-component "^0.2.0" @@ -10170,7 +10187,7 @@ source-map-resolve@^0.5.0, source-map-resolve@^0.5.2: source-map-resolve@^0.6.0: version "0.6.0" - resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz#3d9df87e236b53f16d01e58150fc7711138e5ed2" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz#3d9df87e236b53f16d01e58150fc7711138e5ed2" integrity sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w== dependencies: atob "^2.1.2" @@ -10178,79 +10195,84 @@ source-map-resolve@^0.6.0: source-map-support@^0.5.6, source-map-support@~0.5.12, source-map-support@~0.5.20: version "0.5.21" - resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" source-map-url@^0.4.0: - version "0.4.0" - resolved "https://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" - integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== source-map@0.5.6: version "0.5.6" - resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" - integrity sha1-dc449SvwczxafwwRjYEzSiu19BI= + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" + integrity sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA== -source-map@^0.5.0, source-map@^0.5.6: +source-map@^0.5.6: version "0.5.7" - resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.7.1, source-map@^0.7.3, source-map@~0.7.2: - version "0.7.3" - resolved "https://registry.npm.taobao.org/source-map/download/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha1-UwL4FpAxc1ImVECS5kmB91F1A4M= +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== spdx-correct@^3.0.0: - version "3.1.1" - resolved "https://registry.npm.taobao.org/spdx-correct/download/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" - integrity sha1-3s6BrJweZxPl99G28X1Gj6U9iak= + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== dependencies: spdx-expression-parse "^3.0.0" spdx-license-ids "^3.0.0" spdx-exceptions@^2.1.0: - version "2.3.0" - resolved "https://registry.npm.taobao.org/spdx-exceptions/download/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" - integrity sha1-PyjOGnegA3JoPq3kpDMYNSeiFj0= + version "2.5.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz#5d607d27fc806f66d7b64a766650fa890f04ed66" + integrity sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w== spdx-expression-parse@^3.0.0: version "3.0.1" - resolved "https://registry.npm.taobao.org/spdx-expression-parse/download/spdx-expression-parse-3.0.1.tgz?cache=0&sync_timestamp=1589386503783&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdx-expression-parse%2Fdownload%2Fspdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" - integrity sha1-z3D1BILu/cmOPOCmgz5KU87rpnk= + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== dependencies: spdx-exceptions "^2.1.0" spdx-license-ids "^3.0.0" spdx-license-ids@^3.0.0: - version "3.0.5" - resolved "https://registry.npm.taobao.org/spdx-license-ids/download/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654" - integrity sha1-NpS1gEVnpFjTyARYQqY1hjL2JlQ= + version "3.0.17" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz#887da8aa73218e51a1d917502d79863161a93f9c" + integrity sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg== split-string@^3.0.1, split-string@^3.0.2: version "3.1.0" - resolved "https://registry.npm.taobao.org/split-string/download/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha1-fLCd2jqGWFcFxks5pkZgOGguj+I= + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== dependencies: extend-shallow "^3.0.0" +sprintf-js@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a" + integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== + sprintf-js@~1.0.2: version "1.0.3" - resolved "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== sshpk@^1.7.0: - version "1.16.1" - resolved "https://registry.npm.taobao.org/sshpk/download/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" - integrity sha1-+2YcC+8ps520B2nuOfpwCT1vaHc= + version "1.18.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.18.0.tgz#1663e55cddf4d688b86a46b77f0d5fe363aba028" + integrity sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ== dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" @@ -10271,87 +10293,83 @@ ssri@^6.0.1: ssri@^8.0.0, ssri@^8.0.1: version "8.0.1" - resolved "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== dependencies: minipass "^3.1.1" stable@^0.1.8: version "0.1.8" - resolved "https://registry.npm.taobao.org/stable/download/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" - integrity sha1-g26zyDgv4pNv6vVEYxAXzn1Ho88= + resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== stack-trace@0.0.10: version "0.0.10" - resolved "https://registry.npm.taobao.org/stack-trace/download/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" - integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= + resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + integrity sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg== stack-utils@^2.0.3: - version "2.0.5" - resolved "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" - integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== + version "2.0.6" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== dependencies: escape-string-regexp "^2.0.0" -stackframe@^1.1.1: - version "1.2.0" - resolved "https://registry.npm.taobao.org/stackframe/download/stackframe-1.2.0.tgz?cache=0&sync_timestamp=1590854170093&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstackframe%2Fdownload%2Fstackframe-1.2.0.tgz#52429492d63c62eb989804c11552e3d22e779303" - integrity sha1-UkKUktY8YuuYmATBFVLj0i53kwM= +stackframe@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-1.3.4.tgz#b881a004c8c149a5e8efef37d51b16e412943310" + integrity sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw== static-extend@^0.1.1: version "0.1.2" - resolved "https://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== dependencies: define-property "^0.2.5" object-copy "^0.1.0" -"statuses@>= 1.5.0 < 2", statuses@~1.5.0: - version "1.5.0" - resolved "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" - integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -std-env@^2.2.1: - version "2.2.1" - resolved "https://registry.npm.taobao.org/std-env/download/std-env-2.2.1.tgz#2ffa0fdc9e2263e0004c1211966e960948a40f6b" - integrity sha1-L/oP3J4iY+AATBIRlm6WCUikD2s= - dependencies: - ci-info "^1.6.0" +statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== -std-env@^2.3.0: - version "2.3.1" - resolved "https://registry.npmjs.org/std-env/-/std-env-2.3.1.tgz#d42271908819c243f8defc77a140fc1fcee336a1" - integrity sha512-eOsoKTWnr6C8aWrqJJ2KAReXoa7Vn5Ywyw6uCXgA/xDhxPoaIsBa5aNJmISY04dLwXPBnDHW4diGM7Sn5K4R/g== - dependencies: - ci-info "^3.1.1" +std-env@^3.5.0, std-env@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.7.0.tgz#c9f7386ced6ecf13360b6c6c55b8aaa4ef7481d2" + integrity sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg== stdout-stream@^1.4.0: version "1.4.1" - resolved "https://registry.npm.taobao.org/stdout-stream/download/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" - integrity sha1-WsF0zdXNcmEEqgwLK9g4FdjVNd4= + resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" + integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== dependencies: readable-stream "^2.0.1" stream-browserify@^2.0.1: version "2.0.2" - resolved "https://registry.npm.taobao.org/stream-browserify/download/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" - integrity sha1-h1IdOKRKp+6RzhzSpH3wy0ndZgs= + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" + integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== dependencies: inherits "~2.0.1" readable-stream "^2.0.2" stream-each@^1.1.0: version "1.2.3" - resolved "https://registry.npm.taobao.org/stream-each/download/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" - integrity sha1-6+J6DDibBPvMIzZClS4Qcxr6m64= + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" + integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== dependencies: end-of-stream "^1.1.0" stream-shift "^1.0.0" stream-http@^2.7.2: version "2.8.3" - resolved "https://registry.npm.taobao.org/stream-http/download/stream-http-2.8.3.tgz?cache=0&sync_timestamp=1588701139074&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstream-http%2Fdownload%2Fstream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" - integrity sha1-stJCRpKIpaJ+xP6JM6z2I95lFPw= + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" + integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== dependencies: builtin-status-codes "^3.0.0" inherits "^2.0.1" @@ -10360,24 +10378,24 @@ stream-http@^2.7.2: xtend "^4.0.0" stream-shift@^1.0.0: - version "1.0.1" - resolved "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" - integrity sha1-1wiCgVWasneEJCebCHfaPDktWj0= + version "1.0.3" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.3.tgz#85b8fab4d71010fc3ba8772e8046cc49b8a3864b" + integrity sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ== strict-uri-encode@^1.0.0: version "1.1.0" - resolved "https://registry.npm.taobao.org/strict-uri-encode/download/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ== string-length@^4.0.1: version "4.0.2" - resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== dependencies: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.0.0, string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.2, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -10386,96 +10404,91 @@ string-length@^4.0.1: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string-width@^3.0.0: - version "3.1.0" - resolved "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" - integrity sha1-InZ74htirxCBV0MG9prFG2IgOWE= +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== dependencies: - emoji-regex "^7.0.1" - is-fullwidth-code-point "^2.0.0" - strip-ansi "^5.1.0" + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" -string-width@^4.0.0, string-width@^4.1.0: - version "4.2.0" - resolved "https://registry.npm.taobao.org/string-width/download/string-width-4.2.0.tgz#952182c46cc7b2c313d1596e623992bd163b72b5" - integrity sha1-lSGCxGzHssMT0VluYjmSvRY7crU= +string.prototype.trim@^1.2.8: + version "1.2.8" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz#f9ac6f8af4bd55ddfa8895e6aea92a96395393bd" + integrity sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ== dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.0" + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" -string.prototype.trimend@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/string.prototype.trimend/download/string.prototype.trimend-1.0.1.tgz?cache=0&sync_timestamp=1586465233837&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimend%2Fdownload%2Fstring.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" - integrity sha1-hYEqa4R6wAInD1gIFGBkyZX7aRM= +string.prototype.trimend@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz#1bb3afc5008661d73e2dc015cd4853732d6c471e" + integrity sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA== dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" -string.prototype.trimstart@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/string.prototype.trimstart/download/string.prototype.trimstart-1.0.1.tgz?cache=0&sync_timestamp=1586465234129&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimstart%2Fdownload%2Fstring.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" - integrity sha1-FK9tnzSwU/fPyJty+PLuFLkDmlQ= +string.prototype.trimstart@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298" + integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.5" + call-bind "^1.0.2" + define-properties "^1.2.0" + es-abstract "^1.22.1" string_decoder@^1.0.0, string_decoder@^1.1.1: version "1.3.0" - resolved "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" - integrity sha1-QvEUWUpGzxqOMLCoT1bHjD7awh4= + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== dependencies: safe-buffer "~5.2.0" string_decoder@~1.1.1: version "1.1.1" - resolved "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" - integrity sha1-nPFhG6YmhdcDCunkujQUnDrwP8g= + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== dependencies: safe-buffer "~5.1.0" -strip-ansi@^3.0.0: - version "3.0.1" - resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz?cache=0&sync_timestamp=1591174987598&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" - integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= - dependencies: - ansi-regex "^2.0.0" - -strip-ansi@^5.1.0: - version "5.2.0" - resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz?cache=0&sync_timestamp=1591174987598&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" - integrity sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4= - dependencies: - ansi-regex "^4.1.0" - -strip-ansi@^6.0.0: - version "6.0.0" - resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz?cache=0&sync_timestamp=1591174987598&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" - integrity sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI= - dependencies: - ansi-regex "^5.0.0" - -strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== dependencies: ansi-regex "^5.0.1" +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^7.0.1: + version "7.1.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" + integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== + dependencies: + ansi-regex "^6.0.1" + strip-bom@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" - integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== strip-bom@^4.0.0: version "4.0.0" - resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== strip-final-newline@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/strip-final-newline/download/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" - integrity sha1-ibhS+y/L6Tb29LMYevsKEsGrWK0= + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== strip-indent@^3.0.0: version "3.0.0" @@ -10484,19 +10497,19 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" -strip-json-comments@^2.0.0, strip-json-comments@~2.0.1: +strip-json-comments@^2.0.0: version "2.0.1" - resolved "https://registry.npm.taobao.org/strip-json-comments/download/strip-json-comments-2.0.1.tgz?cache=0&sync_timestamp=1586160054577&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-json-comments%2Fdownload%2Fstrip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" - integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== strip-json-comments@^3.1.1: version "3.1.1" - resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== -style-resources-loader@^1.4.1: +style-resources-loader@^1.5.0: version "1.5.0" - resolved "https://registry.npmjs.org/style-resources-loader/-/style-resources-loader-1.5.0.tgz#6e0585ca475b9dac45387c308be90d74c814f41f" + resolved "https://registry.yarnpkg.com/style-resources-loader/-/style-resources-loader-1.5.0.tgz#6e0585ca475b9dac45387c308be90d74c814f41f" integrity sha512-fIfyvQ+uvXaCBGGAgfh+9v46ARQB1AWdaop2RpQw0PBVuROsTBqGvx8dj0kxwjGOAyq3vepe4AOK3M6+Q/q2jw== dependencies: glob "^7.2.0" @@ -10504,18 +10517,25 @@ style-resources-loader@^1.4.1: schema-utils "^2.7.0" tslib "^2.3.1" -stylehacks@^4.0.0: - version "4.0.3" - resolved "https://registry.npm.taobao.org/stylehacks/download/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" - integrity sha1-Zxj8r00eB9ihMYaQiB6NlnJqcdU= +stylehacks@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" + integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== dependencies: - browserslist "^4.0.0" - postcss "^7.0.0" - postcss-selector-parser "^3.0.0" + browserslist "^4.21.4" + postcss-selector-parser "^6.0.4" + +stylehacks@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-6.0.3.tgz#3cb7d4ceae5f310b9d211fd49bfda18984e89b9f" + integrity sha512-KzBqjnqktc8/I0ERCb+lGq06giF/JxDbw2r9kEVhen9noHeIDRtMWUp9r62sOk+/2bbX6sFG1GhsS7ToXG0PEg== + dependencies: + browserslist "^4.23.0" + postcss-selector-parser "^6.0.15" stylus-loader@^6.2.0: version "6.2.0" - resolved "https://registry.npmjs.org/stylus-loader/-/stylus-loader-6.2.0.tgz#0ba499e744e7fb9d9b3977784c8639728a7ced8c" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-6.2.0.tgz#0ba499e744e7fb9d9b3977784c8639728a7ced8c" integrity sha512-5dsDc7qVQGRoc6pvCL20eYgRUxepZ9FpeK28XhdXaIPP6kXr6nI1zAAKFQgP5OBkOfKaURp4WUpJzspg1f01Gg== dependencies: fast-glob "^3.2.7" @@ -10524,7 +10544,7 @@ stylus-loader@^6.2.0: stylus@^0.57.0: version "0.57.0" - resolved "https://registry.npmjs.org/stylus/-/stylus-0.57.0.tgz#a46f04f426c19ceef54abb1a9d189fd4e886df41" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.57.0.tgz#a46f04f426c19ceef54abb1a9d189fd4e886df41" integrity sha512-yOI6G8WYfr0q8v8rRvE91wbxFU+rJPo760Va4MF6K0I6BZjO4r+xSynkvyPBP9tV1CIEUeRsiidjIs2rzb1CnQ== dependencies: css "^3.0.0" @@ -10536,8 +10556,8 @@ stylus@^0.57.0: supports-color@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/supports-color/download/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" - integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" @@ -10546,104 +10566,104 @@ supports-color@^5.3.0, supports-color@^5.5.0: dependencies: has-flag "^3.0.0" -supports-color@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" - integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== - dependencies: - has-flag "^3.0.0" - supports-color@^7.0.0, supports-color@^7.1.0: - version "7.1.0" - resolved "https://registry.npm.taobao.org/supports-color/download/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" - integrity sha1-aOMlkd9z4lrRxLSRCKLsUHliv9E= + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== dependencies: has-flag "^4.0.0" supports-color@^8.0.0: version "8.1.1" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" supports-hyperlinks@^2.0.0: - version "2.2.0" - resolved "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" - integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== + version "2.3.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" + integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== dependencies: has-flag "^4.0.0" supports-color "^7.0.0" supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" - resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== svg-tags@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/svg-tags/download/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" - integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= + resolved "https://registry.yarnpkg.com/svg-tags/-/svg-tags-1.0.0.tgz#58f71cee3bd519b59d4b2a843b6c7de64ac04764" + integrity sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA== -svgo@^1.0.0: - version "1.3.2" - resolved "https://registry.npm.taobao.org/svgo/download/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" - integrity sha1-ttxRHAYzRsnkFbgeQ0ARRbltQWc= +svgo@^2.7.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" + integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== dependencies: - chalk "^2.4.1" - coa "^2.0.2" - css-select "^2.0.0" - css-select-base-adapter "^0.1.1" - css-tree "1.0.0-alpha.37" - csso "^4.0.2" - js-yaml "^3.13.1" - mkdirp "~0.5.1" - object.values "^1.1.0" - sax "~1.2.4" + "@trysound/sax" "0.2.0" + commander "^7.2.0" + css-select "^4.1.3" + css-tree "^1.1.3" + csso "^4.2.0" + picocolors "^1.0.0" stable "^0.1.8" - unquote "~1.1.1" - util.promisify "~1.0.0" + +svgo@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.2.0.tgz#7a5dff2938d8c6096e00295c2390e8e652fa805d" + integrity sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ== + dependencies: + "@trysound/sax" "0.2.0" + commander "^7.2.0" + css-select "^5.1.0" + css-tree "^2.3.1" + css-what "^6.1.0" + csso "^5.0.5" + picocolors "^1.0.0" symbol-tree@^3.2.4: version "3.2.4" - resolved "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== tapable@^1.0.0, tapable@^1.0.0-beta.5, tapable@^1.1.3: version "1.1.3" - resolved "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" - integrity sha1-ofzMBrWNth/XpF2i2kT186Pme6I= + resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" + integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== tar@^6.0.2, tar@^6.1.2: - version "6.1.11" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" - integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== + version "6.2.0" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.0.tgz#b14ce49a79cb1cd23bc9b016302dea5474493f73" + integrity sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ== dependencies: chownr "^2.0.0" fs-minipass "^2.0.0" - minipass "^3.0.0" + minipass "^5.0.0" minizlib "^2.1.1" mkdirp "^1.0.3" yallist "^4.0.0" terminal-link@^2.0.0: version "2.1.1" - resolved "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== dependencies: ansi-escapes "^4.2.1" supports-hyperlinks "^2.0.0" terser-webpack-plugin@^1.4.3: - version "1.4.4" - resolved "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-1.4.4.tgz?cache=0&sync_timestamp=1592492285990&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-1.4.4.tgz#2c63544347324baafa9a56baaddf1634c8abfc2f" - integrity sha1-LGNUQ0cyS6r6mla6rd8WNMir/C8= + version "1.4.5" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" + integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== dependencies: cacache "^12.0.2" find-cache-dir "^2.1.0" is-wsl "^1.1.0" schema-utils "^1.0.0" - serialize-javascript "^3.1.0" + serialize-javascript "^4.0.0" source-map "^0.6.1" terser "^4.1.2" webpack-sources "^1.4.0" @@ -10651,7 +10671,7 @@ terser-webpack-plugin@^1.4.3: terser-webpack-plugin@^4.2.3: version "4.2.3" - resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== dependencies: cacache "^15.0.5" @@ -10674,32 +10694,27 @@ terser@^4.1.2, terser@^4.6.3: source-map-support "~0.5.12" terser@^5.3.4: - version "5.12.1" - resolved "https://registry.npmjs.org/terser/-/terser-5.12.1.tgz#4cf2ebed1f5bceef5c83b9f60104ac4a78b49e9c" - integrity sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ== + version "5.28.1" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.28.1.tgz#bf00f7537fd3a798c352c2d67d67d65c915d1b28" + integrity sha512-wM+bZp54v/E9eRRGXb5ZFDvinrJIOaTapx3WUokyVGZu5ucVCK55zEgGd5Dl2fSr3jUo5sDiERErUWLY6QPFyA== dependencies: - acorn "^8.5.0" + "@jridgewell/source-map" "^0.3.3" + acorn "^8.8.2" commander "^2.20.0" - source-map "~0.7.2" source-map-support "~0.5.20" test-exclude@^6.0.0: version "6.0.0" - resolved "https://registry.npm.taobao.org/test-exclude/download/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha1-BKhphmHYBepvopO2y55jrARO8V4= + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== dependencies: "@istanbuljs/schema" "^0.1.2" glob "^7.1.4" minimatch "^3.0.4" -text-table@^0.2.0: - version "0.2.0" - resolved "https://registry.npm.taobao.org/text-table/download/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" - integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= - thread-loader@^3.0.4: version "3.0.4" - resolved "https://registry.npmjs.org/thread-loader/-/thread-loader-3.0.4.tgz#c392e4c0241fbc80430eb680e4886819b504a31b" + resolved "https://registry.yarnpkg.com/thread-loader/-/thread-loader-3.0.4.tgz#c392e4c0241fbc80430eb680e4886819b504a31b" integrity sha512-ByaL2TPb+m6yArpqQUZvP+5S1mZtXsEP7nWKKlAUTm7fCml8kB5s1uI3+eHRP2bk5mVYfRSBI7FFf+tWEyLZwA== dependencies: json-parse-better-errors "^1.0.2" @@ -10709,146 +10724,137 @@ thread-loader@^3.0.4: schema-utils "^3.0.0" throat@^6.0.1: - version "6.0.1" - resolved "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" - integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== + version "6.0.2" + resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.2.tgz#51a3fbb5e11ae72e2cf74861ed5c8020f89f29fe" + integrity sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ== through2@^2.0.0: version "2.0.5" - resolved "https://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz?cache=0&sync_timestamp=1593478647766&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fthrough2%2Fdownload%2Fthrough2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" - integrity sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0= + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== dependencies: readable-stream "~2.3.6" xtend "~4.0.1" through@^2.3.6: version "2.3.8" - resolved "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== time-fix-plugin@^2.0.7: version "2.0.7" - resolved "https://registry.npmjs.org/time-fix-plugin/-/time-fix-plugin-2.0.7.tgz#4ba70ae2e40cedf34dabe505eda7b71b1b244f50" + resolved "https://registry.yarnpkg.com/time-fix-plugin/-/time-fix-plugin-2.0.7.tgz#4ba70ae2e40cedf34dabe505eda7b71b1b244f50" integrity sha512-uVFet1LQToeUX0rTcSiYVYVoGuBpc8gP/2jnlUzuHMHe+gux6XLsNzxLUweabMwiUj5ejhoIMsUI55nVSEa/Vw== timers-browserify@^2.0.4: - version "2.0.11" - resolved "https://registry.npm.taobao.org/timers-browserify/download/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" - integrity sha1-gAsfPu4nLlvFPuRloE0OgEwxIR8= + version "2.0.12" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" + integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== dependencies: setimmediate "^1.0.4" -timsort@^0.3.0: - version "0.3.0" - resolved "https://registry.npm.taobao.org/timsort/download/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" - integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= - tiny-emitter@^2.0.0: version "2.1.0" - resolved "https://registry.npm.taobao.org/tiny-emitter/download/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" - integrity sha1-HRpW7fxRxD6GPLtTgqcjMONVVCM= + resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" + integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== tmp@^0.0.33: version "0.0.33" - resolved "https://registry.npm.taobao.org/tmp/download/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" - integrity sha1-bTQzWIl2jSGyvNoKonfO07G/rfk= + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== dependencies: os-tmpdir "~1.0.2" -tmpl@1.0.x: +tmpl@1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== to-arraybuffer@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/to-arraybuffer/download/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" - integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + integrity sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA== to-fast-properties@^1.0.3: version "1.0.3" - resolved "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" - integrity sha1-uDVx+k2MJbguIxsG46MFXeTKGkc= + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + integrity sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og== to-fast-properties@^2.0.0: version "2.0.0" - resolved "https://registry.npm.taobao.org/to-fast-properties/download/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" - integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== to-object-path@^0.3.0: version "0.3.0" - resolved "https://registry.npm.taobao.org/to-object-path/download/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== dependencies: kind-of "^3.0.2" -to-readable-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/to-readable-stream/download/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" - integrity sha1-zgqgwvPfat+FLvtASng+d8BHV3E= - to-regex-range@^2.1.0: version "2.1.1" - resolved "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== dependencies: is-number "^3.0.0" repeat-string "^1.6.1" to-regex-range@^5.0.1: version "5.0.1" - resolved "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" - integrity sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ= + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== dependencies: is-number "^7.0.0" to-regex@^3.0.1, to-regex@^3.0.2: version "3.0.2" - resolved "https://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4= + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== dependencies: define-property "^2.0.2" extend-shallow "^3.0.2" regex-not "^1.0.2" safe-regex "^1.1.0" -toidentifier@1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" - integrity sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM= +toidentifier@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" + integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== -totalist@^1.0.0: - version "1.1.0" - resolved "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" - integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== +totalist@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" + integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== touch@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/touch/download/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" - integrity sha1-/jZfX3XsntTlaCXgu3bSSrdK+Ds= + resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.0.tgz#fe365f5f75ec9ed4e56825e0bb76d24ab74af83b" + integrity sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA== dependencies: nopt "~1.0.10" tough-cookie@^4.0.0: - version "4.0.0" - resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" - integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + version "4.1.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" + integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== dependencies: psl "^1.1.33" punycode "^2.1.1" - universalify "^0.1.2" + universalify "^0.2.0" + url-parse "^1.5.3" tough-cookie@~2.5.0: version "2.5.0" - resolved "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha1-zZ+yoKodWhK0c72fuW+j3P9lreI= + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== dependencies: psl "^1.1.28" punycode "^2.1.1" tr46@^2.1.0: version "2.1.0" - resolved "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== dependencies: punycode "^2.1.1" @@ -10856,7 +10862,7 @@ tr46@^2.1.0: tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== trim-newlines@^3.0.0: version "3.0.1" @@ -10865,70 +10871,58 @@ trim-newlines@^3.0.0: "true-case-path@^1.0.2": version "1.0.3" - resolved "https://registry.npm.taobao.org/true-case-path/download/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" - integrity sha1-+BO1qMhrQNpZYGcisUTjIleZ9H0= + resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" + integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== dependencies: glob "^7.1.2" ts-pnp@^1.1.6: version "1.2.0" - resolved "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" + resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== tsconfig@^7.0.0: version "7.0.0" - resolved "https://registry.npm.taobao.org/tsconfig/download/tsconfig-7.0.0.tgz#84538875a4dc216e5c4a5432b3a4dec3d54e91b7" - integrity sha1-hFOIdaTcIW5cSlQys6Tew9VOkbc= + resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-7.0.0.tgz#84538875a4dc216e5c4a5432b3a4dec3d54e91b7" + integrity sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw== dependencies: "@types/strip-bom" "^3.0.0" "@types/strip-json-comments" "0.0.30" strip-bom "^3.0.0" strip-json-comments "^2.0.0" -tslib@^1.10.0, tslib@^1.9.0: - version "1.13.0" - resolved "https://registry.npm.taobao.org/tslib/download/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" - integrity sha1-yIHhPMcBWJTtkUhi0nZDb6mkcEM= +tslib@^1.9.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.3.1: - version "2.3.1" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" - integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== +tslib@^2.0.3, tslib@^2.3.1: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== tty-browserify@0.0.0: version "0.0.0" - resolved "https://registry.npm.taobao.org/tty-browserify/download/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" - integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + integrity sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw== tunnel-agent@^0.6.0: version "0.6.0" - resolved "https://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== dependencies: safe-buffer "^5.0.1" tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" - resolved "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz?cache=0&sync_timestamp=1581364183265&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftweetnacl%2Fdownload%2Ftweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= - -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.npm.taobao.org/type-check/download/type-check-0.3.2.tgz?cache=0&sync_timestamp=1585882977555&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-check%2Fdownload%2Ftype-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= - dependencies: - prelude-ls "~1.1.2" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== type-detect@4.0.8: version "4.0.8" - resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== -type-fest@^0.11.0: - version "0.11.0" - resolved "https://registry.npm.taobao.org/type-fest/download/type-fest-0.11.0.tgz?cache=0&sync_timestamp=1593290708002&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" - integrity sha1-l6vwhyMQ/tiKXEZrJWgVdhReM/E= - type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -10936,9 +10930,14 @@ type-fest@^0.18.0: type-fest@^0.20.2: version "0.20.2" - resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + type-fest@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" @@ -10946,200 +10945,207 @@ type-fest@^0.6.0: type-fest@^0.8.0, type-fest@^0.8.1: version "0.8.1" - resolved "https://registry.npm.taobao.org/type-fest/download/type-fest-0.8.1.tgz?cache=0&sync_timestamp=1593290708002&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" - integrity sha1-CeJJ696FHTseSNJ8EFREZn8XuD0= + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +typed-array-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz#1867c5d83b20fcb5ccf32649e5e2fc7424474ff3" + integrity sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + is-typed-array "^1.1.13" + +typed-array-byte-length@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz#d92972d3cff99a3fa2e765a28fcdc0f1d89dec67" + integrity sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + +typed-array-byte-offset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz#f9ec1acb9259f395093e4567eb3c28a580d02063" + integrity sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA== + dependencies: + available-typed-arrays "^1.0.7" + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + +typed-array-length@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/typed-array-length/-/typed-array-length-1.0.5.tgz#57d44da160296d8663fd63180a1802ebf25905d5" + integrity sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA== + dependencies: + call-bind "^1.0.7" + for-each "^0.3.3" + gopd "^1.0.1" + has-proto "^1.0.3" + is-typed-array "^1.1.13" + possible-typed-array-names "^1.0.0" typedarray-to-buffer@^3.1.5: version "3.1.5" - resolved "https://registry.npm.taobao.org/typedarray-to-buffer/download/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" - integrity sha1-qX7nqf9CaRufeD/xvFES/j/KkIA= + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== dependencies: is-typedarray "^1.0.0" typedarray@^0.0.6: version "0.0.6" - resolved "https://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" - integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA== -ua-parser-js@^0.7.28: - version "0.7.33" - resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.33.tgz#1d04acb4ccef9293df6f70f2c3d22f3030d8b532" - integrity sha512-s8ax/CeZdK9R/56Sui0WM6y9OFREJarMRHqLB2EwkovemBxNQ+Bqu8GAsUnVcXKgphb++ghr/B2BZx4mahujPw== +ua-parser-js@^1.0.37: + version "1.0.37" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.37.tgz#b5dc7b163a5c1f0c510b08446aed4da92c46373f" + integrity sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ== -ufo@^0.7.4, ufo@^0.7.7: +ufo@^0.7.7: version "0.7.11" - resolved "https://registry.npmjs.org/ufo/-/ufo-0.7.11.tgz#17defad497981290383c5d26357773431fdbadcb" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-0.7.11.tgz#17defad497981290383c5d26357773431fdbadcb" integrity sha512-IT3q0lPvtkqQ8toHQN/BkOi4VIqoqheqM1FnkNWT9y0G8B3xJhwnoKBu5OHx8zHDOvveQzfKuFowJ0VSARiIDg== +ufo@^1.3.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.4.0.tgz#39845b31be81b4f319ab1d99fd20c56cac528d32" + integrity sha512-Hhy+BhRBleFjpJ2vchUNN40qgkh0366FWJGqVLYBHev0vpHTrXSA0ryT+74UiW6KWsldNurQMKGqCm1M2zBciQ== + uglify-js@^3.5.1: - version "3.10.0" - resolved "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.10.0.tgz?cache=0&sync_timestamp=1592744803278&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuglify-js%2Fdownload%2Fuglify-js-3.10.0.tgz#397a7e6e31ce820bfd1cb55b804ee140c587a9e7" - integrity sha1-OXp+bjHOggv9HLVbgE7hQMWHqec= + version "3.17.4" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.17.4.tgz#61678cf5fa3f5b7eb789bb345df29afb8257c22c" + integrity sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g== + +unbox-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz#29032021057d5e6cdbd08c5129c226dff8ed6f9e" + integrity sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw== + dependencies: + call-bind "^1.0.2" + has-bigints "^1.0.2" + has-symbols "^1.0.3" + which-boxed-primitive "^1.0.2" undefsafe@^2.0.5: version "2.0.5" - resolved "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz#38733b9327bdcd226db889fb723a6efd162e6e2c" + resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.5.tgz#38733b9327bdcd226db889fb723a6efd162e6e2c" integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA== -unfetch@^4.2.0: - version "4.2.0" - resolved "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz#7e21b0ef7d363d8d9af0fb929a5555f6ef97a3be" - integrity sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA== +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== -unicode-canonical-property-names-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.npm.taobao.org/unicode-canonical-property-names-ecmascript/download/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" - integrity sha1-JhmADEyCWADv3YNDr33Zkzy+KBg= +unfetch@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/unfetch/-/unfetch-5.0.0.tgz#8a5b6e5779ebe4dde0049f7d7a81d4a1af99d142" + integrity sha512-3xM2c89siXg0nHvlmYsQ2zkLASvVMBisZm5lF3gFDqfF2xonNStDJyMpvaOBe0a1Edxmqrf2E0HBdmy9QyZaeg== unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" + resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz#301acdc525631670d39f6146e0e77ff6bbdebddc" integrity sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ== -unicode-match-property-ecmascript@^1.0.4: - version "1.0.4" - resolved "https://registry.npm.taobao.org/unicode-match-property-ecmascript/download/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" - integrity sha1-jtKjJWmWG86SJ9Cc0/+7j+1fAgw= - dependencies: - unicode-canonical-property-names-ecmascript "^1.0.4" - unicode-property-aliases-ecmascript "^1.0.4" - unicode-match-property-ecmascript@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" + resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3" integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q== dependencies: unicode-canonical-property-names-ecmascript "^2.0.0" unicode-property-aliases-ecmascript "^2.0.0" -unicode-match-property-value-ecmascript@^1.2.0: - version "1.2.0" - resolved "https://registry.npm.taobao.org/unicode-match-property-value-ecmascript/download/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" - integrity sha1-DZH2AO7rMJaqlisdb8iIduZOpTE= - -unicode-match-property-value-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz#1a01aa57247c14c568b89775a54938788189a714" - integrity sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw== - -unicode-property-aliases-ecmascript@^1.0.4: - version "1.1.0" - resolved "https://registry.npm.taobao.org/unicode-property-aliases-ecmascript/download/unicode-property-aliases-ecmascript-1.1.0.tgz?cache=0&sync_timestamp=1583945805856&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funicode-property-aliases-ecmascript%2Fdownload%2Funicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" - integrity sha1-3Vepn2IHvt/0Yoq++5TFDblByPQ= +unicode-match-property-value-ecmascript@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz#cb5fffdcd16a05124f5a4b0bf7c3770208acbbe0" + integrity sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA== unicode-property-aliases-ecmascript@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz#0a36cb9a585c4f6abd51ad1deddb285c165297c8" - integrity sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ== + version "2.1.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" + integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== union-value@^1.0.0: version "1.0.1" - resolved "https://registry.npm.taobao.org/union-value/download/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha1-C2/nuDWuzaYcbqTU8CwUIh4QmEc= + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== dependencies: arr-union "^3.1.0" get-value "^2.0.6" is-extendable "^0.1.1" set-value "^2.0.1" -uniq@^1.0.1: - version "1.0.1" - resolved "https://registry.npm.taobao.org/uniq/download/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" - integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= - -uniqs@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/uniqs/download/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" - integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= - unique-filename@^1.1.1: version "1.1.1" - resolved "https://registry.npm.taobao.org/unique-filename/download/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA= + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== dependencies: unique-slug "^2.0.0" unique-slug@^2.0.0: version "2.0.2" - resolved "https://registry.npm.taobao.org/unique-slug/download/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha1-uqvOkQg/xk6UWw861hPiZPfNTmw= + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== dependencies: imurmurhash "^0.1.4" -unique-string@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/unique-string/download/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" - integrity sha1-OcZFH4GvsnSd4rIz4/fF6IQ72J0= - dependencies: - crypto-random-string "^2.0.0" - -universalify@^0.1.0, universalify@^0.1.2: +universalify@^0.1.0: version "0.1.2" - resolved "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz?cache=0&sync_timestamp=1583532006299&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY= + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== -universalify@^1.0.0: - version "1.0.0" - resolved "https://registry.npm.taobao.org/universalify/download/universalify-1.0.0.tgz?cache=0&sync_timestamp=1583532006299&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" - integrity sha1-thodoXPoQ1sv48Z9Kbmt+FlL0W0= +universalify@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" + integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== universalify@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" - integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + version "2.0.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" + integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== unpipe@~1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= - -unquote@~1.1.1: - version "1.1.1" - resolved "https://registry.npm.taobao.org/unquote/download/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" - integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== unset-value@^1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== dependencies: has-value "^0.3.1" isobject "^3.0.0" upath@^1.1.1: version "1.2.0" - resolved "https://registry.npm.taobao.org/upath/download/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" - integrity sha1-j2bbzVWog6za5ECK+LA1pQRMGJQ= + resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== upath@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" + resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== -update-notifier@^5.1.0: - version "5.1.0" - resolved "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz#4ab0d7c7f36a231dd7316cf7729313f0214d9ad9" - integrity sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw== +update-browserslist-db@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== dependencies: - boxen "^5.0.0" - chalk "^4.1.0" - configstore "^5.0.1" - has-yarn "^2.1.0" - import-lazy "^2.1.0" - is-ci "^2.0.0" - is-installed-globally "^0.4.0" - is-npm "^5.0.0" - is-yarn-global "^0.3.0" - latest-version "^5.1.0" - pupa "^2.1.1" - semver "^7.3.4" - semver-diff "^3.1.1" - xdg-basedir "^4.0.0" + escalade "^3.1.1" + picocolors "^1.0.0" upper-case@^1.1.1: version "1.1.3" - resolved "https://registry.npm.taobao.org/upper-case/download/upper-case-1.1.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fupper-case%2Fdownload%2Fupper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" - integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + integrity sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA== uri-js@^4.2.2: version "4.4.1" @@ -11150,93 +11156,84 @@ uri-js@^4.2.2: urix@^0.1.0: version "0.1.0" - resolved "https://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== url-loader@^4.1.1: version "4.1.1" - resolved "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== dependencies: loader-utils "^2.0.0" mime-types "^2.1.27" schema-utils "^3.0.0" -url-parse-lax@^3.0.0: - version "3.0.0" - resolved "https://registry.npm.taobao.org/url-parse-lax/download/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" - integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= +url-parse@^1.5.3: + version "1.5.10" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" + integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== dependencies: - prepend-http "^2.0.0" + querystringify "^2.1.1" + requires-port "^1.0.0" url@^0.11.0: - version "0.11.0" - resolved "https://registry.npm.taobao.org/url/download/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" - integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + version "0.11.3" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.3.tgz#6f495f4b935de40ce4a0a52faee8954244f3d3ad" + integrity sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw== dependencies: - punycode "1.3.2" - querystring "0.2.0" + punycode "^1.4.1" + qs "^6.11.2" use@^3.1.0: version "3.1.1" - resolved "https://registry.npm.taobao.org/use/download/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8= + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== -util-deprecate@^1.0.1, util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" - resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" - integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== util.promisify@1.0.0: version "1.0.0" - resolved "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" - integrity sha1-RA9xZaRZyaFtwUXrjnLzVocJcDA= + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA== dependencies: define-properties "^1.1.2" object.getownpropertydescriptors "^2.0.3" -util.promisify@~1.0.0: - version "1.0.1" - resolved "https://registry.npm.taobao.org/util.promisify/download/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" - integrity sha1-a693dLgO6w91INi4HQeYKlmruu4= - dependencies: - define-properties "^1.1.3" - es-abstract "^1.17.2" - has-symbols "^1.0.1" - object.getownpropertydescriptors "^2.1.0" - -util@0.10.3: - version "0.10.3" - resolved "https://registry.npm.taobao.org/util/download/util-0.10.3.tgz?cache=0&sync_timestamp=1588238331562&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil%2Fdownload%2Futil-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" - integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= +util@^0.10.4: + version "0.10.4" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.4.tgz#3aa0125bfe668a4672de58857d3ace27ecb76901" + integrity sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A== dependencies: - inherits "2.0.1" + inherits "2.0.3" util@^0.11.0: version "0.11.1" - resolved "https://registry.npm.taobao.org/util/download/util-0.11.1.tgz?cache=0&sync_timestamp=1588238331562&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Futil%2Fdownload%2Futil-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" - integrity sha1-MjZzNyDsZLsn9uJvQhqqLhtYjWE= + resolved "https://registry.yarnpkg.com/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" + integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== dependencies: inherits "2.0.3" -utila@^0.4.0, utila@~0.4: +utila@~0.4: version "0.4.0" - resolved "https://registry.npm.taobao.org/utila/download/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" - integrity sha1-ihagXURWV6Oupe7MWxKk+lN5dyw= + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA== utils-merge@1.0.1: version "1.0.1" - resolved "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== uuid@^3.3.2: version "3.4.0" - resolved "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1592944478813&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" - integrity sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4= + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== v8-to-istanbul@^8.1.0: version "8.1.1" - resolved "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" @@ -11245,26 +11242,21 @@ v8-to-istanbul@^8.1.0: validate-npm-package-license@^3.0.1: version "3.0.4" - resolved "https://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" - integrity sha1-/JH2uce6FchX9MssXe/uw51PQQo= + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== dependencies: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" vary@^1.1.2, vary@~1.1.2: version "1.1.2" - resolved "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" - integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= - -vendors@^1.0.0: - version "1.0.4" - resolved "https://registry.npm.taobao.org/vendors/download/vendors-1.0.4.tgz?cache=0&sync_timestamp=1579857106626&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvendors%2Fdownload%2Fvendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" - integrity sha1-4rgApT56Kbk1BsPPQRANFsTErY4= + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== verror@1.10.0: version "1.10.0" - resolved "https://registry.npm.taobao.org/verror/download/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== dependencies: assert-plus "^1.0.0" core-util-is "1.0.2" @@ -11272,34 +11264,34 @@ verror@1.10.0: vm-browserify@^1.0.1: version "1.1.2" - resolved "https://registry.npm.taobao.org/vm-browserify/download/vm-browserify-1.1.2.tgz?cache=0&sync_timestamp=1572870776965&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvm-browserify%2Fdownload%2Fvm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" - integrity sha1-eGQcSIuObKkadfUR56OzKobl3aA= + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" + integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -vue-client-only@^2.0.0: - version "2.0.0" - resolved "https://registry.npm.taobao.org/vue-client-only/download/vue-client-only-2.0.0.tgz#ddad8d675ee02c761a14229f0e440e219de1da1c" - integrity sha1-3a2NZ17gLHYaFCKfDkQOIZ3h2hw= +vue-client-only@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/vue-client-only/-/vue-client-only-2.1.0.tgz#1a67a47b8ecacfa86d75830173fffee3bf8a4ee3" + integrity sha512-vKl1skEKn8EK9f8P2ZzhRnuaRHLHrlt1sbRmazlvsx6EiC3A8oWF8YCBrMJzoN+W3OnElwIGbVjsx6/xelY1AA== vue-clipboard2@^0.3.3: version "0.3.3" - resolved "https://registry.npmjs.org/vue-clipboard2/-/vue-clipboard2-0.3.3.tgz#331fec85f9d4f175eb0d4feaef4d77338562af36" + resolved "https://registry.yarnpkg.com/vue-clipboard2/-/vue-clipboard2-0.3.3.tgz#331fec85f9d4f175eb0d4feaef4d77338562af36" integrity sha512-aNWXIL2DKgJyY/1OOeITwAQz1fHaCIGvUFHf9h8UcoQBG5a74MkdhS/xqoYe7DNZdQmZRL+TAdIbtUs9OyVjbw== dependencies: clipboard "^2.0.0" vue-hot-reload-api@^2.3.0: version "2.3.4" - resolved "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2" - integrity sha1-UylVzB6yCKPZkLOp+acFdGV+CPI= + resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2" + integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog== vue-i18n@^8.25.0: - version "8.27.1" - resolved "https://registry.npmjs.org/vue-i18n/-/vue-i18n-8.27.1.tgz#fe660f6c14793ae404d6a715875d772594a3324f" - integrity sha512-lWrGm4F25qReJ7XxSnFVb2h3PfW54ldnM4C+YLBGGJ75+Myt/kj4hHSTKqsyDLamvNYpvINMicSOdW+7yuqgIQ== + version "8.28.2" + resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.28.2.tgz#913558066e274395c0a9f40b2f3393d5c2636840" + integrity sha512-C5GZjs1tYlAqjwymaaCPDjCyGo10ajUphiwA922jKt9n7KPpqR7oM1PCwYzhB/E7+nT3wfdG3oRre5raIT1rKA== vue-jest@^3.0.7: version "3.0.7" - resolved "https://registry.npmjs.org/vue-jest/-/vue-jest-3.0.7.tgz#a6d29758a5cb4d750f5d1242212be39be4296a33" + resolved "https://registry.yarnpkg.com/vue-jest/-/vue-jest-3.0.7.tgz#a6d29758a5cb4d750f5d1242212be39be4296a33" integrity sha512-PIOxFM+wsBMry26ZpfBvUQ/DGH2hvp5khDQ1n51g3bN0TwFwTy4J85XVfxTRMukqHji/GnAoGUnlZ5Ao73K62w== dependencies: babel-plugin-transform-es2015-modules-commonjs "^6.26.0" @@ -11314,10 +11306,10 @@ vue-jest@^3.0.7: tsconfig "^7.0.0" vue-template-es2015-compiler "^1.6.0" -vue-loader@^15.9.7: - version "15.9.8" - resolved "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.8.tgz#4b0f602afaf66a996be1e534fb9609dc4ab10e61" - integrity sha512-GwSkxPrihfLR69/dSV3+5CdMQ0D+jXg8Ma1S4nQXKJAznYFX14vHdc/NetQc34Dw+rBbIJyP7JOuVb9Fhprvog== +vue-loader@^15.11.1: + version "15.11.1" + resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.11.1.tgz#dee91169211276ed43c5715caef88a56b1f497b0" + integrity sha512-0iw4VchYLePqJfJu9s62ACWUXeSqM30SQqlIftbYWM3C+jpPcEHKSPUZBLjSF9au4HTHQ/naF6OGnO3Q/qGR3Q== dependencies: "@vue/component-compiler-utils" "^3.1.0" hash-sum "^1.0.2" @@ -11327,119 +11319,116 @@ vue-loader@^15.9.7: vue-meta@^2.4.0: version "2.4.0" - resolved "https://registry.npm.taobao.org/vue-meta/download/vue-meta-2.4.0.tgz?cache=0&sync_timestamp=1591798074958&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-meta%2Fdownload%2Fvue-meta-2.4.0.tgz#a419fb4b4135ce965dab32ec641d1989c2ee4845" - integrity sha1-pBn7S0E1zpZdqzLsZB0ZicLuSEU= + resolved "https://registry.yarnpkg.com/vue-meta/-/vue-meta-2.4.0.tgz#a419fb4b4135ce965dab32ec641d1989c2ee4845" + integrity sha512-XEeZUmlVeODclAjCNpWDnjgw+t3WA6gdzs6ENoIAgwO1J1d5p1tezDhtteLUFwcaQaTtayRrsx7GL6oXp/m2Jw== dependencies: deepmerge "^4.2.2" vue-no-ssr@^1.1.1: version "1.1.1" - resolved "https://registry.npm.taobao.org/vue-no-ssr/download/vue-no-ssr-1.1.1.tgz#875f3be6fb0ae41568a837f3ac1a80eaa137b998" - integrity sha1-h1875vsK5BVoqDfzrBqA6qE3uZg= + resolved "https://registry.yarnpkg.com/vue-no-ssr/-/vue-no-ssr-1.1.1.tgz#875f3be6fb0ae41568a837f3ac1a80eaa137b998" + integrity sha512-ZMjqRpWabMPqPc7gIrG0Nw6vRf1+itwf0Itft7LbMXs2g3Zs/NFmevjZGN1x7K3Q95GmIjWbQZTVerxiBxI+0g== -vue-router@^3.5.1: - version "3.5.3" - resolved "https://registry.npmjs.org/vue-router/-/vue-router-3.5.3.tgz#041048053e336829d05dafacf6a8fb669a2e7999" - integrity sha512-FUlILrW3DGitS2h+Xaw8aRNvGTwtuaxrRkNSHWTizOfLUie7wuYwezeZ50iflRn8YPV5kxmU2LQuu3nM/b3Zsg== +vue-router@^3.6.5: + version "3.6.5" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.6.5.tgz#95847d52b9a7e3f1361cb605c8e6441f202afad8" + integrity sha512-VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ== -vue-server-renderer@^2.6.12: - version "2.6.14" - resolved "https://registry.npmjs.org/vue-server-renderer/-/vue-server-renderer-2.6.14.tgz#c8bffff152df6b47b858818ef8d524d2fc351654" - integrity sha512-HifYRa/LW7cKywg9gd4ZtvtRuBlstQBao5ZCWlg40fyB4OPoGfEXAzxb0emSLv4pBDOHYx0UjpqvxpiQFEuoLA== +vue-server-renderer@^2.7.16: + version "2.7.16" + resolved "https://registry.yarnpkg.com/vue-server-renderer/-/vue-server-renderer-2.7.16.tgz#b41736366f1caf4535b3ff75822783c975a303aa" + integrity sha512-U7GgR4rYmHmbs3Z2gqsasfk7JNuTsy/xrR5EMMGRLkjN8+ryDlqQq6Uu3DcmbCATAei814YOxyl0eq2HNqgXyQ== dependencies: - chalk "^1.1.3" - hash-sum "^1.0.2" - he "^1.1.0" + chalk "^4.1.2" + hash-sum "^2.0.0" + he "^1.2.0" lodash.template "^4.5.0" lodash.uniq "^4.5.0" - resolve "^1.2.0" - serialize-javascript "^3.1.0" + resolve "^1.22.0" + serialize-javascript "^6.0.0" source-map "0.5.6" -vue-style-loader@^4.1.0: - version "4.1.2" - resolved "https://registry.npm.taobao.org/vue-style-loader/download/vue-style-loader-4.1.2.tgz#dedf349806f25ceb4e64f3ad7c0a44fba735fcf8" - integrity sha1-3t80mAbyXOtOZPOtfApE+6c1/Pg= - dependencies: - hash-sum "^1.0.2" - loader-utils "^1.0.2" - -vue-style-loader@^4.1.3: +vue-style-loader@^4.1.0, vue-style-loader@^4.1.3: version "4.1.3" - resolved "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz#6d55863a51fa757ab24e89d9371465072aa7bc35" + resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.3.tgz#6d55863a51fa757ab24e89d9371465072aa7bc35" integrity sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg== dependencies: hash-sum "^1.0.2" loader-utils "^1.0.2" -vue-template-compiler@^2.6.12, vue-template-compiler@^2.6.14: - version "2.6.14" - resolved "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.14.tgz#a2f0e7d985670d42c9c9ee0d044fed7690f4f763" - integrity sha512-ODQS1SyMbjKoO1JBJZojSw6FE4qnh9rIpUZn2EUT86FKizx9uH5z6uXiIrm4/Nb/gwxTi/o17ZDEGWAXHvtC7g== +vue-template-compiler@^2.6.14, vue-template-compiler@^2.7.16: + version "2.7.16" + resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz#c81b2d47753264c77ac03b9966a46637482bb03b" + integrity sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ== dependencies: de-indent "^1.0.2" - he "^1.1.0" + he "^1.2.0" vue-template-es2015-compiler@^1.6.0, vue-template-es2015-compiler@^1.9.0: version "1.9.1" - resolved "https://registry.npm.taobao.org/vue-template-es2015-compiler/download/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" - integrity sha1-HuO8mhbsv1EYvjNLsV+cRvgvWCU= + resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" + integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== -vue@^2.6.12: - version "2.6.14" - resolved "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz#e51aa5250250d569a3fbad3a8a5a687d6036e235" - integrity sha512-x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ== +vue@^2.7.16: + version "2.7.16" + resolved "https://registry.yarnpkg.com/vue/-/vue-2.7.16.tgz#98c60de9def99c0e3da8dae59b304ead43b967c9" + integrity sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw== + dependencies: + "@vue/compiler-sfc" "2.7.16" + csstype "^3.1.0" vuetify-loader@^1.7.3: - version "1.7.3" - resolved "https://registry.npmjs.org/vuetify-loader/-/vuetify-loader-1.7.3.tgz#404657f4925c828f400fe3269003421d586835c6" - integrity sha512-1Kt6Rfvuw3i9BBlxC9WTMnU3WEU7IBWQmDX+fYGAVGpzWCX7oHythUIwPCZGShHSYcPMKSDbXTPP8UvT5RNw8Q== + version "1.9.2" + resolved "https://registry.yarnpkg.com/vuetify-loader/-/vuetify-loader-1.9.2.tgz#adcadac71c6d9b24bde42a5b81dfda1871f73f81" + integrity sha512-8PP2w7aAs/rjA+Izec6qY7sHVb75MNrGQrDOTZJ5IEnvl+NiFhVpU2iWdRDZ3eMS842cWxSWStvkr+KJJKy+Iw== dependencies: + acorn "^8.4.1" + acorn-walk "^8.2.0" decache "^4.6.0" file-loader "^6.2.0" loader-utils "^2.0.0" vuetify@^2.6: - version "2.6.10" - resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-2.6.10.tgz#b86cd7a97bf8cd3828a72c349795b5b3c539ebc2" - integrity sha512-fgUeRDDCwYkwu6WGEEKGe7IdfzOsXJCZGrqkn1pcS2ycuoDL8mR2/dejH5iFNnBY6MnsT365PAGn0J+9otjfQg== + version "2.7.2" + resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-2.7.2.tgz#b2b687e519257d789a63b87c418f98099f38990f" + integrity sha512-qr04ww7uzAPQbpk751x4fSdjsJ+zREzjQ/rBlcQGuWS6MIMFMXcXcwvp4+/tnGsULZxPMWfQ0kmZmg5Yc/XzgQ== vuex@^3.6.2: version "3.6.2" - resolved "https://registry.npmjs.org/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71" + resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.6.2.tgz#236bc086a870c3ae79946f107f16de59d5895e71" integrity sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw== w3c-hr-time@^1.0.2: version "1.0.2" - resolved "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== dependencies: browser-process-hrtime "^1.0.0" w3c-xmlserializer@^2.0.0: version "2.0.0" - resolved "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== dependencies: xml-name-validator "^3.0.0" walker@^1.0.7: - version "1.0.7" - resolved "https://registry.npm.taobao.org/walker/download/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" - integrity sha1-L3+bj9ENZ3JisYqITijRlhjgKPs= + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== dependencies: - makeerror "1.0.x" + makeerror "1.0.12" watchpack-chokidar2@^2.0.1: version "2.0.1" - resolved "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" + resolved "https://registry.yarnpkg.com/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== dependencies: chokidar "^2.1.8" watchpack@^1.7.4: version "1.7.5" - resolved "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== dependencies: graceful-fs "^4.1.2" @@ -11448,75 +11437,85 @@ watchpack@^1.7.4: chokidar "^3.4.1" watchpack-chokidar2 "^2.0.1" +watchpack@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" + integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + webidl-conversions@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== webidl-conversions@^5.0.0: version "5.0.0" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== webidl-conversions@^6.1.0: version "6.1.0" - resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== -webpack-bundle-analyzer@^4.4.1: - version "4.5.0" - resolved "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.5.0.tgz#1b0eea2947e73528754a6f9af3e91b2b6e0f79d5" - integrity sha512-GUMZlM3SKwS8Z+CKeIFx7CVoHn3dXFcUAjT/dcZQQmfSZGvitPfMob2ipjai7ovFFqPvTqkEZ/leL4O0YOdAYQ== +webpack-bundle-analyzer@^4.10.1: + version "4.10.1" + resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.1.tgz#84b7473b630a7b8c21c741f81d8fe4593208b454" + integrity sha512-s3P7pgexgT/HTUSYgxJyn28A+99mmLq4HsJepMPzu0R8ImJc52QNqaFYW1Z2z2uIb1/J3eYgaAWVpaC+v/1aAQ== dependencies: + "@discoveryjs/json-ext" "0.5.7" acorn "^8.0.4" acorn-walk "^8.0.0" - chalk "^4.1.0" commander "^7.2.0" + debounce "^1.2.1" + escape-string-regexp "^4.0.0" gzip-size "^6.0.0" - lodash "^4.17.20" + html-escaper "^2.0.2" + is-plain-object "^5.0.0" opener "^1.5.2" - sirv "^1.0.7" + picocolors "^1.0.0" + sirv "^2.0.3" ws "^7.3.1" -webpack-dev-middleware@^4.2.0: - version "4.3.0" - resolved "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-4.3.0.tgz#179cc40795882cae510b1aa7f3710cbe93c9333e" - integrity sha512-PjwyVY95/bhBh6VUqt6z4THplYcsvQ8YNNBTBM873xLVmw8FLeALn0qurHbs9EmcfhzQis/eoqypSnZeuUz26w== +webpack-dev-middleware@^5.0.0: + version "5.3.3" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz#efae67c2793908e7311f1d9b06f2a08dcc97e51f" + integrity sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA== dependencies: - colorette "^1.2.2" - mem "^8.1.1" - memfs "^3.2.2" - mime-types "^2.1.30" + colorette "^2.0.10" + memfs "^3.4.3" + mime-types "^2.1.31" range-parser "^1.2.1" - schema-utils "^3.0.0" + schema-utils "^4.0.0" -webpack-hot-middleware@^2.25.0: - version "2.25.0" - resolved "https://registry.npm.taobao.org/webpack-hot-middleware/download/webpack-hot-middleware-2.25.0.tgz#4528a0a63ec37f8f8ef565cf9e534d57d09fe706" - integrity sha1-RSigpj7Df4+O9WXPnlNNV9Cf5wY= +webpack-hot-middleware@^2.26.0: + version "2.26.1" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.26.1.tgz#87214f1e3f9f3acab9271fef9e6ed7b637d719c0" + integrity sha512-khZGfAeJx6I8K9zKohEWWYN6KDlVw2DHownoe+6Vtwj1LP9WFgegXnVMSkZ/dBEBtXFwrkkydsaPFlB7f8wU2A== dependencies: - ansi-html "0.0.7" - html-entities "^1.2.0" - querystring "^0.2.0" - strip-ansi "^3.0.0" + ansi-html-community "0.0.8" + html-entities "^2.1.0" + strip-ansi "^6.0.0" webpack-node-externals@^3.0.0: version "3.0.0" - resolved "https://registry.npmjs.org/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz#1a3407c158d547a9feb4229a9e3385b7b60c9917" + resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz#1a3407c158d547a9feb4229a9e3385b7b60c9917" integrity sha512-LnL6Z3GGDPht/AigwRh2dvL9PQPFQ8skEpVrWZXLWBYmqcaojHNN0onvHzie6rq7EWKrrBfPYqNEzTJgiwEQDQ== webpack-sources@^1.0.1, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1, webpack-sources@^1.4.3: version "1.4.3" - resolved "https://registry.npm.taobao.org/webpack-sources/download/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" - integrity sha1-7t2OwLko+/HL/plOItLYkPMwqTM= + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== dependencies: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.46.0: - version "4.46.0" - resolved "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz#bf9b4404ea20a073605e0a011d188d77cb6ad542" - integrity sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q== +webpack@^4.47.0: + version "4.47.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.47.0.tgz#8b8a02152d7076aeb03b61b47dad2eeed9810ebc" + integrity sha512-td7fYwgLSrky3fI1EuU5cneU4+pbH6GgOfuKNS1tNPcfdGinGELAqsb/BP4nnvZyKSG2i/xFGU7+n2PvZA8HJQ== dependencies: "@webassemblyjs/ast" "1.9.0" "@webassemblyjs/helper-module-context" "1.9.0" @@ -11542,53 +11541,75 @@ webpack@^4.46.0: watchpack "^1.7.4" webpack-sources "^1.4.1" -webpackbar@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/webpackbar/download/webpackbar-4.0.0.tgz#ee7a87f16077505b5720551af413c8ecd5b1f780" - integrity sha1-7nqH8WB3UFtXIFUa9BPI7NWx94A= +webpackbar@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-6.0.1.tgz#5ef57d3bf7ced8b19025477bc7496ea9d502076b" + integrity sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q== dependencies: - ansi-escapes "^4.2.1" - chalk "^2.4.2" - consola "^2.10.0" - figures "^3.0.0" + ansi-escapes "^4.3.2" + chalk "^4.1.2" + consola "^3.2.3" + figures "^3.2.0" + markdown-table "^2.0.0" pretty-time "^1.1.0" - std-env "^2.2.1" - text-table "^0.2.0" - wrap-ansi "^6.0.0" + std-env "^3.7.0" + wrap-ansi "^7.0.0" whatwg-encoding@^1.0.5: version "1.0.5" - resolved "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== dependencies: iconv-lite "0.4.24" whatwg-mimetype@^2.3.0: version "2.3.0" - resolved "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== dependencies: tr46 "~0.0.3" webidl-conversions "^3.0.0" whatwg-url@^8.0.0, whatwg-url@^8.5.0: version "8.7.0" - resolved "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== dependencies: lodash "^4.7.0" tr46 "^2.1.0" webidl-conversions "^6.1.0" +which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which-typed-array@^1.1.14: + version "1.1.14" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.14.tgz#1f78a111aee1e131ca66164d8bdc3ab062c95a06" + integrity sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg== + dependencies: + available-typed-arrays "^1.0.6" + call-bind "^1.0.5" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.1" + which@^2.0.1, which@^2.0.2: version "2.0.2" - resolved "https://registry.npm.taobao.org/which/download/which-2.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwhich%2Fdownload%2Fwhich-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" - integrity sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE= + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== dependencies: isexe "^2.0.0" @@ -11601,55 +11622,50 @@ wide-align@^1.1.2, wide-align@^1.1.5: widest-line@^3.1.0: version "3.1.0" - resolved "https://registry.npm.taobao.org/widest-line/download/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" - integrity sha1-gpIzO79my0X/DeFgOxNreuFJbso= + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-3.1.0.tgz#8292333bbf66cb45ff0de1603b136b7ae1496eca" + integrity sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg== dependencies: string-width "^4.0.0" -word-wrap@~1.2.3: - version "1.2.3" - resolved "https://registry.npm.taobao.org/word-wrap/download/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" - integrity sha1-YQY29rH3A4kb00dxzLF/uTtHB5w= - workbox-cdn@^5.1.4: version "5.1.4" - resolved "https://registry.npmjs.org/workbox-cdn/-/workbox-cdn-5.1.4.tgz#dbd8acee70b1978be70106207590bbb76af935cf" + resolved "https://registry.yarnpkg.com/workbox-cdn/-/workbox-cdn-5.1.4.tgz#dbd8acee70b1978be70106207590bbb76af935cf" integrity sha512-04gM3mi8QGutokkSaA9xunVfjURnLbo9TTWyi8+pSDCEW5cD8u5GbJiliLK1vB9CShk/9OY1UDfW+XcmD+d6KQ== worker-farm@^1.7.0: version "1.7.0" - resolved "https://registry.npm.taobao.org/worker-farm/download/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" - integrity sha1-JqlMU5G7ypJhUgAvabhKS/dy5ag= + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" + integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== dependencies: errno "~0.1.7" -wrap-ansi@^6.0.0: - version "6.2.0" - resolved "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha1-6Tk7oHEC5skaOyIUePAlfNKFblM= - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" - resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" - resolved "https://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" - integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== write-file-atomic@^2.0.0: version "2.4.3" - resolved "https://registry.npm.taobao.org/write-file-atomic/download/write-file-atomic-2.4.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwrite-file-atomic%2Fdownload%2Fwrite-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" - integrity sha1-H9Lprh3z51uNjDZ0Q8aS1MqB9IE= + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== dependencies: graceful-fs "^4.1.11" imurmurhash "^0.1.4" @@ -11657,8 +11673,8 @@ write-file-atomic@^2.0.0: write-file-atomic@^3.0.0: version "3.0.3" - resolved "https://registry.npm.taobao.org/write-file-atomic/download/write-file-atomic-3.0.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwrite-file-atomic%2Fdownload%2Fwrite-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" - integrity sha1-Vr1cWlxwSBzRnFcb05q5ZaXeVug= + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== dependencies: imurmurhash "^0.1.4" is-typedarray "^1.0.0" @@ -11667,8 +11683,8 @@ write-file-atomic@^3.0.0: write-json-file@^2.3.0: version "2.3.0" - resolved "https://registry.npm.taobao.org/write-json-file/download/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" - integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" + integrity sha512-84+F0igFp2dPD6UpAQjOUX3CdKUOqUzn6oE9sDBNzUXINR5VceJ1rauZltqQB/bcYsx3EpKys4C7/PivKUAiWQ== dependencies: detect-indent "^5.0.0" graceful-fs "^4.1.2" @@ -11678,75 +11694,75 @@ write-json-file@^2.3.0: write-file-atomic "^2.0.0" ws@^7.3.1, ws@^7.4.6: - version "7.5.7" - resolved "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz#9e0ac77ee50af70d58326ecff7e85eb3fa375e67" - integrity sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A== - -xdg-basedir@^4.0.0: - version "4.0.0" - resolved "https://registry.npm.taobao.org/xdg-basedir/download/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" - integrity sha1-S8jZmEQDaWIl74OhVzy7y0552xM= + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== xml-name-validator@^3.0.0: version "3.0.0" - resolved "https://registry.npm.taobao.org/xml-name-validator/download/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha1-auc+Bt5NjG5H+fsYH3jWSK1FfGo= + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== xmlchars@^2.2.0: version "2.2.0" - resolved "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" - resolved "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" - integrity sha1-u3J3n1+kZRhrH0OPZ0+jR/2121Q= + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -xxhashjs@^0.2.1: +xxhashjs@~0.2.2: version "0.2.2" - resolved "https://registry.npm.taobao.org/xxhashjs/download/xxhashjs-0.2.2.tgz#8a6251567621a1c46a5ae204da0249c7f8caa9d8" - integrity sha1-imJRVnYhocRqWuIE2gJJx/jKqdg= + resolved "https://registry.yarnpkg.com/xxhashjs/-/xxhashjs-0.2.2.tgz#8a6251567621a1c46a5ae204da0249c7f8caa9d8" + integrity sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw== dependencies: cuint "^0.2.2" y18n@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4" - integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== y18n@^5.0.5: version "5.0.8" - resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== yallist@^2.1.2: version "2.1.2" - resolved "https://registry.npm.taobao.org/yallist/download/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== yallist@^3.0.2: version "3.1.1" - resolved "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" - integrity sha1-27fa+b/YusmrRev2ArjLrQ1dCP0= + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yallist@^4.0.0: version "4.0.0" - resolved "https://registry.npm.taobao.org/yallist/download/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI= + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.10.0, yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-parser@^21.0.0: - version "21.0.1" - resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.0.1.tgz#0267f286c877a4f0f728fceb6f8a3e4cb95c6e35" - integrity sha512-9BK1jFpLzJROCI5TzwZL/TU4gqjK5xiHV/RfWLOahrjAko/e4DJkRDZQXfvqAsiZzzYhgAzbgz6lg48jcm4GLg== +yargs-parser@^21.1.1: + version "21.1.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" + integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== yargs@^16.2.0: version "16.2.0" - resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" @@ -11758,19 +11774,19 @@ yargs@^16.2.0: yargs-parser "^20.2.2" yargs@^17.2.1: - version "17.4.0" - resolved "https://registry.npmjs.org/yargs/-/yargs-17.4.0.tgz#9fc9efc96bd3aa2c1240446af28499f0e7593d00" - integrity sha512-WJudfrk81yWFSOkZYpAZx4Nt7V4xp7S/uJkX0CnxovMCt1wCE8LNftPpNuF9X/u9gN5nsD7ycYtRcDf2pL3UiA== + version "17.7.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" + integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== dependencies: - cliui "^7.0.2" + cliui "^8.0.1" escalade "^3.1.1" get-caller-file "^2.0.5" require-directory "^2.1.1" string-width "^4.2.3" y18n "^5.0.5" - yargs-parser "^21.0.0" + yargs-parser "^21.1.1" yocto-queue@^0.1.0: version "0.1.0" - resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== diff --git a/web/200.html b/web/200.html index e40ce4914..bd545ff55 100644 --- a/web/200.html +++ b/web/200.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/_nuxt/053da87.js b/web/_nuxt/053da87.js deleted file mode 100644 index ab2cda011..000000000 --- a/web/_nuxt/053da87.js +++ /dev/null @@ -1 +0,0 @@ -(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{478:function(module,exports,__webpack_require__){eval("// style-loader: Adds some css to the DOM by adding a \");\n }\n }, {\n key: \"initTheme\",\n value: function initTheme(root) {\n var _this3 = this;\n // Only watch for reactivity on client side\n if (typeof document === 'undefined') return; // If we get here somehow, ensure\n // existing instance is removed\n\n if (this.unwatch) {\n this.unwatch();\n this.unwatch = null;\n } // TODO: Update to use RFC if merged\n // https://github.com/vuejs/rfcs/blob/advanced-reactivity-api/active-rfcs/0000-advanced-reactivity-api.md\n\n root.$once('hook:created', function () {\n var obs = vue_runtime_esm[\"a\" /* default */].observable({\n themes: _this3.themes\n });\n _this3.unwatch = root.$watch(function () {\n return obs.themes;\n }, function () {\n return _this3.applyTheme();\n }, {\n deep: true\n });\n });\n this.applyTheme();\n }\n }, {\n key: \"currentTheme\",\n get: function get() {\n var target = this.dark ? 'dark' : 'light';\n return this.themes[target];\n }\n }, {\n key: \"generatedStyles\",\n get: function get() {\n var theme = this.parsedTheme;\n /* istanbul ignore next */\n\n var options = this.options || {};\n var css;\n if (options.themeCache != null) {\n css = options.themeCache.get(theme);\n /* istanbul ignore if */\n\n if (css != null) return css;\n }\n css = genStyles(theme, options.customProperties);\n if (options.minifyTheme != null) {\n css = options.minifyTheme(css);\n }\n if (options.themeCache != null) {\n options.themeCache.set(theme, css);\n }\n return css;\n }\n }, {\n key: \"parsedTheme\",\n get: function get() {\n return parse(this.currentTheme || {}, undefined, Object(helpers[\"o\" /* getNestedValue */])(this.options, ['variations'], true));\n } // Is using v2.3 of vue-meta\n // https://github.com/nuxt/vue-meta/releases/tag/v2.3.0\n }, {\n key: \"isVueMeta23\",\n get: function get() {\n return typeof this.vueMeta.addApp === 'function';\n }\n }]);\n return Theme;\n}(service[\"a\" /* Service */]);\ntheme_Theme.property = 'theme';\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/framework.js\n\n\n\n\n\n\n // Services\n\n\nvar framework_Vuetify = /*#__PURE__*/function () {\n function Vuetify() {\n var userPreset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n Object(classCallCheck[\"a\" /* default */])(this, Vuetify);\n this.framework = {\n isHydrating: false\n };\n this.installed = [];\n this.preset = {};\n this.userPreset = {};\n this.userPreset = userPreset;\n this.use(presets_Presets);\n this.use(application_Application);\n this.use(breakpoint_Breakpoint);\n this.use(services_goto[\"a\" /* Goto */]);\n this.use(icons_Icons);\n this.use(lang_Lang);\n this.use(theme_Theme);\n } // Called on the new vuetify instance\n // bootstrap in install beforeCreate\n // Exposes ssrContext if available\n Object(createClass[\"a\" /* default */])(Vuetify, [{\n key: \"init\",\n value: function init(root, ssrContext) {\n var _this = this;\n this.installed.forEach(function (property) {\n var service = _this.framework[property];\n service.framework = _this.framework;\n service.init(root, ssrContext);\n }); // rtl is not installed and\n // will never be called by\n // the init process\n\n this.framework.rtl = Boolean(this.preset.rtl);\n } // Instantiate a VuetifyService\n }, {\n key: \"use\",\n value: function use(Service) {\n var property = Service.property;\n if (this.installed.includes(property)) return; // TODO maybe a specific type for arg 2?\n\n this.framework[property] = new Service(this.preset, this);\n this.installed.push(property);\n }\n }]);\n return Vuetify;\n}();\n\nframework_Vuetify.install = install;\nframework_Vuetify.installed = false;\nframework_Vuetify.version = \"2.7.2\";\nframework_Vuetify.config = {\n silent: false\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vc3JjL2luc3RhbGwudHM/Nzc0NCIsIndlYnBhY2s6Ly8vLi4vLi4vc3JjL2xvY2FsZS9lbi50cz80OTYyIiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvcHJlc2V0cy9kZWZhdWx0L2luZGV4LnRzP2ZiZjUiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9wcmVzZXRzL2luZGV4LnRzP2Y5OGYiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9hcHBsaWNhdGlvbi9pbmRleC50cz9hMmJkIiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvc2VydmljZXMvYnJlYWtwb2ludC9pbmRleC50cz80YTRkIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvaWNvbnMvcHJlc2V0cy9tZGktc3ZnLnRzP2UwNjMiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL21kLnRzPzJkYjgiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL21kaS50cz81MDVmIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvaWNvbnMvcHJlc2V0cy9mYS50cz82MDJkIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvaWNvbnMvcHJlc2V0cy9mYTQudHM/MTIzYSIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ljb25zL3ByZXNldHMvZmEtc3ZnLnRzP2U2OGUiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL2luZGV4LnRzPzFjYTgiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9pbmRleC50cz84YTA0Iiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvc2VydmljZXMvbGFuZy9pbmRleC50cz9hNWM5Iiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvdXRpbC9jb2xvci90cmFuc2Zvcm1DSUVMQUIudHM/Y2Y3OSIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3RoZW1lL3V0aWxzLnRzPzIyNWUiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy90aGVtZS9pbmRleC50cz9jZWI2Iiwid2VicGFjazovLy8uLi9zcmMvZnJhbWV3b3JrLnRzP2JiYmQiXSwibmFtZXMiOlsiaW5zdGFsbCIsIlZ1ZSIsImFyZ3MiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJpbnN0YWxsZWQiLCJPdXJWdWUiLCJjb25zb2xlRXJyb3IiLCJjb21wb25lbnRzIiwiZGlyZWN0aXZlcyIsIm5hbWUiLCJkaXJlY3RpdmUiLCJyZWdpc3RlckNvbXBvbmVudHMiLCJrZXkiLCJjb21wb25lbnQiLCIkX3Z1ZXRpZnlfc3ViY29tcG9uZW50cyIsIiRfdnVldGlmeV9pbnN0YWxsZWQiLCJtaXhpbiIsImJlZm9yZUNyZWF0ZSIsIm9wdGlvbnMiLCIkb3B0aW9ucyIsInZ1ZXRpZnkiLCJpbml0IiwiJHNzckNvbnRleHQiLCIkdnVldGlmeSIsIm9ic2VydmFibGUiLCJmcmFtZXdvcmsiLCJwYXJlbnQiLCJiZWZvcmVNb3VudCIsIiRlbCIsImhhc0F0dHJpYnV0ZSIsImlzSHlkcmF0aW5nIiwiYnJlYWtwb2ludCIsInVwZGF0ZSIsIm1vdW50ZWQiLCJiYWRnZSIsImNsb3NlIiwiZGF0YUl0ZXJhdG9yIiwibm9SZXN1bHRzVGV4dCIsImxvYWRpbmdUZXh0IiwiZGF0YVRhYmxlIiwiaXRlbXNQZXJQYWdlVGV4dCIsImFyaWFMYWJlbCIsInNvcnREZXNjZW5kaW5nIiwic29ydEFzY2VuZGluZyIsInNvcnROb25lIiwiYWN0aXZhdGVOb25lIiwiYWN0aXZhdGVEZXNjZW5kaW5nIiwiYWN0aXZhdGVBc2NlbmRpbmciLCJzb3J0QnkiLCJkYXRhRm9vdGVyIiwiaXRlbXNQZXJQYWdlQWxsIiwibmV4dFBhZ2UiLCJwcmV2UGFnZSIsImZpcnN0UGFnZSIsImxhc3RQYWdlIiwicGFnZVRleHQiLCJkYXRlUGlja2VyIiwiaXRlbXNTZWxlY3RlZCIsIm5leHRNb250aEFyaWFMYWJlbCIsIm5leHRZZWFyQXJpYUxhYmVsIiwicHJldk1vbnRoQXJpYUxhYmVsIiwicHJldlllYXJBcmlhTGFiZWwiLCJub0RhdGFUZXh0IiwiY2Fyb3VzZWwiLCJwcmV2IiwibmV4dCIsImRlbGltaXRlciIsImNhbGVuZGFyIiwibW9yZUV2ZW50cyIsImlucHV0IiwiY2xlYXIiLCJwcmVwZW5kQWN0aW9uIiwiYXBwZW5kQWN0aW9uIiwiZmlsZUlucHV0IiwiY291bnRlciIsImNvdW50ZXJTaXplIiwidGltZVBpY2tlciIsImFtIiwicG0iLCJwYWdpbmF0aW9uIiwid3JhcHBlciIsInByZXZpb3VzIiwicGFnZSIsImN1cnJlbnRQYWdlIiwicmF0aW5nIiwiaWNvbiIsImxvYWRpbmciLCJwcmVzZXQiLCJtb2JpbGVCcmVha3BvaW50Iiwic2Nyb2xsQmFyV2lkdGgiLCJ0aHJlc2hvbGRzIiwieHMiLCJzbSIsIm1kIiwibGciLCJpY29ucyIsImljb25mb250IiwidmFsdWVzIiwibGFuZyIsImN1cnJlbnQiLCJsb2NhbGVzIiwiZW4iLCJ0IiwicnRsIiwidGhlbWUiLCJkYXJrIiwiZGVmYXVsdCIsImRpc2FibGUiLCJjc3BOb25jZSIsImN1c3RvbVByb3BlcnRpZXMiLCJtaW5pZnlUaGVtZSIsInRoZW1lQ2FjaGUiLCJ2YXJpYXRpb25zIiwidGhlbWVzIiwibGlnaHQiLCJwcmltYXJ5Iiwic2Vjb25kYXJ5IiwiYWNjZW50IiwiZXJyb3IiLCJpbmZvIiwic3VjY2VzcyIsIndhcm5pbmciLCJQcmVzZXRzIiwiX1NlcnZpY2UiLCJfaW5oZXJpdHMiLCJwYXJlbnRQcmVzZXQiLCJfdGhpcyIsIl9jbGFzc0NhbGxDaGVjayIsIl9jYWxsU3VwZXIiLCJkZWZhdWx0UHJlc2V0IiwibWVyZ2VEZWVwIiwiUHJlc2V0IiwidXNlclByZXNldCIsIl91c2VyUHJlc2V0JHByZXNldCIsImdsb2JhbFByZXNldCIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsIl9leGNsdWRlZCIsImNvbnNvbGVXYXJuIiwiX2NyZWF0ZUNsYXNzIiwiU2VydmljZSIsInByb3BlcnR5IiwiQXBwbGljYXRpb24iLCJiYXIiLCJ0b3AiLCJsZWZ0IiwiaW5zZXRGb290ZXIiLCJyaWdodCIsImJvdHRvbSIsImZvb3RlciIsImFwcGxpY2F0aW9uIiwidmFsdWUiLCJyZWdpc3RlciIsInVpZCIsImxvY2F0aW9uIiwic2l6ZSIsInVucmVnaXN0ZXIiLCJPYmplY3QiLCJyZWR1Y2UiLCJhY2MiLCJjdXIiLCJCcmVha3BvaW50IiwieGwiLCJ4c09ubHkiLCJzbU9ubHkiLCJzbUFuZERvd24iLCJzbUFuZFVwIiwibWRPbmx5IiwibWRBbmREb3duIiwibWRBbmRVcCIsImxnT25seSIsImxnQW5kRG93biIsImxnQW5kVXAiLCJ4bE9ubHkiLCJoZWlnaHQiLCJ3aWR0aCIsIm1vYmlsZSIsInJlc2l6ZVRpbWVvdXQiLCJfcHJlc2V0JEJyZWFrcG9pbnQkcHIiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwib25SZXNpemUiLCJiaW5kIiwicGFzc2l2ZSIsInNzciIsImdldENsaWVudEhlaWdodCIsImdldENsaWVudFdpZHRoIiwicGFyc2VJbnQiLCJicmVha3BvaW50cyIsIm1heCIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJkb2N1bWVudCIsIk1hdGgiLCJkb2N1bWVudEVsZW1lbnQiLCJjbGllbnRXaWR0aCIsImlubmVyV2lkdGgiLCJjbGllbnRIZWlnaHQiLCJpbm5lckhlaWdodCIsImNvbXBsZXRlIiwiY2FuY2VsIiwiZGVsZXRlIiwiY2hlY2tib3hPbiIsImNoZWNrYm94T2ZmIiwiY2hlY2tib3hJbmRldGVybWluYXRlIiwic29ydCIsImV4cGFuZCIsIm1lbnUiLCJzdWJncm91cCIsImRyb3Bkb3duIiwicmFkaW9PbiIsInJhZGlvT2ZmIiwiZWRpdCIsInJhdGluZ0VtcHR5IiwicmF0aW5nRnVsbCIsInJhdGluZ0hhbGYiLCJmaXJzdCIsImxhc3QiLCJ1bmZvbGQiLCJmaWxlIiwicGx1cyIsIm1pbnVzIiwiY29udmVydFRvQ29tcG9uZW50RGVjbGFyYXRpb25zIiwiaWNvblNldCIsInJlc3VsdCIsInByb3BzIiwic3BsaXQiLCJmcmVlemUiLCJtZGlTdmciLCJtZGkiLCJmYSIsImZhNCIsImZhU3ZnIiwiSWNvbnMiLCJfcHJlc2V0JEljb25zJHByb3BlcnQiLCJwcmVzZXRzIiwiTEFOR19QUkVGSVgiLCJmYWxsYmFjayIsIlN5bWJvbCIsImdldFRyYW5zbGF0aW9uIiwibG9jYWxlIiwidXNpbmdEZWZhdWx0IiwiZGVmYXVsdExvY2FsZSIsInNob3J0S2V5IiwicmVwbGFjZSIsInRyYW5zbGF0aW9uIiwiZ2V0T2JqZWN0VmFsdWVCeVBhdGgiLCJjb25jYXQiLCJMYW5nIiwiX3ByZXNldCRMYW5nJHByb3BlcnR5IiwidHJhbnNsYXRvciIsImRlZmF1bHRUcmFuc2xhdG9yIiwiY3VycmVudExvY2FsZSIsIl9sZW4iLCJwYXJhbXMiLCJBcnJheSIsIl9rZXkiLCJzdGFydHNXaXRoIiwiYXBwbHkiLCJfbGVuMiIsIl9rZXkyIiwic3RyIiwibWF0Y2giLCJpbmRleCIsIlN0cmluZyIsImRlbHRhIiwiY2llbGFiRm9yd2FyZFRyYW5zZm9ybSIsInBvdyIsImNicnQiLCJjaWVsYWJSZXZlcnNlVHJhbnNmb3JtIiwiZnJvbVhZWiIsInh5eiIsInRyYW5zZm9ybSIsInRyYW5zZm9ybWVkWSIsInRvWFlaIiwibGFiIiwiTG4iLCJwYXJzZSIsImlzSXRlbSIsImFuY2hvciIsInZhcmlhbnQiLCJjb2xvcnMiLCJrZXlzIiwicGFyc2VkVGhlbWUiLCJpIiwiYmFzZSIsImludFRvSGV4IiwiY29sb3JUb0ludCIsImNvbG9yVG9IZXgiLCJfdHlwZW9mIiwiZ2VuVmFyaWF0aW9ucyIsImdlbkJhc2VDb2xvciIsImdlblZhcmlhbnRDb2xvciIsIl92YXJpYW50JHNwbGl0IiwiX3ZhcmlhbnQkc3BsaXQyIiwiX3NsaWNlZFRvQXJyYXkiLCJ0eXBlIiwibiIsImdlbkNvbG9yVmFyaWFibGVOYW1lIiwiZ2VuQ29sb3JWYXJpYWJsZSIsImdlblN0eWxlcyIsImNzc1ZhciIsIl9leGNsdWRlZDIiLCJ2YXJpYWJsZXNDc3MiLCJjc3MiLCJhQ29sb3IiLCJ2YXJpYW50cyIsInZhcmlhbnRWYWx1ZSIsImxpZ2h0ZW4iLCJkYXJrZW4iLCJhbW91bnQiLCJMQUIiLCJzUkdCIiwiVGhlbWUiLCJkaXNhYmxlZCIsImlzRGFyayIsInVud2F0Y2giLCJ2dWVNZXRhIiwiX3ByZXNldCRUaGVtZSRwcm9wZXJ0IiwiQm9vbGVhbiIsImRlZmF1bHRzIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4iLCJmaWxsVmFyaWFudCIsInNldCIsInZhbCIsImlzVnVlTWV0YTIzIiwiYXBwbHlWdWVNZXRhMjMiLCJjaGVja09yQ3JlYXRlU3R5bGVFbGVtZW50Iiwic3R5bGVFbCIsImlubmVySFRNTCIsImdldCIsIm9sZERhcmsiLCJhcHBseVRoZW1lIiwiY2xlYXJDc3MiLCJnZW5lcmF0ZWRTdHlsZXMiLCJyb290Iiwic3NyQ29udGV4dCIsIiRtZXRhIiwiaW5pdFZ1ZU1ldGEiLCJpbml0U1NSIiwiaW5pdFRoZW1lIiwic2V0VGhlbWUiLCJhc3NpZ24iLCJyZXNldFRoZW1lcyIsImdldEVsZW1lbnRCeUlkIiwiZ2VuU3R5bGVFbGVtZW50IiwiZGVmYXVsdFRoZW1lIiwiY3JlYXRlRWxlbWVudCIsImlkIiwic2V0QXR0cmlidXRlIiwiaGVhZCIsImFwcGVuZENoaWxkIiwiX3RoaXMyIiwiJG5leHRUaWNrIiwibWV0YUtleU5hbWUiLCJnZXRPcHRpb25zIiwia2V5TmFtZSIsIm1ldGFJbmZvIiwic3R5bGUiLCJ2dWV0aWZ5U3R5bGVzaGVldCIsImZpbmQiLCJzIiwicHVzaCIsImNzc1RleHQiLCJub25jZSIsIl90aGlzJHZ1ZU1ldGEkYWRkQXBwIiwiYWRkQXBwIiwiX3RoaXMzIiwiJG9uY2UiLCJvYnMiLCIkd2F0Y2giLCJkZWVwIiwidGFyZ2V0IiwiVGhlbWVVdGlscyIsImN1cnJlbnRUaGVtZSIsImdldE5lc3RlZFZhbHVlIiwiVnVldGlmeSIsInVzZSIsInNlcnZpY2VzIiwiZm9yRWFjaCIsInNlcnZpY2UiLCJpbmNsdWRlcyIsInZlcnNpb24iLCJjb25maWciLCJzaWxlbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFFQTtBQUVNLFNBQVVBLE9BQVZBLENBQW1CQyxHQUFuQixFQUFvRTtFQUFBLElBQTVCQyxJQUFBLEdBQUFDLFNBQUEsQ0FBQUMsTUFBQSxRQUFBRCxTQUFBLFFBQUFFLFNBQUEsR0FBQUYsU0FBQSxNQUEwQixFQUFsRTtFQUNKLElBQUtILE9BQWUsQ0FBQ00sU0FBckIsRUFBZ0M7RUFDL0JOLE9BQWUsQ0FBQ00sU0FBaEIsR0FBNEIsSUFBNUI7RUFFRCxJQUFJQyxrQ0FBTSxLQUFLTixHQUFmLEVBQW9CO0lBQ2xCTyx1Q0FBWSw0SkFBWjtFQUlEO0VBRUQsSUFBTUMsVUFBVSxHQUFHUCxJQUFJLENBQUNPLFVBQUwsSUFBbUIsRUFBdEM7RUFDQSxJQUFNQyxVQUFVLEdBQUdSLElBQUksQ0FBQ1EsVUFBTCxJQUFtQixFQUF0QztFQUVBLEtBQUssSUFBTUMsSUFBWCxJQUFtQkQsVUFBbkIsRUFBK0I7SUFDN0IsSUFBTUUsU0FBUyxHQUFHRixVQUFVLENBQUNDLElBQUQsQ0FBNUI7SUFFQVYsR0FBRyxDQUFDVyxTQUFKLENBQWNELElBQWQsRUFBb0JDLFNBQXBCO0VBQ0Q7RUFFRCxDQUFDLFNBQVNDLGtCQUFUQSxDQUE2QkosVUFBN0IsRUFBNEM7SUFDM0MsSUFBSUEsVUFBSixFQUFnQjtNQUNkLEtBQUssSUFBTUssR0FBWCxJQUFrQkwsVUFBbEIsRUFBOEI7UUFDNUIsSUFBTU0sU0FBUyxHQUFHTixVQUFVLENBQUNLLEdBQUQsQ0FBNUI7UUFDQSxJQUFJQyxTQUFTLElBQUksQ0FBQ0Ysa0JBQWtCLENBQUNFLFNBQVMsQ0FBQ0MsdUJBQVgsQ0FBcEMsRUFBeUU7VUFDdkVmLEdB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bEM7TUFDQTtNQUNBOztNQUNBLEtBQUt0VCxTQUFMLENBQWU4RSxHQUFmLEdBQXFCdU4sT0FBTyxDQUFDLEtBQUt2TyxNQUFMLENBQVlnQixHQUFiLENBQTVCO0lBQ0QsQ0FqRHlCLENBbUQxQjtFQUFBO0lBQUEzRixHQUFBO0lBQUEwSSxLQUFBLEVBQ0EsU0FBQWtPLElBQUs3TyxPQUFGLEVBQXlCO01BQzFCLElBQU1DLFFBQVEsR0FBR0QsT0FBTyxDQUFDQyxRQUF6QjtNQUVBLElBQUksS0FBS3hJLFNBQUwsQ0FBZXdYLFFBQWYsQ0FBd0JoUCxRQUF4QixDQUFKLEVBQXVDLE9BSGIsQ0FLMUI7O01BQ0EsS0FBS25ILFNBQUwsQ0FBZW1ILFFBQWYsSUFBMkIsSUFBSUQsT0FBSixDQUFZLEtBQUtwRCxNQUFqQixFQUF5QixJQUF6QixDQUEzQjtNQUNBLEtBQUtuRixTQUFMLENBQWVxVyxJQUFmLENBQW9CN04sUUFBcEI7SUFDRDtFQUFBO0VBQUEsT0FBQTJPLE9BQUE7QUFBQTtBQTVEVztBQUNMQSxpQkFBQSxDQUFBelgsT0FBQSxHQUFVQSxPQUFWO0FBRUF5WCxpQkFBQSxDQUFBblgsU0FBQSxHQUFZLEtBQVo7QUFFQW1YLGlCQUFBLENBQUFNLE9BQUE7QUFFQU4saUJBQUEsQ0FBQU8sTUFBQSxHQUFTO0VBQ2RDLE1BQU0sRUFBRTtBQURNLENBQVQiLCJmaWxlIjoiMTY2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE91clZ1ZSwgeyBWdWVDb25zdHJ1Y3RvciB9IGZyb20gJ3Z1ZSdcbmltcG9ydCB7IFZ1ZXRpZnlVc2VPcHRpb25zIH0gZnJvbSAndnVldGlmeS90eXBlcydcbmltcG9ydCB7IGNvbnNvbGVFcnJvciB9IGZyb20gJy4vdXRpbC9jb25zb2xlJ1xuXG5leHBvcnQgZnVuY3Rpb24gaW5zdGFsbCAoVnVlOiBWdWVDb25zdHJ1Y3RvciwgYXJnczogVnVldGlmeVVzZU9wdGlvbnMgPSB7fSkge1xuICBpZiAoKGluc3RhbGwgYXMgYW55KS5pbnN0YWxsZWQpIHJldHVyblxuICAoaW5zdGFsbCBhcyBhbnkpLmluc3RhbGxlZCA9IHRydWVcblxuICBpZiAoT3VyVnVlICE9PSBWdWUpIHtcbiAgICBjb25zb2xlRXJyb3IoYE11bHRpcGxlIGluc3RhbmNlcyBvZiBWdWUgZGV0ZWN0ZWRcblNlZSBodHRwczovL2dpdGh1Yi5jb20vdnVldGlmeWpzL3Z1ZXRpZnkvaXNzdWVzLzQwNjhcblxuSWYgeW91J3JlIHNlZWluZyBcIiRhdHRycyBpcyByZWFkb25seVwiLCBpdCdzIGNhdXNlZCBieSB0aGlzYClcbiAgfVxuXG4gIGNvbnN0IGNvbXBvbmVudHMgPSBhcmdzLmNvbXBvbmVudHMgfHwge31cbiAgY29uc3QgZGlyZWN0aXZlcyA9IGFyZ3MuZGlyZWN0aXZlcyB8fCB7fVxuXG4gIGZvciAoY29uc3QgbmFtZSBpbiBkaXJlY3RpdmVzKSB7XG4gICAgY29uc3QgZGlyZWN0aXZlID0gZGlyZWN0aXZlc1tuYW1lXVxuXG4gICAgVnVlLmRpcmVjdGl2ZShuYW1lLCBkaXJlY3RpdmUpXG4gIH1cblxuICAoZnVuY3Rpb24gcmVnaXN0ZXJDb21wb25lbnRzIChjb21wb25lbnRzOiBhbnkpIHtcbiAgICBpZiAoY29tcG9uZW50cykge1xuICAgICAgZm9yIChjb25zdCBrZXkgaW4gY29tcG9uZW50cykge1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBjb21wb25lbnRzW2tleV1cbiAgICAgICAgaWYgKGNvbXBvbmVudCAmJiAhcmVnaXN0ZXJDb21wb25lbnRzKGNvbXBvbmVudC4kX3Z1ZXRpZnlfc3ViY29tcG9uZW50cykpIHtcbiAgICAgICAgICBWdWUuY29tcG9uZW50KGtleSwgY29tcG9uZW50IGFzIHR5cGVvZiBWdWUpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICAgIHJldHVybiBmYWxzZVxuICB9KShjb21wb25lbnRzKVxuXG4gIC8vIFVzZWQgdG8gYXZvaWQgbXVsdGlwbGUgbWl4aW5zIGJlaW5nIHNldHVwXG4gIC8vIHdoZW4gaW4gZGV2IG1vZGUgYW5kIGhvdCBtb2R1bGUgcmVsb2FkXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS92dWVqcy92dWUvaXNzdWVzLzUwODkjaXNzdWVjb21tZW50LTI4NDI2MDExMVxuICBpZiAoVnVlLiRfdnVldGlmeV9pbnN0YWxsZWQpIHJldHVyblxuICBWdWUuJF92dWV0aWZ5X2luc3RhbGxlZCA9IHRydWVcblxuICBWdWUubWl4aW4oe1xuICAgIGJlZm9yZUNyZWF0ZSAoKSB7XG4gICAgICBjb25zdCBvcHRpb25zID0gdGhpcy4kb3B0aW9ucyBhcyBhbnlcblxuICAgICAgaWYgKG9wdGlvbnMudnVldGlmeSkge1xuICAgICAgICBvcHRpb25zLnZ1ZXRpZnkuaW5pdCh0aGlzLCB0aGlzLiRzc3JDb250ZXh0KVxuICAgICAgICB0aGlzLiR2dWV0aWZ5ID0gVnVlLm9ic2VydmFibGUob3B0aW9ucy52dWV0aWZ5LmZyYW1ld29yaylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkgPSAob3B0aW9ucy5wYXJlbnQgJiYgb3B0aW9ucy5wYXJlbnQuJHZ1ZXRpZnkpIHx8IHRoaXNcbiAgICAgIH1cbiAgICB9LFxuICAgIGJlZm9yZU1vdW50ICgpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmICh0aGlzLiRvcHRpb25zLnZ1ZXRpZnkgJiYgdGhpcy4kZWwgJiYgdGhpcy4kZWwuaGFzQXR0cmlidXRlKCdkYXRhLXNlcnZlci1yZW5kZXJlZCcpKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdGhpcy4kdnVldGlmeS5pc0h5ZHJhdGluZyA9IHRydWVcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQudXBkYXRlKHRydWUpXG4gICAgICB9XG4gICAgfSxcbiAgICBtb3VudGVkICgpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmICh0aGlzLiRvcHRpb25zLnZ1ZXRpZnkgJiYgdGhpcy4kdnVldGlmeS5pc0h5ZHJhdGluZykge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkuaXNIeWRyYXRpbmcgPSBmYWxzZVxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkuYnJlYWtwb2ludC51cGRhdGUoKVxuICAgICAgfVxuICAgIH0sXG4gIH0pXG59XG4iLCJleHBvcnQgZGVmYXVsdCB7XG4gIGJhZGdlOiAnQmFkZ2UnLFxuICBjbG9zZTogJ0Nsb3NlJyxcbiAgZGF0YUl0ZXJhdG9yOiB7XG4gICAgbm9SZXN1bHRzVGV4dDogJ05vIG1hdGNoaW5nIHJlY29yZHMgZm91bmQnLFxuICAgIGxvYWRpbmdUZXh0OiAnTG9hZGluZyBpdGVtcy4uLicsXG4gIH0sXG4gIGRhdGFUYWJsZToge1xuICAgIGl0ZW1zUGVyUGFnZVRleHQ6ICdSb3dzIHBlciBwYWdlOicsXG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICBzb3J0RGVzY2VuZGluZzogJ1NvcnRlZCBkZXNjZW5kaW5nLicsXG4gICAgICBzb3J0QXNjZW5kaW5nOiAnU29ydGVkIGFzY2VuZGluZy4nLFxuICAgICAgc29ydE5vbmU6ICdOb3Qgc29ydGVkLicsXG4gICAgICBhY3RpdmF0ZU5vbmU6ICdBY3RpdmF0ZSB0byByZW1vdmUgc29ydGluZy4nLFxuICAgICAgYWN0aXZhdGVEZXNjZW5kaW5nOiAnQWN0aXZhdGUgdG8gc29ydCBkZXNjZW5kaW5nLicsXG4gICAgICBhY3RpdmF0ZUFzY2VuZGluZzogJ0FjdGl2YXRlIHRvIHNvcnQgYXNjZW5kaW5nLicsXG4gICAgfSxcbiAgICBzb3J0Qnk6ICdTb3J0IGJ5JyxcbiAgfSxcbiAgZGF0YUZvb3Rlcjoge1xuICAgIGl0ZW1zUGVyUGFnZVRleHQ6ICdJdGVtcyBwZXIgcGFnZTonLFxuICAgIGl0ZW1zUGVyUGFnZUFsbDogJ0FsbCcsXG4gICAgbmV4dFBhZ2U6ICdOZXh0IHBhZ2UnLFxuICAgIHByZXZQYWdlOiAnUHJldmlvdXMgcGFnZScsXG4gICAgZmlyc3RQYWdlOiAnRmlyc3QgcGFnZScsXG4gICAgbGFzdFBhZ2U6ICdMYXN0IHBhZ2UnLFxuICAgIHBhZ2VUZXh0OiAnezB9LXsxfSBvZiB7Mn0nLFxuICB9LFxuICBkYXRlUGlja2VyOiB7XG4gICAgaXRlbXNTZWxlY3RlZDogJ3swfSBzZWxlY3RlZCcsXG4gICAgbmV4dE1vbnRoQXJpYUxhYmVsOiAnTmV4dCBtb250aCcsXG4gICAgbmV4dFllYXJBcmlhTGFiZWw6ICdOZXh0IHllYXInLFxuICAgIHByZXZNb250aEFyaWFMYWJlbDogJ1ByZXZpb3VzIG1vbnRoJyxcbiAgICBwcmV2WWVhckFyaWFMYWJlbDogJ1ByZXZpb3VzIHllYXInLFxuICB9LFxuICBub0RhdGFUZXh0OiAnTm8gZGF0YSBhdmFpbGFibGUnLFxuICBjYXJvdXNlbDoge1xuICAgIHByZXY6ICdQcmV2aW91cyB2aXN1YWwnLFxuICAgIG5leHQ6ICdOZXh0IHZpc3VhbCcsXG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICBkZWxpbWl0ZXI6ICdDYXJvdXNlbCBzbGlkZSB7MH0gb2YgezF9JyxcbiAgICB9LFxuICB9LFxuICBjYWxlbmRhcjoge1xuICAgIG1vcmVFdmVudHM6ICd7MH0gbW9yZScsXG4gIH0sXG4gIGlucHV0OiB7XG4gICAgY2xlYXI6ICdDbGVhciB7MH0nLFxuICAgIHByZXBlbmRBY3Rpb246ICd7MH0gcHJlcGVuZGVkIGFjdGlvbicsXG4gICAgYXBwZW5kQWN0aW9uOiAnezB9IGFwcGVuZGVkIGFjdGlvbicsXG4gIH0sXG4gIGZpbGVJbnB1dDoge1xuICAgIGNvdW50ZXI6ICd7MH0gZmlsZXMnLFxuICAgIGNvdW50ZXJTaXplOiAnezB9IGZpbGVzICh7MX0gaW4gdG90YWwpJyxcbiAgfSxcbiAgdGltZVBpY2tlcjoge1xuICAgIGFtOiAnQU0nLFxuICAgIHBtOiAnUE0nLFxuICB9LFxuICBwYWdpbmF0aW9uOiB7XG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICB3cmFwcGVyOiAnUGFnaW5hdGlvbiBOYXZpZ2F0aW9uJyxcbiAgICAgIG5leHQ6ICdOZXh0IHBhZ2UnLFxuICAgICAgcHJldmlvdXM6ICdQcmV2aW91cyBwYWdlJyxcbiAgICAgIHBhZ2U6ICdHb3RvIFBhZ2UgezB9JyxcbiAgICAgIGN1cnJlbnRQYWdlOiAnQ3VycmVudCBQYWdlLCBQYWdlIHswfScsXG4gICAgfSxcbiAgfSxcbiAgcmF0aW5nOiB7XG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICBpY29uOiAnUmF0aW5nIHswfSBvZiB7MX0nLFxuICAgIH0sXG4gIH0sXG4gIGxvYWRpbmc6ICdMb2FkaW5nLi4uJyxcbn1cbiIsIi8vIFN0eWxlc1xuaW1wb3J0ICcuLi8uLi9zdHlsZXMvbWFpbi5zYXNzJ1xuXG4vLyBMb2NhbGVcbmltcG9ydCB7IGVuIH0gZnJvbSAnLi4vLi4vbG9jYWxlJ1xuXG4vLyBJY29uc1xuLy8gVE9ETzogRW5hYmxlIGZvciB2M1xuLy8gaW1wb3J0IG1kaSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL21kaSdcblxuLy8gVHlwZXNcbmltcG9ydCB7IFZ1ZXRpZnlQcmVzZXQgfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL3ByZXNldHMnXG5cbmV4cG9ydCBjb25zdCBwcmVzZXQ6IFZ1ZXRpZnlQcmVzZXQgPSB7XG4gIGJyZWFrcG9pbnQ6IHtcbiAgICAvLyBUT0RPOiB1cGRhdGUgdG8gTUQyIHNwZWMgaW4gdjMgLSAxMjgwXG4gICAgbW9iaWxlQnJlYWtwb2ludDogMTI2NCxcbiAgICBzY3JvbGxCYXJXaWR0aDogMTYsXG4gICAgdGhyZXNob2xkczoge1xuICAgICAgeHM6IDYwMCxcbiAgICAgIHNtOiA5NjAsXG4gICAgICBtZDogMTI4MCxcbiAgICAgIGxnOiAxOTIwLFxuICAgIH0sXG4gIH0sXG4gIGljb25zOiB7XG4gICAgLy8gVE9ETzogcmVtb3ZlIHYzXG4gICAgaWNvbmZvbnQ6ICdtZGknLFxuICAgIHZhbHVlczoge30sXG4gIH0sXG4gIGxhbmc6IHtcbiAgICBjdXJyZW50OiAnZW4nLFxuICAgIGxvY2FsZXM6IHsgZW4gfSxcbiAgICAvLyBEZWZhdWx0IHRyYW5zbGF0b3IgZXhpc3RzIGluIGxhbmcgc2VydmljZVxuICAgIHQ6IHVuZGVmaW5lZCBhcyBhbnksXG4gIH0sXG4gIHJ0bDogZmFsc2UsXG4gIHRoZW1lOiB7XG4gICAgZGFyazogZmFsc2UsXG4gICAgZGVmYXVsdDogJ2xpZ2h0JyxcbiAgICBkaXNhYmxlOiBmYWxzZSxcbiAgICBvcHRpb25zOiB7XG4gICAgICBjc3BOb25jZTogdW5kZWZpbmVkLFxuICAgICAgY3VzdG9tUHJvcGVydGllczogdW5kZWZpbmVkLFxuICAgICAgbWluaWZ5VGhlbWU6IHVuZGVmaW5lZCxcbiAgICAgIHRoZW1lQ2FjaGU6IHVuZGVmaW5lZCxcbiAgICAgIHZhcmlhdGlvbnM6IHRydWUsXG4gICAgfSxcbiAgICB0aGVtZXM6IHtcbiAgICAgIGxpZ2h0OiB7XG4gICAgICAgIHByaW1hcnk6ICcjMTk3NkQyJyxcbiAgICAgICAgc2Vjb25kYXJ5OiAnIzQyNDI0MicsXG4gICAgICAgIGFjY2VudDogJyM4MkIxRkYnLFxuICAgICAgICBlcnJvcjogJyNGRjUyNTInLFxuICAgICAgICBpbmZvOiAnIzIxOTZGMycsXG4gICAgICAgIHN1Y2Nlc3M6ICcjNENBRjUwJyxcbiAgICAgICAgd2FybmluZzogJyNGQjhDMDAnLFxuICAgICAgfSxcbiAgICAgIGRhcms6IHtcbiAgICAgICAgcHJpbWFyeTogJyMyMTk2RjMnLFxuICAgICAgICBzZWNvbmRhcnk6ICcjNDI0MjQyJyxcbiAgICAgICAgYWNjZW50OiAnI0ZGNDA4MScsXG4gICAgICAgIGVycm9yOiAnI0ZGNTI1MicsXG4gICAgICAgIGluZm86ICcjMjE5NkYzJyxcbiAgICAgICAgc3VjY2VzczogJyM0Q0FGNTAnLFxuICAgICAgICB3YXJuaW5nOiAnI0ZCOEMwMCcsXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG59XG4iLCIvLyBQcmVzZXRcbmltcG9ydCB7IHByZXNldCBhcyBQcmVzZXQgfSBmcm9tICcuLi8uLi9wcmVzZXRzL2RlZmF1bHQnXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgY29uc29sZVdhcm4gfSBmcm9tICcuLi8uLi91dGlsL2NvbnNvbGUnXG5pbXBvcnQgeyBtZXJnZURlZXAgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5cbi8vIFR5cGVzXG5pbXBvcnQgVnVldGlmeSBmcm9tICd2dWV0aWZ5L3R5cGVzJ1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5pbXBvcnQge1xuICBVc2VyVnVldGlmeVByZXNldCxcbiAgVnVldGlmeVByZXNldCxcbn0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9wcmVzZXRzJ1xuXG5leHBvcnQgY2xhc3MgUHJlc2V0cyBleHRlbmRzIFNlcnZpY2Uge1xuICBzdGF0aWMgcHJvcGVydHk6ICdwcmVzZXRzJyA9ICdwcmVzZXRzJ1xuXG4gIGNvbnN0cnVjdG9yIChcbiAgICBwYXJlbnRQcmVzZXQ6IFBhcnRpYWw8VXNlclZ1ZXRpZnlQcmVzZXQ+LFxuICAgIHBhcmVudDogVnVldGlmeSxcbiAgKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgLy8gVGhlIGRlZmF1bHQgcHJlc2V0XG4gICAgY29uc3QgZGVmYXVsdFByZXNldCA9IG1lcmdlRGVlcCh7fSwgUHJlc2V0KVxuICAgIC8vIFRoZSB1c2VyIHByb3ZpZGVkIHByZXNldFxuICAgIGNvbnN0IHsgdXNlclByZXNldCB9ID0gcGFyZW50XG4gICAgLy8gVGhlIHVzZXIgcHJvdmlkZWQgZ2xvYmFsIHByZXNldFxuICAgIGNvbnN0IHtcbiAgICAgIHByZXNldDogZ2xvYmFsUHJlc2V0ID0ge30sXG4gICAgICAuLi5wcmVzZXRcbiAgICB9ID0gdXNlclByZXNldFxuXG4gICAgaWYgKGdsb2JhbFByZXNldC5wcmVzZXQgIT0gbnVsbCkge1xuICAgICAgY29uc29sZVdhcm4oJ0dsb2JhbCBwcmVzZXRzIGRvIG5vdCBzdXBwb3J0IHRoZSAqKnByZXNldCoqIG9wdGlvbiwgaXQgY2FuIGJlIHNhZmVseSBvbWl0dGVkJylcbiAgICB9XG5cbiAgICBwYXJlbnQucHJlc2V0ID0gbWVyZ2VEZWVwKFxuICAgICAgbWVyZ2VEZWVwKGRlZmF1bHRQcmVzZXQsIGdsb2JhbFByZXNldCksXG4gICAgICBwcmVzZXRcbiAgICApIGFzIFZ1ZXRpZnlQcmVzZXRcbiAgfVxufVxuIiwiLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBUYXJnZXRQcm9wVmFsdWVzLCBUYXJnZXRQcm9wLCBBcHBsaWNhdGlvbiBhcyBJQXBwbGljYXRpb24gfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL2FwcGxpY2F0aW9uJ1xuXG5leHBvcnQgY2xhc3MgQXBwbGljYXRpb24gZXh0ZW5kcyBTZXJ2aWNlIGltcGxlbWVudHMgSUFwcGxpY2F0aW9uIHtcbiAgc3RhdGljIHByb3BlcnR5OiAnYXBwbGljYXRpb24nID0gJ2FwcGxpY2F0aW9uJ1xuXG4gIGJhciA9IDBcblxuICB0b3AgPSAwXG5cbiAgbGVmdCA9IDBcblxuICBpbnNldEZvb3RlciA9IDBcblxuICByaWdodCA9IDBcblxuICBib3R0b20gPSAwXG5cbiAgZm9vdGVyID0gMFxuXG4gIGFwcGxpY2F0aW9uOiBEaWN0aW9uYXJ5PFRhcmdldFByb3BWYWx1ZXM+ID0ge1xuICAgIGJhcjoge30sXG4gICAgdG9wOiB7fSxcbiAgICBsZWZ0OiB7fSxcbiAgICBpbnNldEZvb3Rlcjoge30sXG4gICAgcmlnaHQ6IHt9LFxuICAgIGJvdHRvbToge30sXG4gICAgZm9vdGVyOiB7fSxcbiAgfVxuXG4gIHJlZ2lzdGVyIChcbiAgICB1aWQ6IG51bWJlcixcbiAgICBsb2NhdGlvbjogVGFyZ2V0UHJvcCxcbiAgICBzaXplOiBudW1iZXJcbiAgKSB7XG4gICAgdGhpcy5hcHBsaWNhdGlvbltsb2NhdGlvbl1bdWlkXSA9IHNpemVcblxuICAgIHRoaXMudXBkYXRlKGxvY2F0aW9uKVxuICB9XG5cbiAgdW5yZWdpc3RlciAodWlkOiBudW1iZXIsIGxvY2F0aW9uOiBUYXJnZXRQcm9wKSB7XG4gICAgaWYgKHRoaXMuYXBwbGljYXRpb25bbG9jYXRpb25dW3VpZF0gPT0gbnVsbCkgcmV0dXJuXG5cbiAgICBkZWxldGUgdGhpcy5hcHBsaWNhdGlvbltsb2NhdGlvbl1bdWlkXVxuICAgIHRoaXMudXBkYXRlKGxvY2F0aW9uKVxuICB9XG5cbiAgdXBkYXRlIChsb2NhdGlvbjogVGFyZ2V0UHJvcCkge1xuICAgIHRoaXNbbG9jYXRpb25dID0gT2JqZWN0LnZhbHVlcyh0aGlzLmFwcGxpY2F0aW9uW2xvY2F0aW9uXSlcbiAgICAgIC5yZWR1Y2UoKGFjYzogbnVtYmVyLCBjdXI6IG51bWJlcik6IG51bWJlciA9PiAoYWNjICsgY3VyKSwgMClcbiAgfVxufVxuIiwiLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBWdWV0aWZ5UHJlc2V0IH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9wcmVzZXRzJ1xuaW1wb3J0IHsgQnJlYWtwb2ludCBhcyBJQnJlYWtwb2ludCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvYnJlYWtwb2ludCdcblxuZXhwb3J0IGNsYXNzIEJyZWFrcG9pbnQgZXh0ZW5kcyBTZXJ2aWNlIGltcGxlbWVudHMgSUJyZWFrcG9pbnQge1xuICBwdWJsaWMgc3RhdGljIHByb3BlcnR5OiAnYnJlYWtwb2ludCcgPSAnYnJlYWtwb2ludCdcblxuICAvLyBQdWJsaWNcbiAgcHVibGljIHhzID0gZmFsc2VcblxuICBwdWJsaWMgc20gPSBmYWxzZVxuXG4gIHB1YmxpYyBtZCA9IGZhbHNlXG5cbiAgcHVibGljIGxnID0gZmFsc2VcblxuICBwdWJsaWMgeGwgPSBmYWxzZVxuXG4gIHB1YmxpYyB4c09ubHkgPSBmYWxzZVxuXG4gIHB1YmxpYyBzbU9ubHkgPSBmYWxzZVxuXG4gIHB1YmxpYyBzbUFuZERvd24gPSBmYWxzZVxuXG4gIHB1YmxpYyBzbUFuZFVwID0gZmFsc2VcblxuICBwdWJsaWMgbWRPbmx5ID0gZmFsc2VcblxuICBwdWJsaWMgbWRBbmREb3duID0gZmFsc2VcblxuICBwdWJsaWMgbWRBbmRVcCA9IGZhbHNlXG5cbiAgcHVibGljIGxnT25seSA9IGZhbHNlXG5cbiAgcHVibGljIGxnQW5kRG93biA9IGZhbHNlXG5cbiAgcHVibGljIGxnQW5kVXAgPSBmYWxzZVxuXG4gIHB1YmxpYyB4bE9ubHkgPSBmYWxzZVxuXG4gIC8vIFZhbHVlIGlzIHhzIHRvIG1hdGNoIHYyLnggZnVuY3Rpb25hbGl0eVxuICBwdWJsaWMgbmFtZTogSUJyZWFrcG9pbnRbJ25hbWUnXSA9ICd4cydcblxuICBwdWJsaWMgaGVpZ2h0ID0gMFxuXG4gIHB1YmxpYyB3aWR0aCA9IDBcblxuICAvLyBUT0RPOiBBZGQgZnVuY3Rpb25hbGl0eSB0byBkZXRlY3QgdGhpcyBkeW5hbWljYWxseSBpbiB2M1xuICAvLyBWYWx1ZSBpcyB0cnVlIHRvIG1hdGNoIHYyLnggZnVuY3Rpb25hbGl0eVxuICBwdWJsaWMgbW9iaWxlID0gdHJ1ZVxuXG4gIHB1YmxpYyBtb2JpbGVCcmVha3BvaW50OiBJQnJlYWtwb2ludFsnbW9iaWxlQnJlYWtwb2ludCddXG5cbiAgcHVibGljIHRocmVzaG9sZHM6IElCcmVha3BvaW50Wyd0aHJlc2hvbGRzJ11cblxuICBwdWJsaWMgc2Nyb2xsQmFyV2lkdGg6IElCcmVha3BvaW50WydzY3JvbGxCYXJXaWR0aCddXG5cbiAgcHJpdmF0ZSByZXNpemVUaW1lb3V0ID0gMFxuXG4gIGNvbnN0cnVjdG9yIChwcmVzZXQ6IFZ1ZXRpZnlQcmVzZXQpIHtcbiAgICBzdXBlcigpXG5cbiAgICBjb25zdCB7XG4gICAgICBtb2JpbGVCcmVha3BvaW50LFxuICAgICAgc2Nyb2xsQmFyV2lkdGgsXG4gICAgICB0aHJlc2hvbGRzLFxuICAgIH0gPSBwcmVzZXRbQnJlYWtwb2ludC5wcm9wZXJ0eV1cblxuICAgIHRoaXMubW9iaWxlQnJlYWtwb2ludCA9IG1vYmlsZUJyZWFrcG9pbnRcbiAgICB0aGlzLnNjcm9sbEJhcldpZHRoID0gc2Nyb2xsQmFyV2lkdGhcbiAgICB0aGlzLnRocmVzaG9sZHMgPSB0aHJlc2hvbGRzXG4gIH1cblxuICBwdWJsaWMgaW5pdCAoKSB7XG4gICAgdGhpcy51cGRhdGUoKVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSByZXR1cm5cblxuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ3Jlc2l6ZScsXG4gICAgICB0aGlzLm9uUmVzaXplLmJpbmQodGhpcyksXG4gICAgICB7IHBhc3NpdmU6IHRydWUgfVxuICAgIClcbiAgfVxuXG4gIC8qIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtc3RhdGVtZW50cyAqL1xuICBwdWJsaWMgdXBkYXRlIChzc3IgPSBmYWxzZSkge1xuICAgIGNvbnN0IGhlaWdodCA9IHNzciA/IDAgOiB0aGlzLmdldENsaWVudEhlaWdodCgpXG4gICAgY29uc3Qgd2lkdGggPSBzc3IgPyAwIDogdGhpcy5nZXRDbGllbnRXaWR0aCgpXG5cbiAgICBjb25zdCB4cyA9IHdpZHRoIDwgdGhpcy50aHJlc2hvbGRzLnhzXG4gICAgY29uc3Qgc20gPSB3aWR0aCA8IHRoaXMudGhyZXNob2xkcy5zbSAmJiAheHNcbiAgICBjb25zdCBtZCA9IHdpZHRoIDwgKHRoaXMudGhyZXNob2xkcy5tZCAtIHRoaXMuc2Nyb2xsQmFyV2lkdGgpICYmICEoc20gfHwgeHMpXG4gICAgY29uc3QgbGcgPSB3aWR0aCA8ICh0aGlzLnRocmVzaG9sZHMubGcgLSB0aGlzLnNjcm9sbEJhcldpZHRoKSAmJiAhKG1kIHx8IHNtIHx8IHhzKVxuICAgIGNvbnN0IHhsID0gd2lkdGggPj0gKHRoaXMudGhyZXNob2xkcy5sZyAtIHRoaXMuc2Nyb2xsQmFyV2lkdGgpXG5cbiAgICB0aGlzLmhlaWdodCA9IGhlaWdodFxuICAgIHRoaXMud2lkdGggPSB3aWR0aFxuXG4gICAgdGhpcy54cyA9IHhzXG4gICAgdGhpcy5zbSA9IHNtXG4gICAgdGhpcy5tZCA9IG1kXG4gICAgdGhpcy5sZyA9IGxnXG4gICAgdGhpcy54bCA9IHhsXG5cbiAgICB0aGlzLnhzT25seSA9IHhzXG4gICAgdGhpcy5zbU9ubHkgPSBzbVxuICAgIHRoaXMuc21BbmREb3duID0gKHhzIHx8IHNtKSAmJiAhKG1kIHx8IGxnIHx8IHhsKVxuICAgIHRoaXMuc21BbmRVcCA9ICF4cyAmJiAoc20gfHwgbWQgfHwgbGcgfHwgeGwpXG4gICAgdGhpcy5tZE9ubHkgPSBtZFxuICAgIHRoaXMubWRBbmREb3duID0gKHhzIHx8IHNtIHx8IG1kKSAmJiAhKGxnIHx8IHhsKVxuICAgIHRoaXMubWRBbmRVcCA9ICEoeHMgfHwgc20pICYmIChtZCB8fCBsZyB8fCB4bClcbiAgICB0aGlzLmxnT25seSA9IGxnXG4gICAgdGhpcy5sZ0FuZERvd24gPSAoeHMgfHwgc20gfHwgbWQgfHwgbGcpICYmICF4bFxuICAgIHRoaXMubGdBbmRVcCA9ICEoeHMgfHwgc20gfHwgbWQpICYmIChsZyB8fCB4bClcbiAgICB0aGlzLnhsT25seSA9IHhsXG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgKHhzKTpcbiAgICAgICAgdGhpcy5uYW1lID0gJ3hzJ1xuICAgICAgICBicmVha1xuICAgICAgY2FzZSAoc20pOlxuICAgICAgICB0aGlzLm5hbWUgPSAnc20nXG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlIChtZCk6XG4gICAgICAgIHRoaXMubmFtZSA9ICdtZCdcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgKGxnKTpcbiAgICAgICAgdGhpcy5uYW1lID0gJ2xnJ1xuICAgICAgICBicmVha1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5uYW1lID0gJ3hsJ1xuICAgICAgICBicmVha1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgdGhpcy5tb2JpbGVCcmVha3BvaW50ID09PSAnbnVtYmVyJykge1xuICAgICAgdGhpcy5tb2JpbGUgPSB3aWR0aCA8IHBhcnNlSW50KHRoaXMubW9iaWxlQnJlYWtwb2ludCwgMTApXG5cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGJyZWFrcG9pbnRzID0ge1xuICAgICAgeHM6IDAsXG4gICAgICBzbTogMSxcbiAgICAgIG1kOiAyLFxuICAgICAgbGc6IDMsXG4gICAgICB4bDogNCxcbiAgICB9IGFzIGNvbnN0XG5cbiAgICBjb25zdCBjdXJyZW50ID0gYnJlYWtwb2ludHNbdGhpcy5uYW1lXVxuICAgIGNvbnN0IG1heCA9IGJyZWFrcG9pbnRzW3RoaXMubW9iaWxlQnJlYWtwb2ludF1cblxuICAgIHRoaXMubW9iaWxlID0gY3VycmVudCA8PSBtYXhcbiAgfVxuXG4gIHByaXZhdGUgb25SZXNpemUgKCkge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLnJlc2l6ZVRpbWVvdXQpXG5cbiAgICAvLyBBZGRlZCBkZWJvdW5jZSB0byBtYXRjaCB3aGF0XG4gICAgLy8gdi1yZXNpemUgdXNlZCB0byBkbyBidXQgd2FzXG4gICAgLy8gcmVtb3ZlZCBkdWUgdG8gYSBtZW1vcnkgbGVha1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS92dWV0aWZ5anMvdnVldGlmeS9wdWxsLzI5OTdcbiAgICB0aGlzLnJlc2l6ZVRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCh0aGlzLnVwZGF0ZS5iaW5kKHRoaXMpLCAyMDApXG4gIH1cblxuICAvLyBDcm9zcy1icm93c2VyIHN1cHBvcnQgYXMgZGVzY3JpYmVkIGluOlxuICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xMjQ4MDgxXG4gIHByaXZhdGUgZ2V0Q2xpZW50V2lkdGggKCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnKSByZXR1cm4gMCAvLyBTU1JcbiAgICByZXR1cm4gTWF0aC5tYXgoXG4gICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQhLmNsaWVudFdpZHRoLFxuICAgICAgd2luZG93LmlubmVyV2lkdGggfHwgMFxuICAgIClcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q2xpZW50SGVpZ2h0ICgpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIDAgLy8gU1NSXG4gICAgcmV0dXJuIE1hdGgubWF4KFxuICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50IS5jbGllbnRIZWlnaHQsXG4gICAgICB3aW5kb3cuaW5uZXJIZWlnaHQgfHwgMFxuICAgIClcbiAgfVxufVxuIiwiaW1wb3J0IHsgVnVldGlmeUljb25zIH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9pY29ucydcblxuY29uc3QgaWNvbnM6IFZ1ZXRpZnlJY29ucyA9IHtcbiAgY29tcGxldGU6ICdNMjEsN0w5LDE5TDMuNSwxMy41TDQuOTEsMTIuMDlMOSwxNi4xN0wxOS41OSw1LjU5TDIxLDdaJyxcbiAgY2FuY2VsOiAnTTEyLDJDMTcuNTMsMiAyMiw2LjQ3IDIyLDEyQzIyLDE3LjUzIDE3LjUzLDIyIDEyLDIyQzYuNDcsMjIgMiwxNy41MyAyLDEyQzIsNi40NyA2LjQ3LDIgMTIsMk0xNS41OSw3TDEyLDEwLjU5TDguNDEsN0w3LDguNDFMMTAuNTksMTJMNywxNS41OUw4LjQxLDE3TDEyLDEzLjQxTDE1LjU5LDE3TDE3LDE1LjU5TDEzLjQxLDEyTDE3LDguNDFMMTUuNTksN1onLFxuICBjbG9zZTogJ00xOSw2LjQxTDE3LjU5LDVMMTIsMTAuNTlMNi40MSw1TDUsNi40MUwxMC41OSwxMkw1LDE3LjU5TDYuNDEsMTlMMTIsMTMuNDFMMTcuNTksMTlMMTksMTcuNTlMMTMuNDEsMTJMMTksNi40MVonLFxuICBkZWxldGU6ICdNMTIsMkMxNy41MywyIDIyLDYuNDcgMjIsMTJDMjIsMTcuNTMgMTcuNTMsMjIgMTIsMjJDNi40NywyMiAyLDE3LjUzIDIsMTJDMiw2LjQ3IDYuNDcsMiAxMiwyTTE1LjU5LDdMMTIsMTAuNTlMOC40MSw3TDcsOC40MUwxMC41OSwxMkw3LDE1LjU5TDguNDEsMTdMMTIsMTMuNDFMMTUuNTksMTdMMTcsMTUuNTlMMTMuNDEsMTJMMTcsOC40MUwxNS41OSw3WicsIC8vIGRlbGV0ZSAoZS5nLiB2LWNoaXAgY2xvc2UpXG4gIGNsZWFyOiAnTTEyLDJDMTcuNTMsMiAyMiw2LjQ3IDIyLDEyQzIyLDE3LjUzIDE3LjUzLDIyIDEyLDIyQzYuNDcsMjIgMiwxNy41MyAyLDEyQzIsNi40NyA2LjQ3LDIgMTIsMk0xNS41OSw3TDEyLDEwLjU5TDguNDEsN0w3LDguNDFMMTAuNTksMTJMNywxNS41OUw4LjQxLDE3TDEyLDEzLjQxTDE1LjU5LDE3TDE3LDE1LjU5TDEzLjQxLDEyTDE3LDguNDFMMTUuNTksN1onLFxuICBzdWNjZXNzOiAnTTEyIDJDNi41IDIgMiA2LjUgMiAxMlM2LjUgMjIgMTIgMjIgMjIgMTcuNSAyMiAxMiAxNy41IDIgMTIgMk0xMCAxN0w1IDEyTDYuNDEgMTAuNTlMMTAgMTQuMTdMMTcuNTkgNi41OEwxOSA4TDEwIDE3WicsXG4gIGluZm86ICdNMTMsOUgxMVY3SDEzTTEzLDE3SDExVjExSDEzTTEyLDJDNi40OCwyIDIsNi40OCAyLDEyQzIsMTcuNTIgNi40OCwyMiAxMiwyMkMxNy41MiwyMiAyMiwxNy41MiAyMiwxMkMyMiw2LjQ4IDE3LjUyLDIgMTIsMlpNMTMsOUgxMVY3SDEzTTEzLDE3SDExVjExSDEzTTEyLDJBMTAsMTAgMCAwLDAgMiwxMkExMCwxMCAwIDAsMCAxMiwyMkExMCwxMCAwIDAsMCAyMiwxMkExMCwxMCAwIDAsMCAxMiwyWicsXG4gIHdhcm5pbmc6ICdNMTMsMTNIMTFWN0gxM00xMywxN0gxMVYxNUgxM00xMiwyQTEwLDEwIDAgMCwwIDIsMTJBMTAsMTAgMCAwLDAgMTIsMjJBMTAsMTAgMCAwLDAgMjIsMTJBMTAsMTAgMCAwLDAgMTIsMlonLFxuICBlcnJvcjogJ00xMiwyQzE3LjUzLDIgMjIsNi40NyAyMiwxMkMyMiwxNy41MyAxNy41MywyMiAxMiwyMkM2LjQ3LDIyIDIsMTcuNTMgMiwxMkMyLDYuNDcgNi40NywyIDEyLDJNMTUuNTksN0wxMiwxMC41OUw4LjQxLDdMNyw4LjQxTDEwLjU5LDEyTDcsMTUuNTlMOC40MSwxN0wxMiwxMy40MUwxNS41OSwxN0wxNywxNS41OUwxMy40MSwxMkwxNyw4LjQxTDE1LjU5LDdaJyxcbiAgcHJldjogJ00xNS40MSwxNi41OEwxMC44MywxMkwxNS40MSw3LjQxTDE0LDZMOCwxMkwxNCwxOEwxNS40MSwxNi41OFonLFxuICBuZXh0OiAnTTguNTksMTYuNThMMTMuMTcsMTJMOC41OSw3LjQxTDEwLDZMMTYsMTJMMTAsMThMOC41OSwxNi41OFonLFxuICBjaGVja2JveE9uOiAnTTEwLDE3TDUsMTJMNi40MSwxMC41OEwxMCwxNC4xN0wxNy41OSw2LjU4TDE5LDhNMTksM0g1QzMuODksMyAzLDMuODkgMyw1VjE5QzMsMjAuMSAzLjksMjEgNSwyMUgxOUMyMC4xLDIxIDIxLDIwLjEgMjEsMTlWNUMyMSwzLjg5IDIwLjEsMyAxOSwzWicsXG4gIGNoZWNrYm94T2ZmOiAnTTE5LDNINUMzLjg5LDMgMywzLjg5IDMsNVYxOUMzLDIwLjEgMy45LDIxIDUsMjFIMTlDMjAuMSwyMSAyMSwyMC4xIDIxLDE5VjVDMjEsMy44OSAyMC4xLDMgMTksM00xOSw1VjE5SDVWNUgxOVonLFxuICBjaGVja2JveEluZGV0ZXJtaW5hdGU6ICdNMTcsMTNIN1YxMUgxN00xOSwzSDVDMy44OSwzIDMsMy44OSAzLDVWMTlDMywyMC4xIDMuOSwyMSA1LDIxSDE5QzIwLjEsMjEgMjEsMjAuMSAyMSwxOVY1QzIxLDMuODkgMjAuMSwzIDE5LDNaJyxcbiAgZGVsaW1pdGVyOiAnTTEyLDJDNi40OCwyIDIsNi40OCAyLDEyQzIsMTcuNTIgNi40OCwyMiAxMiwyMkMxNy41MiwyMiAyMiwxNy41MiAyMiwxMkMyMiw2LjQ4IDE3LjUyLDIgMTIsMlonLCAvLyBmb3IgY2Fyb3VzZWxcbiAgc29ydDogJ00xMywyMEgxMVY4TDUuNSwxMy41TDQuMDgsMTIuMDhMMTIsNC4xNkwxOS45MiwxMi4wOEwxOC41LDEzLjVMMTMsOFYyMFonLFxuICBleHBhbmQ6ICdNNy40MSw4LjU4TDEyLDEzLjE3TDE2LjU5LDguNThMMTgsMTBMMTIsMTZMNiwxMEw3LjQxLDguNThaJyxcbiAgbWVudTogJ00zLDZIMjFWOEgzVjZNMywxMUgyMVYxM0gzVjExTTMsMTZIMjFWMThIM1YxNlonLFxuICBzdWJncm91cDogJ003LDEwTDEyLDE1TDE3LDEwSDdaJyxcbiAgZHJvcGRvd246ICdNNywxMEwxMiwxNUwxNywxMEg3WicsXG4gIHJhZGlvT246ICdNMTIsMjBDNy41OCwyMCA0LDE2LjQyIDQsMTJDNCw3LjU4IDcuNTgsNCAxMiw0QzE2LjQyLDQgMjAsNy41OCAyMCwxMkMyMCwxNi40MiAxNi40MiwyMCAxMiwyME0xMiwyQzYuNDgsMiAyLDYuNDggMiwxMkMyLDE3LjUyIDYuNDgsMjIgMTIsMjJDMTcuNTIsMjIgMjIsMTcuNTIgMjIsMTJDMjIsNi40OCAxNy41MiwyIDEyLDJNMTIsN0M5LjI0LDcgNyw5LjI0IDcsMTJDNywxNC43NiA5LjI0LDE3IDEyLDE3QzE0Ljc2LDE3IDE3LDE0Ljc2IDE3LDEyQzE3LDkuMjQgMTQuNzYsNyAxMiw3WicsXG4gIHJhZGlvT2ZmOiAnTTEyLDIwQzcuNTgsMjAgNCwxNi40MiA0LDEyQzQsNy41OCA3LjU4LDQgMTIsNEMxNi40Miw0IDIwLDcuNTggMjAsMTJDMjAsMTYuNDIgMTYuNDIsMjAgMTIsMjBNMTIsMkM2LjQ4LDIgMiw2LjQ4IDIsMTJDMiwxNy41MiA2LjQ4LDIyIDEyLDIyQzE3LjUyLDIyIDIyLDE3LjUyIDIyLDEyQzIyLDYuNDggMTcuNTIsMiAxMiwyWicsXG4gIGVkaXQ6ICdNMjAuNzEsNy4wNEMyMS4xLDYuNjUgMjEuMSw2IDIwLjcxLDUuNjNMMTguMzcsMy4yOUMxOCwyLjkgMTcuMzUsMi45IDE2Ljk2LDMuMjlMMTUuMTIsNS4xMkwxOC44Nyw4Ljg3TTMsMTcuMjVWMjFINi43NUwxNy44MSw5LjkzTDE0LjA2LDYuMThMMywxNy4yNVonLFxuICByYXRpbmdFbXB0eTogJ00xMiwxNS4zOUw4LjI0LDE3LjY2TDkuMjMsMTMuMzhMNS45MSwxMC41TDEwLjI5LDEwLjEzTDEyLDYuMDlMMTMuNzEsMTAuMTNMMTguMDksMTAuNUwxNC43NywxMy4zOEwxNS43NiwxNy42Nk0yMiw5LjI0TDE0LjgxLDguNjNMMTIsMkw5LjE5LDguNjNMMiw5LjI0TDcuNDUsMTMuOTdMNS44MiwyMUwxMiwxNy4yN0wxOC4xOCwyMUwxNi41NCwxMy45N0wyMiw5LjI0WicsXG4gIHJhdGluZ0Z1bGw6ICdNMTIsMTcuMjdMMTguMTgsMjFMMTYuNTQsMTMuOTdMMjIsOS4yNEwxNC44MSw4LjYyTDEyLDJMOS4xOSw4LjYyTDIsOS4yNEw3LjQ1LDEzLjk3TDUuODIsMjFMMTIsMTcuMjdaJyxcbiAgcmF0aW5nSGFsZjogJ00xMiwxNS40VjYuMUwxMy43MSwxMC4xM0wxOC4wOSwxMC41TDE0Ljc3LDEzLjM5TDE1Ljc2LDE3LjY3TTIyLDkuMjRMMTQuODEsOC42M0wxMiwyTDkuMTksOC42M0wyLDkuMjRMNy40NSwxMy45N0w1LjgyLDIxTDEyLDE3LjI3TDE4LjE4LDIxTDE2LjU0LDEzLjk3TDIyLDkuMjRaJyxcbiAgbG9hZGluZzogJ00xOSw4TDE1LDEySDE4QzE4LDE1LjMxIDE1LjMxLDE4IDEyLDE4QzExLDE4IDEwLjAzLDE3Ljc1IDkuMiwxNy4zTDcuNzQsMTguNzZDOC45NywxOS41NCAxMC40MywyMCAxMiwyMEMxNi40MiwyMCAyMCwxNi40MiAyMCwxMkgyM002LDEyQzYsOC42OSA4LjY5LDYgMTIsNkMxMyw2IDEzLjk3LDYuMjUgMTQuOCw2LjdMMTYuMjYsNS4yNEMxNS4wMyw0LjQ2IDEzLjU3LDQgMTIsNEM3LjU4LDQgNCw3LjU4IDQsMTJIMUw1LDE2TDksMTInLFxuICBmaXJzdDogJ00xOC40MSwxNi41OUwxMy44MiwxMkwxOC40MSw3LjQxTDE3LDZMMTEsMTJMMTcsMThMMTguNDEsMTYuNTlNNiw2SDhWMThINlY2WicsXG4gIGxhc3Q6ICdNNS41OSw3LjQxTDEwLjE4LDEyTDUuNTksMTYuNTlMNywxOEwxMywxMkw3LDZMNS41OSw3LjQxTTE2LDZIMThWMThIMTZWNlonLFxuICB1bmZvbGQ6ICdNMTIsMTguMTdMOC44MywxNUw3LjQyLDE2LjQxTDEyLDIxTDE2LjU5LDE2LjQxTDE1LjE3LDE1TTEyLDUuODNMMTUuMTcsOUwxNi41OCw3LjU5TDEyLDNMNy40MSw3LjU5TDguODMsOUwxMiw1LjgzWicsXG4gIGZpbGU6ICdNMTYuNSw2VjE3LjVDMTYuNSwxOS43MSAxNC43MSwyMS41IDEyLjUsMjEuNUMxMC4yOSwyMS41IDguNSwxOS43MSA4LjUsMTcuNVY1QzguNSwzLjYyIDkuNjIsMi41IDExLDIuNUMxMi4zOCwyLjUgMTMuNSwzLjYyIDEzLjUsNVYxNS41QzEzLjUsMTYuMDUgMTMuMDUsMTYuNSAxMi41LDE2LjVDMTEuOTUsMTYuNSAxMS41LDE2LjA1IDExLjUsMTUuNVY2SDEwVjE1LjVDMTAsMTYuODggMTEuMTIsMTggMTIuNSwxOEMxMy44OCwxOCAxNSwxNi44OCAxNSwxNS41VjVDMTUsMi43OSAxMy4yMSwxIDExLDFDOC43OSwxIDcsMi43OSA3LDVWMTcuNUM3LDIwLjU0IDkuNDYsMjMgMTIuNSwyM0MxNS41NCwyMyAxOCwyMC41NCAxOCwxNy41VjZIMTYuNVonLFxuICBwbHVzOiAnTTE5LDEzSDEzVjE5SDExVjEzSDVWMTFIMTFWNUgxM1YxMUgxOVYxM1onLFxuICBtaW51czogJ00xOSwxM0g1VjExSDE5VjEzWicsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGljb25zXG4iLCJpbXBvcnQgeyBWdWV0aWZ5SWNvbnMgfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL2ljb25zJ1xuXG5jb25zdCBpY29uczogVnVldGlmeUljb25zID0ge1xuICBjb21wbGV0ZTogJ2NoZWNrJyxcbiAgY2FuY2VsOiAnY2FuY2VsJyxcbiAgY2xvc2U6ICdjbG9zZScsXG4gIGRlbGV0ZTogJ2NhbmNlbCcsIC8vIGRlbGV0ZSAoZS5nLiB2LWNoaXAgY2xvc2UpXG4gIGNsZWFyOiAnY2xlYXInLFxuICBzdWNjZXNzOiAnY2hlY2tfY2lyY2xlJyxcbiAgaW5mbzogJ2luZm8nLFxuICB3YXJuaW5nOiAncHJpb3JpdHlfaGlnaCcsXG4gIGVycm9yOiAnd2FybmluZycsXG4gIHByZXY6ICdjaGV2cm9uX2xlZnQnLFxuICBuZXh0OiAnY2hldnJvbl9yaWdodCcsXG4gIGNoZWNrYm94T246ICdjaGVja19ib3gnLFxuICBjaGVja2JveE9mZjogJ2NoZWNrX2JveF9vdXRsaW5lX2JsYW5rJyxcbiAgY2hlY2tib3hJbmRldGVybWluYXRlOiAnaW5kZXRlcm1pbmF0ZV9jaGVja19ib3gnLFxuICBkZWxpbWl0ZXI6ICdmaWJlcl9tYW51YWxfcmVjb3JkJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdhcnJvd191cHdhcmQnLFxuICBleHBhbmQ6ICdrZXlib2FyZF9hcnJvd19kb3duJyxcbiAgbWVudTogJ21lbnUnLFxuICBzdWJncm91cDogJ2Fycm93X2Ryb3BfZG93bicsXG4gIGRyb3Bkb3duOiAnYXJyb3dfZHJvcF9kb3duJyxcbiAgcmFkaW9PbjogJ3JhZGlvX2J1dHRvbl9jaGVja2VkJyxcbiAgcmFkaW9PZmY6ICdyYWRpb19idXR0b25fdW5jaGVja2VkJyxcbiAgZWRpdDogJ2VkaXQnLFxuICByYXRpbmdFbXB0eTogJ3N0YXJfYm9yZGVyJyxcbiAgcmF0aW5nRnVsbDogJ3N0YXInLFxuICByYXRpbmdIYWxmOiAnc3Rhcl9oYWxmJyxcbiAgbG9hZGluZzogJ2NhY2hlZCcsXG4gIGZpcnN0OiAnZmlyc3RfcGFnZScsXG4gIGxhc3Q6ICdsYXN0X3BhZ2UnLFxuICB1bmZvbGQ6ICd1bmZvbGRfbW9yZScsXG4gIGZpbGU6ICdhdHRhY2hfZmlsZScsXG4gIHBsdXM6ICdhZGQnLFxuICBtaW51czogJ3JlbW92ZScsXG59XG5cbmV4cG9ydCBkZWZhdWx0IGljb25zXG4iLCJpbXBvcnQgeyBWdWV0aWZ5SWNvbnMgfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL2ljb25zJ1xuXG5jb25zdCBpY29uczogVnVldGlmeUljb25zID0ge1xuICBjb21wbGV0ZTogJ21kaS1jaGVjaycsXG4gIGNhbmNlbDogJ21kaS1jbG9zZS1jaXJjbGUnLFxuICBjbG9zZTogJ21kaS1jbG9zZScsXG4gIGRlbGV0ZTogJ21kaS1jbG9zZS1jaXJjbGUnLCAvLyBkZWxldGUgKGUuZy4gdi1jaGlwIGNsb3NlKVxuICBjbGVhcjogJ21kaS1jbG9zZScsXG4gIHN1Y2Nlc3M6ICdtZGktY2hlY2stY2lyY2xlJyxcbiAgaW5mbzogJ21kaS1pbmZvcm1hdGlvbicsXG4gIHdhcm5pbmc6ICdtZGktZXhjbGFtYXRpb24nLFxuICBlcnJvcjogJ21kaS1hbGVydCcsXG4gIHByZXY6ICdtZGktY2hldnJvbi1sZWZ0JyxcbiAgbmV4dDogJ21kaS1jaGV2cm9uLXJpZ2h0JyxcbiAgY2hlY2tib3hPbjogJ21kaS1jaGVja2JveC1tYXJrZWQnLFxuICBjaGVja2JveE9mZjogJ21kaS1jaGVja2JveC1ibGFuay1vdXRsaW5lJyxcbiAgY2hlY2tib3hJbmRldGVybWluYXRlOiAnbWRpLW1pbnVzLWJveCcsXG4gIGRlbGltaXRlcjogJ21kaS1jaXJjbGUnLCAvLyBmb3IgY2Fyb3VzZWxcbiAgc29ydDogJ21kaS1hcnJvdy11cCcsXG4gIGV4cGFuZDogJ21kaS1jaGV2cm9uLWRvd24nLFxuICBtZW51OiAnbWRpLW1lbnUnLFxuICBzdWJncm91cDogJ21kaS1tZW51LWRvd24nLFxuICBkcm9wZG93bjogJ21kaS1tZW51LWRvd24nLFxuICByYWRpb09uOiAnbWRpLXJhZGlvYm94LW1hcmtlZCcsXG4gIHJhZGlvT2ZmOiAnbWRpLXJhZGlvYm94LWJsYW5rJyxcbiAgZWRpdDogJ21kaS1wZW5jaWwnLFxuICByYXRpbmdFbXB0eTogJ21kaS1zdGFyLW91dGxpbmUnLFxuICByYXRpbmdGdWxsOiAnbWRpLXN0YXInLFxuICByYXRpbmdIYWxmOiAnbWRpLXN0YXItaGFsZi1mdWxsJyxcbiAgbG9hZGluZzogJ21kaS1jYWNoZWQnLFxuICBmaXJzdDogJ21kaS1wYWdlLWZpcnN0JyxcbiAgbGFzdDogJ21kaS1wYWdlLWxhc3QnLFxuICB1bmZvbGQ6ICdtZGktdW5mb2xkLW1vcmUtaG9yaXpvbnRhbCcsXG4gIGZpbGU6ICdtZGktcGFwZXJjbGlwJyxcbiAgcGx1czogJ21kaS1wbHVzJyxcbiAgbWludXM6ICdtZGktbWludXMnLFxufVxuXG5leHBvcnQgZGVmYXVsdCBpY29uc1xuIiwiaW1wb3J0IHsgVnVldGlmeUljb25zIH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9pY29ucydcblxuY29uc3QgaWNvbnM6IFZ1ZXRpZnlJY29ucyA9IHtcbiAgY29tcGxldGU6ICdmYXMgZmEtY2hlY2snLFxuICBjYW5jZWw6ICdmYXMgZmEtdGltZXMtY2lyY2xlJyxcbiAgY2xvc2U6ICdmYXMgZmEtdGltZXMnLFxuICBkZWxldGU6ICdmYXMgZmEtdGltZXMtY2lyY2xlJywgLy8gZGVsZXRlIChlLmcuIHYtY2hpcCBjbG9zZSlcbiAgY2xlYXI6ICdmYXMgZmEtdGltZXMtY2lyY2xlJywgLy8gZGVsZXRlIChlLmcuIHYtY2hpcCBjbG9zZSlcbiAgc3VjY2VzczogJ2ZhcyBmYS1jaGVjay1jaXJjbGUnLFxuICBpbmZvOiAnZmFzIGZhLWluZm8tY2lyY2xlJyxcbiAgd2FybmluZzogJ2ZhcyBmYS1leGNsYW1hdGlvbi1jaXJjbGUnLFxuICBlcnJvcjogJ2ZhcyBmYS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gIHByZXY6ICdmYXMgZmEtY2hldnJvbi1sZWZ0JyxcbiAgbmV4dDogJ2ZhcyBmYS1jaGV2cm9uLXJpZ2h0JyxcbiAgY2hlY2tib3hPbjogJ2ZhcyBmYS1jaGVjay1zcXVhcmUnLFxuICBjaGVja2JveE9mZjogJ2ZhciBmYS1zcXVhcmUnLCAvLyBub3RlICdmYXInXG4gIGNoZWNrYm94SW5kZXRlcm1pbmF0ZTogJ2ZhcyBmYS1taW51cy1zcXVhcmUnLFxuICBkZWxpbWl0ZXI6ICdmYXMgZmEtY2lyY2xlJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdmYXMgZmEtc29ydC11cCcsXG4gIGV4cGFuZDogJ2ZhcyBmYS1jaGV2cm9uLWRvd24nLFxuICBtZW51OiAnZmFzIGZhLWJhcnMnLFxuICBzdWJncm91cDogJ2ZhcyBmYS1jYXJldC1kb3duJyxcbiAgZHJvcGRvd246ICdmYXMgZmEtY2FyZXQtZG93bicsXG4gIHJhZGlvT246ICdmYXIgZmEtZG90LWNpcmNsZScsXG4gIHJhZGlvT2ZmOiAnZmFyIGZhLWNpcmNsZScsXG4gIGVkaXQ6ICdmYXMgZmEtZWRpdCcsXG4gIHJhdGluZ0VtcHR5OiAnZmFyIGZhLXN0YXInLFxuICByYXRpbmdGdWxsOiAnZmFzIGZhLXN0YXInLFxuICByYXRpbmdIYWxmOiAnZmFzIGZhLXN0YXItaGFsZicsXG4gIGxvYWRpbmc6ICdmYXMgZmEtc3luYycsXG4gIGZpcnN0OiAnZmFzIGZhLXN0ZXAtYmFja3dhcmQnLFxuICBsYXN0OiAnZmFzIGZhLXN0ZXAtZm9yd2FyZCcsXG4gIHVuZm9sZDogJ2ZhcyBmYS1hcnJvd3MtYWx0LXYnLFxuICBmaWxlOiAnZmFzIGZhLXBhcGVyY2xpcCcsXG4gIHBsdXM6ICdmYXMgZmEtcGx1cycsXG4gIG1pbnVzOiAnZmFzIGZhLW1pbnVzJyxcbn1cblxuZXhwb3J0IGRlZmF1bHQgaWNvbnNcbiIsImltcG9ydCB7IFZ1ZXRpZnlJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5cbmNvbnN0IGljb25zOiBWdWV0aWZ5SWNvbnMgPSB7XG4gIGNvbXBsZXRlOiAnZmEgZmEtY2hlY2snLFxuICBjYW5jZWw6ICdmYSBmYS10aW1lcy1jaXJjbGUnLFxuICBjbG9zZTogJ2ZhIGZhLXRpbWVzJyxcbiAgZGVsZXRlOiAnZmEgZmEtdGltZXMtY2lyY2xlJywgLy8gZGVsZXRlIChlLmcuIHYtY2hpcCBjbG9zZSlcbiAgY2xlYXI6ICdmYSBmYS10aW1lcy1jaXJjbGUnLCAvLyBkZWxldGUgKGUuZy4gdi1jaGlwIGNsb3NlKVxuICBzdWNjZXNzOiAnZmEgZmEtY2hlY2stY2lyY2xlJyxcbiAgaW5mbzogJ2ZhIGZhLWluZm8tY2lyY2xlJyxcbiAgd2FybmluZzogJ2ZhIGZhLWV4Y2xhbWF0aW9uJyxcbiAgZXJyb3I6ICdmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gIHByZXY6ICdmYSBmYS1jaGV2cm9uLWxlZnQnLFxuICBuZXh0OiAnZmEgZmEtY2hldnJvbi1yaWdodCcsXG4gIGNoZWNrYm94T246ICdmYSBmYS1jaGVjay1zcXVhcmUnLFxuICBjaGVja2JveE9mZjogJ2ZhIGZhLXNxdWFyZS1vJyxcbiAgY2hlY2tib3hJbmRldGVybWluYXRlOiAnZmEgZmEtbWludXMtc3F1YXJlJyxcbiAgZGVsaW1pdGVyOiAnZmEgZmEtY2lyY2xlJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdmYSBmYS1zb3J0LXVwJyxcbiAgZXhwYW5kOiAnZmEgZmEtY2hldnJvbi1kb3duJyxcbiAgbWVudTogJ2ZhIGZhLWJhcnMnLFxuICBzdWJncm91cDogJ2ZhIGZhLWNhcmV0LWRvd24nLFxuICBkcm9wZG93bjogJ2ZhIGZhLWNhcmV0LWRvd24nLFxuICByYWRpb09uOiAnZmEgZmEtZG90LWNpcmNsZS1vJyxcbiAgcmFkaW9PZmY6ICdmYSBmYS1jaXJjbGUtbycsXG4gIGVkaXQ6ICdmYSBmYS1wZW5jaWwnLFxuICByYXRpbmdFbXB0eTogJ2ZhIGZhLXN0YXItbycsXG4gIHJhdGluZ0Z1bGw6ICdmYSBmYS1zdGFyJyxcbiAgcmF0aW5nSGFsZjogJ2ZhIGZhLXN0YXItaGFsZi1vJyxcbiAgbG9hZGluZzogJ2ZhIGZhLXJlZnJlc2gnLFxuICBmaXJzdDogJ2ZhIGZhLXN0ZXAtYmFja3dhcmQnLFxuICBsYXN0OiAnZmEgZmEtc3RlcC1mb3J3YXJkJyxcbiAgdW5mb2xkOiAnZmEgZmEtYW5nbGUtZG91YmxlLWRvd24nLFxuICBmaWxlOiAnZmEgZmEtcGFwZXJjbGlwJyxcbiAgcGx1czogJ2ZhIGZhLXBsdXMnLFxuICBtaW51czogJ2ZhIGZhLW1pbnVzJyxcbn1cblxuZXhwb3J0IGRlZmF1bHQgaWNvbnNcbiIsImltcG9ydCB7IFZ1ZXRpZnlJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICd2dWUnXG5pbXBvcnQgaWNvbnMgZnJvbSAnLi9mYSdcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRUb0NvbXBvbmVudERlY2xhcmF0aW9ucyAoXG4gIGNvbXBvbmVudDogQ29tcG9uZW50IHwgc3RyaW5nLFxuICBpY29uU2V0OiBWdWV0aWZ5SWNvbnMsXG4pIHtcbiAgY29uc3QgcmVzdWx0OiBQYXJ0aWFsPFZ1ZXRpZnlJY29ucz4gPSB7fVxuXG4gIGZvciAoY29uc3Qga2V5IGluIGljb25TZXQpIHtcbiAgICByZXN1bHRba2V5XSA9IHtcbiAgICAgIGNvbXBvbmVudCxcbiAgICAgIHByb3BzOiB7XG4gICAgICAgIGljb246IChpY29uU2V0W2tleV0gYXMgc3RyaW5nKS5zcGxpdCgnIGZhLScpLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzdWx0IGFzIFZ1ZXRpZnlJY29uc1xufVxuXG5leHBvcnQgZGVmYXVsdCBjb252ZXJ0VG9Db21wb25lbnREZWNsYXJhdGlvbnMoJ2ZvbnQtYXdlc29tZS1pY29uJywgaWNvbnMpXG4iLCJpbXBvcnQgbWRpU3ZnIGZyb20gJy4vbWRpLXN2ZydcbmltcG9ydCBtZCBmcm9tICcuL21kJ1xuaW1wb3J0IG1kaSBmcm9tICcuL21kaSdcbmltcG9ydCBmYSBmcm9tICcuL2ZhJ1xuaW1wb3J0IGZhNCBmcm9tICcuL2ZhNCdcbmltcG9ydCBmYVN2ZyBmcm9tICcuL2ZhLXN2ZydcblxuZXhwb3J0IGRlZmF1bHQgT2JqZWN0LmZyZWV6ZSh7XG4gIG1kaVN2ZyxcbiAgbWQsXG4gIG1kaSxcbiAgZmEsXG4gIGZhNCxcbiAgZmFTdmcsXG59KVxuIiwiLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgbWVyZ2VEZWVwIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVnVldGlmeVByZXNldCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvcHJlc2V0cydcbmltcG9ydCB7IEljb25zIGFzIElJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5cbi8vIFByZXNldHNcbmltcG9ydCBwcmVzZXRzIGZyb20gJy4vcHJlc2V0cydcblxuZXhwb3J0IGNsYXNzIEljb25zIGV4dGVuZHMgU2VydmljZSBpbXBsZW1lbnRzIElJY29ucyB7XG4gIHN0YXRpYyBwcm9wZXJ0eTogJ2ljb25zJyA9ICdpY29ucydcblxuICBwdWJsaWMgaWNvbmZvbnQ6IElJY29uc1snaWNvbmZvbnQnXVxuXG4gIHB1YmxpYyB2YWx1ZXM6IElJY29uc1sndmFsdWVzJ11cblxuICBwdWJsaWMgY29tcG9uZW50OiBJSWNvbnNbJ2NvbXBvbmVudCddXG5cbiAgY29uc3RydWN0b3IgKHByZXNldDogVnVldGlmeVByZXNldCkge1xuICAgIHN1cGVyKClcblxuICAgIGNvbnN0IHtcbiAgICAgIGljb25mb250LFxuICAgICAgdmFsdWVzLFxuICAgICAgY29tcG9uZW50LFxuICAgIH0gPSBwcmVzZXRbSWNvbnMucHJvcGVydHldXG5cbiAgICB0aGlzLmNvbXBvbmVudCA9IGNvbXBvbmVudFxuICAgIHRoaXMuaWNvbmZvbnQgPSBpY29uZm9udFxuICAgIHRoaXMudmFsdWVzID0gbWVyZ2VEZWVwKFxuICAgICAgcHJlc2V0c1tpY29uZm9udF0sXG4gICAgICB2YWx1ZXNcbiAgICApIGFzIElJY29uc1sndmFsdWVzJ11cbiAgfVxufVxuIiwiLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgZ2V0T2JqZWN0VmFsdWVCeVBhdGggfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5pbXBvcnQgeyBjb25zb2xlRXJyb3IsIGNvbnNvbGVXYXJuIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVnVldGlmeVByZXNldCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvcHJlc2V0cydcbmltcG9ydCB7XG4gIFZ1ZXRpZnlMb2NhbGUsXG4gIExhbmcgYXMgSUxhbmcsXG59IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvbGFuZydcblxuY29uc3QgTEFOR19QUkVGSVggPSAnJHZ1ZXRpZnkuJ1xuY29uc3QgZmFsbGJhY2sgPSBTeW1ib2woJ0xhbmcgZmFsbGJhY2snKVxuXG5mdW5jdGlvbiBnZXRUcmFuc2xhdGlvbiAoXG4gIGxvY2FsZTogVnVldGlmeUxvY2FsZSxcbiAga2V5OiBzdHJpbmcsXG4gIHVzaW5nRGVmYXVsdCA9IGZhbHNlLFxuICBkZWZhdWx0TG9jYWxlOiBWdWV0aWZ5TG9jYWxlXG4pOiBzdHJpbmcge1xuICBjb25zdCBzaG9ydEtleSA9IGtleS5yZXBsYWNlKExBTkdfUFJFRklYLCAnJylcbiAgbGV0IHRyYW5zbGF0aW9uID0gZ2V0T2JqZWN0VmFsdWVCeVBhdGgobG9jYWxlLCBzaG9ydEtleSwgZmFsbGJhY2spIGFzIHN0cmluZyB8IHR5cGVvZiBmYWxsYmFja1xuXG4gIGlmICh0cmFuc2xhdGlvbiA9PT0gZmFsbGJhY2spIHtcbiAgICBpZiAodXNpbmdEZWZhdWx0KSB7XG4gICAgICBjb25zb2xlRXJyb3IoYFRyYW5zbGF0aW9uIGtleSBcIiR7c2hvcnRLZXl9XCIgbm90IGZvdW5kIGluIGZhbGxiYWNrYClcbiAgICAgIHRyYW5zbGF0aW9uID0ga2V5XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGVXYXJuKGBUcmFuc2xhdGlvbiBrZXkgXCIke3Nob3J0S2V5fVwiIG5vdCBmb3VuZCwgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHRgKVxuICAgICAgdHJhbnNsYXRpb24gPSBnZXRUcmFuc2xhdGlvbihkZWZhdWx0TG9jYWxlLCBrZXksIHRydWUsIGRlZmF1bHRMb2NhbGUpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRyYW5zbGF0aW9uXG59XG5cbmV4cG9ydCBjbGFzcyBMYW5nIGV4dGVuZHMgU2VydmljZSBpbXBsZW1lbnRzIElMYW5nIHtcbiAgc3RhdGljIHByb3BlcnR5OiAnbGFuZycgPSAnbGFuZydcblxuICBwdWJsaWMgY3VycmVudDogSUxhbmdbJ2N1cnJlbnQnXVxuXG4gIHB1YmxpYyBkZWZhdWx0TG9jYWxlID0gJ2VuJ1xuXG4gIHB1YmxpYyBsb2NhbGVzOiBJTGFuZ1snbG9jYWxlcyddXG5cbiAgcHJpdmF0ZSB0cmFuc2xhdG9yOiBJTGFuZ1sndCddXG5cbiAgY29uc3RydWN0b3IgKHByZXNldDogVnVldGlmeVByZXNldCkge1xuICAgIHN1cGVyKClcblxuICAgIGNvbnN0IHtcbiAgICAgIGN1cnJlbnQsXG4gICAgICBsb2NhbGVzLFxuICAgICAgdCxcbiAgICB9ID0gcHJlc2V0W0xhbmcucHJvcGVydHldXG5cbiAgICB0aGlzLmN1cnJlbnQgPSBjdXJyZW50XG4gICAgdGhpcy5sb2NhbGVzID0gbG9jYWxlc1xuICAgIHRoaXMudHJhbnNsYXRvciA9IHQgfHwgdGhpcy5kZWZhdWx0VHJhbnNsYXRvclxuICB9XG5cbiAgcHVibGljIGN1cnJlbnRMb2NhbGUgKGtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgdHJhbnNsYXRpb24gPSB0aGlzLmxvY2FsZXNbdGhpcy5jdXJyZW50XVxuICAgIGNvbnN0IGRlZmF1bHRMb2NhbGUgPSB0aGlzLmxvY2FsZXNbdGhpcy5kZWZhdWx0TG9jYWxlXVxuXG4gICAgcmV0dXJuIGdldFRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uLCBrZXksIGZhbHNlLCBkZWZhdWx0TG9jYWxlKVxuICB9XG5cbiAgcHVibGljIHQgKGtleTogc3RyaW5nLCAuLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgaWYgKCFrZXkuc3RhcnRzV2l0aChMQU5HX1BSRUZJWCkpIHJldHVybiB0aGlzLnJlcGxhY2Uoa2V5LCBwYXJhbXMpXG5cbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdG9yKGtleSwgLi4ucGFyYW1zKVxuICB9XG5cbiAgcHJpdmF0ZSBkZWZhdWx0VHJhbnNsYXRvciAoa2V5OiBzdHJpbmcsIC4uLnBhcmFtczogYW55W10pIHtcbiAgICByZXR1cm4gdGhpcy5yZXBsYWNlKHRoaXMuY3VycmVudExvY2FsZShrZXkpLCBwYXJhbXMpXG4gIH1cblxuICBwcml2YXRlIHJlcGxhY2UgKHN0cjogc3RyaW5nLCBwYXJhbXM6IGFueVtdKSB7XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC9cXHsoXFxkKylcXH0vZywgKG1hdGNoOiBzdHJpbmcsIGluZGV4OiBzdHJpbmcpID0+IHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICByZXR1cm4gU3RyaW5nKHBhcmFtc1sraW5kZXhdKVxuICAgIH0pXG4gIH1cbn1cbiIsImltcG9ydCB7IFhZWiwgTEFCIH0gZnJvbSAnLi4vY29sb3JVdGlscydcblxuY29uc3QgZGVsdGEgPSAwLjIwNjg5NjU1MTcyNDEzNzkzIC8vIDbDtzI5XG5cbmNvbnN0IGNpZWxhYkZvcndhcmRUcmFuc2Zvcm0gPSAodDogbnVtYmVyKTogbnVtYmVyID0+IChcbiAgdCA+IGRlbHRhICoqIDNcbiAgICA/IE1hdGguY2JydCh0KVxuICAgIDogKHQgLyAoMyAqIGRlbHRhICoqIDIpKSArIDQgLyAyOVxuKVxuXG5jb25zdCBjaWVsYWJSZXZlcnNlVHJhbnNmb3JtID0gKHQ6IG51bWJlcik6IG51bWJlciA9PiAoXG4gIHQgPiBkZWx0YVxuICAgID8gdCAqKiAzXG4gICAgOiAoMyAqIGRlbHRhICoqIDIpICogKHQgLSA0IC8gMjkpXG4pXG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tWFlaICh4eXo6IFhZWik6IExBQiB7XG4gIGNvbnN0IHRyYW5zZm9ybSA9IGNpZWxhYkZvcndhcmRUcmFuc2Zvcm1cbiAgY29uc3QgdHJhbnNmb3JtZWRZID0gdHJhbnNmb3JtKHh5elsxXSlcblxuICByZXR1cm4gW1xuICAgIDExNiAqIHRyYW5zZm9ybWVkWSAtIDE2LFxuICAgIDUwMCAqICh0cmFuc2Zvcm0oeHl6WzBdIC8gMC45NTA0NykgLSB0cmFuc2Zvcm1lZFkpLFxuICAgIDIwMCAqICh0cmFuc2Zvcm1lZFkgLSB0cmFuc2Zvcm0oeHl6WzJdIC8gMS4wODg4MykpLFxuICBdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b1hZWiAobGFiOiBMQUIpOiBYWVoge1xuICBjb25zdCB0cmFuc2Zvcm0gPSBjaWVsYWJSZXZlcnNlVHJhbnNmb3JtXG4gIGNvbnN0IExuID0gKGxhYlswXSArIDE2KSAvIDExNlxuICByZXR1cm4gW1xuICAgIHRyYW5zZm9ybShMbiArIGxhYlsxXSAvIDUwMCkgKiAwLjk1MDQ3LFxuICAgIHRyYW5zZm9ybShMbiksXG4gICAgdHJhbnNmb3JtKExuIC0gbGFiWzJdIC8gMjAwKSAqIDEuMDg4ODMsXG4gIF1cbn1cbiIsImltcG9ydCB7IGtleXMgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5pbXBvcnQgeyBjb2xvclRvSW50LCBpbnRUb0hleCwgY29sb3JUb0hleCwgQ29sb3JJbnQgfSBmcm9tICcuLi8uLi91dGlsL2NvbG9yVXRpbHMnXG5pbXBvcnQgKiBhcyBzUkdCIGZyb20gJy4uLy4uL3V0aWwvY29sb3IvdHJhbnNmb3JtU1JHQidcbmltcG9ydCAqIGFzIExBQiBmcm9tICcuLi8uLi91dGlsL2NvbG9yL3RyYW5zZm9ybUNJRUxBQidcbmltcG9ydCB7XG4gIFZ1ZXRpZnlQYXJzZWRUaGVtZSxcbiAgVnVldGlmeVRoZW1lSXRlbSxcbn0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy90aGVtZSdcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlIChcbiAgdGhlbWU6IFJlY29yZDxzdHJpbmcsIFZ1ZXRpZnlUaGVtZUl0ZW0+LFxuICBpc0l0ZW0gPSBmYWxzZSxcbiAgdmFyaWF0aW9ucyA9IHRydWUsXG4pOiBWdWV0aWZ5UGFyc2VkVGhlbWUge1xuICBjb25zdCB7IGFuY2hvciwgLi4udmFyaWFudCB9ID0gdGhlbWVcbiAgY29uc3QgY29sb3JzID0gT2JqZWN0LmtleXModmFyaWFudClcbiAgY29uc3QgcGFyc2VkVGhlbWU6IGFueSA9IHt9XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xvcnMubGVuZ3RoOyArK2kpIHtcbiAgICBjb25zdCBuYW1lID0gY29sb3JzW2ldXG4gICAgY29uc3QgdmFsdWUgPSB0aGVtZVtuYW1lXVxuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIGNvbnRpbnVlXG5cbiAgICBpZiAoIXZhcmlhdGlvbnMpIHtcbiAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0geyBiYXNlOiBpbnRUb0hleChjb2xvclRvSW50KHZhbHVlKSkgfVxuICAgIH0gZWxzZSBpZiAoaXNJdGVtKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKG5hbWUgPT09ICdiYXNlJyB8fCBuYW1lLnN0YXJ0c1dpdGgoJ2xpZ2h0ZW4nKSB8fCBuYW1lLnN0YXJ0c1dpdGgoJ2RhcmtlbicpKSB7XG4gICAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0gY29sb3JUb0hleCh2YWx1ZSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0gcGFyc2UodmFsdWUsIHRydWUsIHZhcmlhdGlvbnMpXG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0gZ2VuVmFyaWF0aW9ucyhuYW1lLCBjb2xvclRvSW50KHZhbHVlKSlcbiAgICB9XG4gIH1cblxuICBpZiAoIWlzSXRlbSkge1xuICAgIHBhcnNlZFRoZW1lLmFuY2hvciA9IGFuY2hvciB8fCBwYXJzZWRUaGVtZS5iYXNlIHx8IHBhcnNlZFRoZW1lLnByaW1hcnkuYmFzZVxuICB9XG5cbiAgcmV0dXJuIHBhcnNlZFRoZW1lXG59XG5cbi8qKlxuICogR2VuZXJhdGUgdGhlIENTUyBmb3IgYSBiYXNlIGNvbG9yICgucHJpbWFyeSlcbiAqL1xuY29uc3QgZ2VuQmFzZUNvbG9yID0gKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBgXG4udi1hcHBsaWNhdGlvbiAuJHtuYW1lfSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogJHt2YWx1ZX0gIWltcG9ydGFudDtcbn1cbi52LWFwcGxpY2F0aW9uIC4ke25hbWV9LS10ZXh0IHtcbiAgY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG4gIGNhcmV0LWNvbG9yOiAke3ZhbHVlfSAhaW1wb3J0YW50O1xufWBcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZSB0aGUgQ1NTIGZvciBhIHZhcmlhbnQgY29sb3IgKC5wcmltYXJ5LmRhcmtlbi0yKVxuICovXG5jb25zdCBnZW5WYXJpYW50Q29sb3IgPSAobmFtZTogc3RyaW5nLCB2YXJpYW50OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBbdHlwZSwgbl0gPSB2YXJpYW50LnNwbGl0KC8oXFxkKS8sIDIpXG4gIHJldHVybiBgXG4udi1hcHBsaWNhdGlvbiAuJHtuYW1lfS4ke3R5cGV9LSR7bn0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3ZhbHVlfSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG59XG4udi1hcHBsaWNhdGlvbiAuJHtuYW1lfS0tdGV4dC50ZXh0LS0ke3R5cGV9LSR7bn0ge1xuICBjb2xvcjogJHt2YWx1ZX0gIWltcG9ydGFudDtcbiAgY2FyZXQtY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG59YFxufVxuXG5jb25zdCBnZW5Db2xvclZhcmlhYmxlTmFtZSA9IChuYW1lOiBzdHJpbmcsIHZhcmlhbnQgPSAnYmFzZScpOiBzdHJpbmcgPT4gYC0tdi0ke25hbWV9LSR7dmFyaWFudH1gXG5cbmNvbnN0IGdlbkNvbG9yVmFyaWFibGUgPSAobmFtZTogc3RyaW5nLCB2YXJpYW50ID0gJ2Jhc2UnKTogc3RyaW5nID0+IGB2YXIoJHtnZW5Db2xvclZhcmlhYmxlTmFtZShuYW1lLCB2YXJpYW50KX0pYFxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuU3R5bGVzICh0aGVtZTogVnVldGlmeVBhcnNlZFRoZW1lLCBjc3NWYXIgPSBmYWxzZSk6IHN0cmluZyB7XG4gIGNvbnN0IHsgYW5jaG9yLCAuLi52YXJpYW50IH0gPSB0aGVtZVxuICBjb25zdCBjb2xvcnMgPSBPYmplY3Qua2V5cyh2YXJpYW50KVxuXG4gIGlmICghY29sb3JzLmxlbmd0aCkgcmV0dXJuICcnXG5cbiAgbGV0IHZhcmlhYmxlc0NzcyA9ICcnXG4gIGxldCBjc3MgPSAnJ1xuXG4gIGNvbnN0IGFDb2xvciA9IGNzc1ZhciA/IGdlbkNvbG9yVmFyaWFibGUoJ2FuY2hvcicpIDogYW5jaG9yXG4gIGNzcyArPSBgLnYtYXBwbGljYXRpb24gYSB7IGNvbG9yOiAke2FDb2xvcn07IH1gXG4gIGNzc1ZhciAmJiAodmFyaWFibGVzQ3NzICs9IGAgICR7Z2VuQ29sb3JWYXJpYWJsZU5hbWUoJ2FuY2hvcicpfTogJHthbmNob3J9O1xcbmApXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xvcnMubGVuZ3RoOyArK2kpIHtcbiAgICBjb25zdCBuYW1lID0gY29sb3JzW2ldXG4gICAgY29uc3QgdmFsdWUgPSB0aGVtZVtuYW1lXVxuXG4gICAgY3NzICs9IGdlbkJhc2VDb2xvcihuYW1lLCBjc3NWYXIgPyBnZW5Db2xvclZhcmlhYmxlKG5hbWUpIDogdmFsdWUuYmFzZSlcbiAgICBjc3NWYXIgJiYgKHZhcmlhYmxlc0NzcyArPSBgICAke2dlbkNvbG9yVmFyaWFibGVOYW1lKG5hbWUpfTogJHt2YWx1ZS5iYXNlfTtcXG5gKVxuXG4gICAgY29uc3QgdmFyaWFudHMgPSBrZXlzKHZhbHVlKVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFyaWFudHMubGVuZ3RoOyArK2kpIHtcbiAgICAgIGNvbnN0IHZhcmlhbnQgPSB2YXJpYW50c1tpXVxuICAgICAgY29uc3QgdmFyaWFudFZhbHVlID0gdmFsdWVbdmFyaWFudF1cbiAgICAgIGlmICh2YXJpYW50ID09PSAnYmFzZScpIGNvbnRpbnVlXG5cbiAgICAgIGNzcyArPSBnZW5WYXJpYW50Q29sb3IobmFtZSwgdmFyaWFudCwgY3NzVmFyID8gZ2VuQ29sb3JWYXJpYWJsZShuYW1lLCB2YXJpYW50KSA6IHZhcmlhbnRWYWx1ZSlcbiAgICAgIGNzc1ZhciAmJiAodmFyaWFibGVzQ3NzICs9IGAgICR7Z2VuQ29sb3JWYXJpYWJsZU5hbWUobmFtZSwgdmFyaWFudCl9OiAke3ZhcmlhbnRWYWx1ZX07XFxuYClcbiAgICB9XG4gIH1cblxuICBpZiAoY3NzVmFyKSB7XG4gICAgdmFyaWFibGVzQ3NzID0gYDpyb290IHtcXG4ke3ZhcmlhYmxlc0Nzc319XFxuXFxuYFxuICB9XG5cbiAgcmV0dXJuIHZhcmlhYmxlc0NzcyArIGNzc1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuVmFyaWF0aW9ucyAobmFtZTogc3RyaW5nLCB2YWx1ZTogQ29sb3JJbnQpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgY29uc3QgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIGJhc2U6IGludFRvSGV4KHZhbHVlKSxcbiAgfVxuXG4gIGZvciAobGV0IGkgPSA1OyBpID4gMDsgLS1pKSB7XG4gICAgdmFsdWVzW2BsaWdodGVuJHtpfWBdID0gaW50VG9IZXgobGlnaHRlbih2YWx1ZSwgaSkpXG4gIH1cblxuICBmb3IgKGxldCBpID0gMTsgaSA8PSA0OyArK2kpIHtcbiAgICB2YWx1ZXNbYGRhcmtlbiR7aX1gXSA9IGludFRvSGV4KGRhcmtlbih2YWx1ZSwgaSkpXG4gIH1cblxuICByZXR1cm4gdmFsdWVzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsaWdodGVuICh2YWx1ZTogQ29sb3JJbnQsIGFtb3VudDogbnVtYmVyKTogQ29sb3JJbnQge1xuICBjb25zdCBsYWIgPSBMQUIuZnJvbVhZWihzUkdCLnRvWFlaKHZhbHVlKSlcbiAgbGFiWzBdID0gbGFiWzBdICsgYW1vdW50ICogMTBcbiAgcmV0dXJuIHNSR0IuZnJvbVhZWihMQUIudG9YWVoobGFiKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRhcmtlbiAodmFsdWU6IENvbG9ySW50LCBhbW91bnQ6IG51bWJlcik6IENvbG9ySW50IHtcbiAgY29uc3QgbGFiID0gTEFCLmZyb21YWVooc1JHQi50b1hZWih2YWx1ZSkpXG4gIGxhYlswXSA9IGxhYlswXSAtIGFtb3VudCAqIDEwXG4gIHJldHVybiBzUkdCLmZyb21YWVooTEFCLnRvWFlaKGxhYikpXG59XG4iLCIvKiBlc2xpbnQtZGlzYWJsZSBuby1tdWx0aS1zcGFjZXMgKi9cbi8vIEV4dGVuc2lvbnNcbmltcG9ydCB7IFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlJ1xuXG4vLyBVdGlsaXRpZXNcbmltcG9ydCAqIGFzIFRoZW1lVXRpbHMgZnJvbSAnLi91dGlscydcbmltcG9ydCB7IGdldE5lc3RlZFZhbHVlIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5pbXBvcnQgeyBWdWV0aWZ5UHJlc2V0IH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9wcmVzZXRzJ1xuaW1wb3J0IHtcbiAgVnVldGlmeVBhcnNlZFRoZW1lLFxuICBWdWV0aWZ5VGhlbWVzLFxuICBWdWV0aWZ5VGhlbWVWYXJpYW50LFxuICBUaGVtZSBhcyBJVGhlbWUsXG59IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvdGhlbWUnXG5cbmV4cG9ydCBjbGFzcyBUaGVtZSBleHRlbmRzIFNlcnZpY2Uge1xuICBzdGF0aWMgcHJvcGVydHk6ICd0aGVtZScgPSAndGhlbWUnXG5cbiAgcHVibGljIGRpc2FibGVkID0gZmFsc2VcblxuICBwdWJsaWMgb3B0aW9uczogSVRoZW1lWydvcHRpb25zJ11cblxuICBwdWJsaWMgc3R5bGVFbD86IEhUTUxTdHlsZUVsZW1lbnRcblxuICBwdWJsaWMgdGhlbWVzOiBWdWV0aWZ5VGhlbWVzXG5cbiAgcHVibGljIGRlZmF1bHRzOiBWdWV0aWZ5VGhlbWVzXG5cbiAgcHJpdmF0ZSBpc0RhcmsgPSBudWxsIGFzIGJvb2xlYW4gfCBudWxsXG5cbiAgcHJpdmF0ZSB1bndhdGNoID0gbnVsbCBhcyAoKCkgPT4gdm9pZCkgfCBudWxsXG5cbiAgcHJpdmF0ZSB2dWVNZXRhID0gbnVsbCBhcyBhbnkgfCBudWxsXG5cbiAgY29uc3RydWN0b3IgKHByZXNldDogVnVldGlmeVByZXNldCkge1xuICAgIHN1cGVyKClcblxuICAgIGNvbnN0IHtcbiAgICAgIGRhcmssXG4gICAgICBkaXNhYmxlLFxuICAgICAgb3B0aW9ucyxcbiAgICAgIHRoZW1lcyxcbiAgICB9ID0gcHJlc2V0W1RoZW1lLnByb3BlcnR5XVxuXG4gICAgdGhpcy5kYXJrID0gQm9vbGVhbihkYXJrKVxuICAgIHRoaXMuZGVmYXVsdHMgPSB0aGlzLnRoZW1lcyA9IHRoZW1lc1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnNcblxuICAgIGlmIChkaXNhYmxlKSB7XG4gICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZVxuXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLnRoZW1lcyA9IHtcbiAgICAgIGRhcms6IHRoaXMuZmlsbFZhcmlhbnQodGhlbWVzLmRhcmssIHRydWUpLFxuICAgICAgbGlnaHQ6IHRoaXMuZmlsbFZhcmlhbnQodGhlbWVzLmxpZ2h0LCBmYWxzZSksXG4gICAgfVxuICB9XG5cbiAgLy8gV2hlbiBzZXR0aW5nIGNzcywgY2hlY2sgZm9yIGVsZW1lbnQgYW5kIGFwcGx5IG5ldyB2YWx1ZXNcbiAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGFjY2Vzc29yLXBhaXJzICovXG4gIHNldCBjc3MgKHZhbDogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMudnVlTWV0YSkge1xuICAgICAgaWYgKHRoaXMuaXNWdWVNZXRhMjMpIHtcbiAgICAgICAgdGhpcy5hcHBseVZ1ZU1ldGEyMygpXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5jaGVja09yQ3JlYXRlU3R5bGVFbGVtZW50KCkgJiYgKHRoaXMuc3R5bGVFbCEuaW5uZXJIVE1MID0gdmFsKVxuICB9XG5cbiAgc2V0IGRhcmsgKHZhbDogYm9vbGVhbikge1xuICAgIGNvbnN0IG9sZERhcmsgPSB0aGlzLmlzRGFya1xuXG4gICAgdGhpcy5pc0RhcmsgPSB2YWxcbiAgICAvLyBPbmx5IGFwcGx5IHRoZW1lIGFmdGVyIGRhcmtcbiAgICAvLyBoYXMgYWxyZWFkeSBiZWVuIHNldCBiZWZvcmVcbiAgICBvbGREYXJrICE9IG51bGwgJiYgdGhpcy5hcHBseVRoZW1lKClcbiAgfVxuXG4gIGdldCBkYXJrICgpIHtcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLmlzRGFyaylcbiAgfVxuXG4gIC8vIEFwcGx5IGN1cnJlbnQgdGhlbWUgZGVmYXVsdFxuICAvLyBvbmx5IGNhbGxlZCBvbiBjbGllbnQgc2lkZVxuICBwdWJsaWMgYXBwbHlUaGVtZSAoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybiB0aGlzLmNsZWFyQ3NzKClcblxuICAgIHRoaXMuY3NzID0gdGhpcy5nZW5lcmF0ZWRTdHlsZXNcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckNzcyAoKTogdm9pZCB7XG4gICAgdGhpcy5jc3MgPSAnJ1xuICB9XG5cbiAgLy8gSW5pdGlhbGl6ZSB0aGVtZSBmb3IgU1NSIGFuZCBTUEFcbiAgLy8gQXR0YWNoIHRvIHNzckNvbnRleHQgaGVhZCBvclxuICAvLyBhcHBseSBuZXcgdGhlbWUgdG8gZG9jdW1lbnRcbiAgcHVibGljIGluaXQgKHJvb3Q6IFZ1ZSwgc3NyQ29udGV4dD86IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm5cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKChyb290IGFzIGFueSkuJG1ldGEpIHtcbiAgICAgIHRoaXMuaW5pdFZ1ZU1ldGEocm9vdClcbiAgICB9IGVsc2UgaWYgKHNzckNvbnRleHQpIHtcbiAgICAgIHRoaXMuaW5pdFNTUihzc3JDb250ZXh0KVxuICAgIH1cblxuICAgIHRoaXMuaW5pdFRoZW1lKHJvb3QpXG4gIH1cblxuICAvLyBBbGxvd3MgZm9yIHlvdSB0byBzZXQgdGFyZ2V0IHRoZW1lXG4gIHB1YmxpYyBzZXRUaGVtZSAodGhlbWU6ICdsaWdodCcgfCAnZGFyaycsIHZhbHVlOiBvYmplY3QpIHtcbiAgICB0aGlzLnRoZW1lc1t0aGVtZV0gPSBPYmplY3QuYXNzaWduKHRoaXMudGhlbWVzW3RoZW1lXSwgdmFsdWUpXG4gICAgdGhpcy5hcHBseVRoZW1lKClcbiAgfVxuXG4gIC8vIFJlc2V0IHRoZW1lIGRlZmF1bHRzXG4gIHB1YmxpYyByZXNldFRoZW1lcyAoKSB7XG4gICAgdGhpcy50aGVtZXMubGlnaHQgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRlZmF1bHRzLmxpZ2h0KVxuICAgIHRoaXMudGhlbWVzLmRhcmsgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRlZmF1bHRzLmRhcmspXG4gICAgdGhpcy5hcHBseVRoZW1lKClcbiAgfVxuXG4gIC8vIENoZWNrIGZvciBleGlzdGVuY2Ugb2Ygc3R5bGUgZWxlbWVudFxuICBwcml2YXRlIGNoZWNrT3JDcmVhdGVTdHlsZUVsZW1lbnQgKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuc3R5bGVFbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXQnKSBhcyBIVE1MU3R5bGVFbGVtZW50XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmICh0aGlzLnN0eWxlRWwpIHJldHVybiB0cnVlXG5cbiAgICB0aGlzLmdlblN0eWxlRWxlbWVudCgpIC8vIElmIGRvZXNuJ3QgaGF2ZSBpdCwgY3JlYXRlIGl0XG5cbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLnN0eWxlRWwpXG4gIH1cblxuICBwcml2YXRlIGZpbGxWYXJpYW50IChcbiAgICB0aGVtZTogUGFydGlhbDxWdWV0aWZ5VGhlbWVWYXJpYW50PiA9IHt9LFxuICAgIGRhcms6IGJvb2xlYW5cbiAgKTogVnVldGlmeVRoZW1lVmFyaWFudCB7XG4gICAgY29uc3QgZGVmYXVsdFRoZW1lID0gdGhpcy50aGVtZXNbZGFyayA/ICdkYXJrJyA6ICdsaWdodCddXG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxcbiAgICAgIGRlZmF1bHRUaGVtZSxcbiAgICAgIHRoZW1lXG4gICAgKVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIHN0eWxlIGVsZW1lbnRcbiAgLy8gaWYgYXBwbGljYWJsZVxuICBwcml2YXRlIGdlblN0eWxlRWxlbWVudCAoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICB0aGlzLnN0eWxlRWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpXG4gICAgdGhpcy5zdHlsZUVsLnR5cGUgPSAndGV4dC9jc3MnXG4gICAgdGhpcy5zdHlsZUVsLmlkID0gJ3Z1ZXRpZnktdGhlbWUtc3R5bGVzaGVldCdcblxuICAgIGlmICh0aGlzLm9wdGlvbnMuY3NwTm9uY2UpIHtcbiAgICAgIHRoaXMuc3R5bGVFbC5zZXRBdHRyaWJ1dGUoJ25vbmNlJywgdGhpcy5vcHRpb25zLmNzcE5vbmNlKVxuICAgIH1cblxuICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodGhpcy5zdHlsZUVsKVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0VnVlTWV0YSAocm9vdDogYW55KSB7XG4gICAgdGhpcy52dWVNZXRhID0gcm9vdC4kbWV0YSgpXG4gICAgaWYgKHRoaXMuaXNWdWVNZXRhMjMpIHtcbiAgICAgIC8vIHZ1ZS1tZXRhIG5lZWRzIHRvIGFwcGx5IGFmdGVyIG1vdW50ZWQoKVxuICAgICAgcm9vdC4kbmV4dFRpY2soKCkgPT4ge1xuICAgICAgICB0aGlzLmFwcGx5VnVlTWV0YTIzKClcbiAgICAgIH0pXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBtZXRhS2V5TmFtZSA9IHR5cGVvZiB0aGlzLnZ1ZU1ldGEuZ2V0T3B0aW9ucyA9PT0gJ2Z1bmN0aW9uJyA/IHRoaXMudnVlTWV0YS5nZXRPcHRpb25zKCkua2V5TmFtZSA6ICdtZXRhSW5mbydcbiAgICBjb25zdCBtZXRhSW5mbyA9IHJvb3QuJG9wdGlvbnNbbWV0YUtleU5hbWVdIHx8IHt9XG5cbiAgICByb290LiRvcHRpb25zW21ldGFLZXlOYW1lXSA9ICgpID0+IHtcbiAgICAgIG1ldGFJbmZvLnN0eWxlID0gbWV0YUluZm8uc3R5bGUgfHwgW11cblxuICAgICAgY29uc3QgdnVldGlmeVN0eWxlc2hlZXQgPSBtZXRhSW5mby5zdHlsZS5maW5kKChzOiBhbnkpID0+IHMuaWQgPT09ICd2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXQnKVxuXG4gICAgICBpZiAoIXZ1ZXRpZnlTdHlsZXNoZWV0KSB7XG4gICAgICAgIG1ldGFJbmZvLnN0eWxlLnB1c2goe1xuICAgICAgICAgIGNzc1RleHQ6IHRoaXMuZ2VuZXJhdGVkU3R5bGVzLFxuICAgICAgICAgIHR5cGU6ICd0ZXh0L2NzcycsXG4gICAgICAgICAgaWQ6ICd2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXQnLFxuICAgICAgICAgIG5vbmNlOiAodGhpcy5vcHRpb25zIHx8IHt9KS5jc3BOb25jZSxcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZ1ZXRpZnlTdHlsZXNoZWV0LmNzc1RleHQgPSB0aGlzLmdlbmVyYXRlZFN0eWxlc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbWV0YUluZm9cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFwcGx5VnVlTWV0YTIzICgpIHtcbiAgICBjb25zdCB7IHNldCB9ID0gdGhpcy52dWVNZXRhLmFkZEFwcCgndnVldGlmeScpXG5cbiAgICBzZXQoe1xuICAgICAgc3R5bGU6IFt7XG4gICAgICAgIGNzc1RleHQ6IHRoaXMuZ2VuZXJhdGVkU3R5bGVzLFxuICAgICAgICB0eXBlOiAndGV4dC9jc3MnLFxuICAgICAgICBpZDogJ3Z1ZXRpZnktdGhlbWUtc3R5bGVzaGVldCcsXG4gICAgICAgIG5vbmNlOiB0aGlzLm9wdGlvbnMuY3NwTm9uY2UsXG4gICAgICB9XSxcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0U1NSIChzc3JDb250ZXh0PzogYW55KSB7XG4gICAgLy8gU1NSXG4gICAgY29uc3Qgbm9uY2UgPSB0aGlzLm9wdGlvbnMuY3NwTm9uY2UgPyBgIG5vbmNlPVwiJHt0aGlzLm9wdGlvbnMuY3NwTm9uY2V9XCJgIDogJydcbiAgICBzc3JDb250ZXh0LmhlYWQgPSBzc3JDb250ZXh0LmhlYWQgfHwgJydcbiAgICBzc3JDb250ZXh0LmhlYWQgKz0gYDxzdHlsZSB0eXBlPVwidGV4dC9jc3NcIiBpZD1cInZ1ZXRpZnktdGhlbWUtc3R5bGVzaGVldFwiJHtub25jZX0+JHt0aGlzLmdlbmVyYXRlZFN0eWxlc308L3N0eWxlPmBcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFRoZW1lIChyb290OiBWdWUpIHtcbiAgICAvLyBPbmx5IHdhdGNoIGZvciByZWFjdGl2aXR5IG9uIGNsaWVudCBzaWRlXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuXG4gICAgLy8gSWYgd2UgZ2V0IGhlcmUgc29tZWhvdywgZW5zdXJlXG4gICAgLy8gZXhpc3RpbmcgaW5zdGFuY2UgaXMgcmVtb3ZlZFxuICAgIGlmICh0aGlzLnVud2F0Y2gpIHtcbiAgICAgIHRoaXMudW53YXRjaCgpXG4gICAgICB0aGlzLnVud2F0Y2ggPSBudWxsXG4gICAgfVxuXG4gICAgLy8gVE9ETzogVXBkYXRlIHRvIHVzZSBSRkMgaWYgbWVyZ2VkXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3Z1ZWpzL3JmY3MvYmxvYi9hZHZhbmNlZC1yZWFjdGl2aXR5LWFwaS9hY3RpdmUtcmZjcy8wMDAwLWFkdmFuY2VkLXJlYWN0aXZpdHktYXBpLm1kXG4gICAgcm9vdC4kb25jZSgnaG9vazpjcmVhdGVkJywgKCkgPT4ge1xuICAgICAgY29uc3Qgb2JzID0gVnVlLm9ic2VydmFibGUoeyB0aGVtZXM6IHRoaXMudGhlbWVzIH0pXG4gICAgICB0aGlzLnVud2F0Y2ggPSByb290LiR3YXRjaCgoKSA9PiBvYnMudGhlbWVzLCAoKSA9PiB0aGlzLmFwcGx5VGhlbWUoKSwgeyBkZWVwOiB0cnVlIH0pXG4gICAgfSlcbiAgICB0aGlzLmFwcGx5VGhlbWUoKVxuICB9XG5cbiAgZ2V0IGN1cnJlbnRUaGVtZSAoKSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5kYXJrID8gJ2RhcmsnIDogJ2xpZ2h0J1xuXG4gICAgcmV0dXJuIHRoaXMudGhlbWVzW3RhcmdldF1cbiAgfVxuXG4gIGdldCBnZW5lcmF0ZWRTdHlsZXMgKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdGhlbWUgPSB0aGlzLnBhcnNlZFRoZW1lXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zIHx8IHt9XG4gICAgbGV0IGNzc1xuXG4gICAgaWYgKG9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICBjc3MgPSBvcHRpb25zLnRoZW1lQ2FjaGUuZ2V0KHRoZW1lKVxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICBpZiAoY3NzICE9IG51bGwpIHJldHVybiBjc3NcbiAgICB9XG5cbiAgICBjc3MgPSBUaGVtZVV0aWxzLmdlblN0eWxlcyh0aGVtZSwgb3B0aW9ucy5jdXN0b21Qcm9wZXJ0aWVzKVxuXG4gICAgaWYgKG9wdGlvbnMubWluaWZ5VGhlbWUgIT0gbnVsbCkge1xuICAgICAgY3NzID0gb3B0aW9ucy5taW5pZnlUaGVtZShjc3MpXG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICBvcHRpb25zLnRoZW1lQ2FjaGUuc2V0KHRoZW1lLCBjc3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIGNzc1xuICB9XG5cbiAgZ2V0IHBhcnNlZFRoZW1lICgpOiBWdWV0aWZ5UGFyc2VkVGhlbWUge1xuICAgIHJldHVybiBUaGVtZVV0aWxzLnBhcnNlKFxuICAgICAgdGhpcy5jdXJyZW50VGhlbWUgfHwge30sXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBnZXROZXN0ZWRWYWx1ZSh0aGlzLm9wdGlvbnMsIFsndmFyaWF0aW9ucyddLCB0cnVlKVxuICAgIClcbiAgfVxuXG4gIC8vIElzIHVzaW5nIHYyLjMgb2YgdnVlLW1ldGFcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL251eHQvdnVlLW1ldGEvcmVsZWFzZXMvdGFnL3YyLjMuMFxuICBwcml2YXRlIGdldCBpc1Z1ZU1ldGEyMyAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiB0aGlzLnZ1ZU1ldGEuYWRkQXBwID09PSAnZnVuY3Rpb24nXG4gIH1cbn1cbiIsImltcG9ydCB7IGluc3RhbGwgfSBmcm9tICcuL2luc3RhbGwnXG5cbi8vIFR5cGVzXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCB7XG4gIFVzZXJWdWV0aWZ5UHJlc2V0LFxuICBWdWV0aWZ5UHJlc2V0LFxufSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL3ByZXNldHMnXG5pbXBvcnQge1xuICBWdWV0aWZ5U2VydmljZSxcbiAgVnVldGlmeVNlcnZpY2VDb250cmFjdCxcbn0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcydcblxuLy8gU2VydmljZXNcbmltcG9ydCAqIGFzIHNlcnZpY2VzIGZyb20gJy4vc2VydmljZXMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZ1ZXRpZnkge1xuICBzdGF0aWMgaW5zdGFsbCA9IGluc3RhbGxcblxuICBzdGF0aWMgaW5zdGFsbGVkID0gZmFsc2VcblxuICBzdGF0aWMgdmVyc2lvbiA9IF9fVlVFVElGWV9WRVJTSU9OX19cblxuICBzdGF0aWMgY29uZmlnID0ge1xuICAgIHNpbGVudDogZmFsc2UsXG4gIH1cblxuICBwdWJsaWMgZnJhbWV3b3JrOiBEaWN0aW9uYXJ5PFZ1ZXRpZnlTZXJ2aWNlQ29udHJhY3Q+ID0ge1xuICAgIGlzSHlkcmF0aW5nOiBmYWxzZSxcbiAgfSBhcyBhbnlcblxuICBwdWJsaWMgaW5zdGFsbGVkOiBzdHJpbmdbXSA9IFtdXG5cbiAgcHVibGljIHByZXNldCA9IHt9IGFzIFZ1ZXRpZnlQcmVzZXRcblxuICBwdWJsaWMgdXNlclByZXNldDogVXNlclZ1ZXRpZnlQcmVzZXQgPSB7fVxuXG4gIGNvbnN0cnVjdG9yICh1c2VyUHJlc2V0OiBVc2VyVnVldGlmeVByZXNldCA9IHt9KSB7XG4gICAgdGhpcy51c2VyUHJlc2V0ID0gdXNlclByZXNldFxuXG4gICAgdGhpcy51c2Uoc2VydmljZXMuUHJlc2V0cylcbiAgICB0aGlzLnVzZShzZXJ2aWNlcy5BcHBsaWNhdGlvbilcbiAgICB0aGlzLnVzZShzZXJ2aWNlcy5CcmVha3BvaW50KVxuICAgIHRoaXMudXNlKHNlcnZpY2VzLkdvdG8pXG4gICAgdGhpcy51c2Uoc2VydmljZXMuSWNvbnMpXG4gICAgdGhpcy51c2Uoc2VydmljZXMuTGFuZylcbiAgICB0aGlzLnVzZShzZXJ2aWNlcy5UaGVtZSlcbiAgfVxuXG4gIC8vIENhbGxlZCBvbiB0aGUgbmV3IHZ1ZXRpZnkgaW5zdGFuY2VcbiAgLy8gYm9vdHN0cmFwIGluIGluc3RhbGwgYmVmb3JlQ3JlYXRlXG4gIC8vIEV4cG9zZXMgc3NyQ29udGV4dCBpZiBhdmFpbGFibGVcbiAgaW5pdCAocm9vdDogVnVlLCBzc3JDb250ZXh0Pzogb2JqZWN0KSB7XG4gICAgdGhpcy5pbnN0YWxsZWQuZm9yRWFjaChwcm9wZXJ0eSA9PiB7XG4gICAgICBjb25zdCBzZXJ2aWNlID0gdGhpcy5mcmFtZXdvcmtbcHJvcGVydHldXG5cbiAgICAgIHNlcnZpY2UuZnJhbWV3b3JrID0gdGhpcy5mcmFtZXdvcmtcblxuICAgICAgc2VydmljZS5pbml0KHJvb3QsIHNzckNvbnRleHQpXG4gICAgfSlcblxuICAgIC8vIHJ0bCBpcyBub3QgaW5zdGFsbGVkIGFuZFxuICAgIC8vIHdpbGwgbmV2ZXIgYmUgY2FsbGVkIGJ5XG4gICAgLy8gdGhlIGluaXQgcHJvY2Vzc1xuICAgIHRoaXMuZnJhbWV3b3JrLnJ0bCA9IEJvb2xlYW4odGhpcy5wcmVzZXQucnRsKSBhcyBhbnlcbiAgfVxuXG4gIC8vIEluc3RhbnRpYXRlIGEgVnVldGlmeVNlcnZpY2VcbiAgdXNlIChTZXJ2aWNlOiBWdWV0aWZ5U2VydmljZSkge1xuICAgIGNvbnN0IHByb3BlcnR5ID0gU2VydmljZS5wcm9wZXJ0eVxuXG4gICAgaWYgKHRoaXMuaW5zdGFsbGVkLmluY2x1ZGVzKHByb3BlcnR5KSkgcmV0dXJuXG5cbiAgICAvLyBUT0RPIG1heWJlIGEgc3BlY2lmaWMgdHlwZSBmb3IgYXJnIDI/XG4gICAgdGhpcy5mcmFtZXdvcmtbcHJvcGVydHldID0gbmV3IFNlcnZpY2UodGhpcy5wcmVzZXQsIHRoaXMgYXMgYW55KVxuICAgIHRoaXMuaW5zdGFsbGVkLnB1c2gocHJvcGVydHkpXG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///166\n")},,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return inject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return provide; });\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2);\n/* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(11);\n\n\n\n\nfunction generateWarning(child, parent) {\n return function () {\n return Object(_util_console__WEBPACK_IMPORTED_MODULE_3__[/* consoleWarn */ "c"])("The ".concat(child, " component must be used inside a ").concat(parent));\n };\n}\nfunction inject(namespace, child, parent) {\n var defaultImpl = child && parent ? {\n register: generateWarning(child, parent),\n unregister: generateWarning(child, parent)\n } : null;\n return vue__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].extend({\n name: \'registrable-inject\',\n inject: Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, namespace, {\n default: defaultImpl\n })\n });\n}\nfunction provide(namespace) {\n var self = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return vue__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].extend({\n name: \'registrable-provide\',\n provide: function provide() {\n return Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, namespace, self ? this : {\n register: this.register,\n unregister: this.unregister\n });\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9yZWdpc3RyYWJsZS9pbmRleC50cz9iZWRhIl0sIm5hbWVzIjpbImdlbmVyYXRlV2FybmluZyIsImNoaWxkIiwicGFyZW50IiwiY29uc29sZVdhcm4iLCJjb25jYXQiLCJpbmplY3QiLCJuYW1lc3BhY2UiLCJkZWZhdWx0SW1wbCIsInJlZ2lzdGVyIiwidW5yZWdpc3RlciIsIlZ1ZSIsImV4dGVuZCIsIm5hbWUiLCJfZGVmaW5lUHJvcGVydHkiLCJkZWZhdWx0IiwicHJvdmlkZSIsInNlbGYiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBO0FBRUE7QUFFQSxTQUFTQSxlQUFUQSxDQUEwQkMsS0FBMUIsRUFBeUNDLE1BQXpDLEVBQXVEO0VBQ3JELE9BQU87SUFBQSxPQUFNQyx5RUFBVyxRQUFBQyxNQUFBLENBQVFILEtBQUssdUNBQUFHLE1BQUEsQ0FBb0NGLE1BQU0sQ0FBdkQsQ0FBeEI7RUFBQTtBQUNEO0FBU0ssU0FBVUcsTUFBVkEsQ0FFSEMsU0FGRyxFQUVXTCxLQUZYLEVBRTJCQyxNQUYzQixFQUUwQztFQUM5QyxJQUFNSyxXQUFXLEdBQUdOLEtBQUssSUFBSUMsTUFBVCxHQUFrQjtJQUNwQ00sUUFBUSxFQUFFUixlQUFlLENBQUNDLEtBQUQsRUFBUUMsTUFBUixDQURXO0lBRXBDTyxVQUFVLEVBQUVULGVBQWUsQ0FBQ0MsS0FBRCxFQUFRQyxNQUFSO0VBRlMsQ0FBbEIsR0FHaEIsSUFISjtFQUtBLE9BQU9RLG1EQUFHLENBQUNDLE1BQUosQ0FBVztJQUNoQkMsSUFBSSxFQUFFLG9CQURVO0lBR2hCUCxNQUFNLEVBQUFRLGlHQUFBLEtBQ0hQLFNBQUQsRUFBYTtNQUNYUSxPQUFPLEVBQUVQO0lBREU7RUFKQyxDQUFYLENBQVA7QUFTRDtBQUVLLFNBQVVRLE9BQVZBLENBQW1CVCxTQUFuQixFQUFrRDtFQUFBLElBQVpVLElBQUksR0FBQUMsU0FBQSxDQUFBQyxNQUFBLFFBQUFELFNBQUEsUUFBQUUsU0FBQSxHQUFBRixTQUFBLE1BQUcsS0FBN0M7RUFDSixPQUFPUCxtREFBRyxDQUFDQyxNQUFKLENBQVc7SUFDaEJDLElBQUksRUFBRSxxQkFEVTtJQUdoQkcsT0FBTyxXQUFBQSxRQUFBO01BQ0wsT0FBQUYsaUdBQUEsS0FDR1AsU0FBRCxFQUFhVSxJQUFJLEdBQUcsSUFBSCxHQUFVO1FBQ3pCUixRQUFRLEVBQUcsS0FBYUEsUUFEQztRQUV6QkMsVUFBVSxFQUFHLEtBQWFBO01BRkQ7SUFLOUI7RUFWZSxDQUFYLENBQVA7QUFZRCIsImZpbGUiOiIxNjkuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCB7IFZ1ZUNvbnN0cnVjdG9yIH0gZnJvbSAndnVlL3R5cGVzL3Z1ZSdcbmltcG9ydCB7IGNvbnNvbGVXYXJuIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuXG5mdW5jdGlvbiBnZW5lcmF0ZVdhcm5pbmcgKGNoaWxkOiBzdHJpbmcsIHBhcmVudDogc3RyaW5nKSB7XG4gIHJldHVybiAoKSA9PiBjb25zb2xlV2FybihgVGhlICR7Y2hpbGR9IGNvbXBvbmVudCBtdXN0IGJlIHVzZWQgaW5zaWRlIGEgJHtwYXJlbnR9YClcbn1cblxuZXhwb3J0IHR5cGUgUmVnaXN0cmFibGU8VCBleHRlbmRzIHN0cmluZywgQyBleHRlbmRzIFZ1ZUNvbnN0cnVjdG9yIHwgbnVsbCA9IG51bGw+ID0gVnVlQ29uc3RydWN0b3I8VnVlICYge1xuICBbSyBpbiBUXTogQyBleHRlbmRzIFZ1ZUNvbnN0cnVjdG9yID8gSW5zdGFuY2VUeXBlPEM+IDoge1xuICAgIHJlZ2lzdGVyICguLi5wcm9wczogYW55W10pOiB2b2lkXG4gICAgdW5yZWdpc3RlciAoc2VsZjogYW55KTogdm9pZFxuICB9XG59PlxuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0PFxuICBUIGV4dGVuZHMgc3RyaW5nLCBDIGV4dGVuZHMgVnVlQ29uc3RydWN0b3IgfCBudWxsID0gbnVsbFxuPiAobmFtZXNwYWNlOiBULCBjaGlsZD86IHN0cmluZywgcGFyZW50Pzogc3RyaW5nKTogUmVnaXN0cmFibGU8VCwgQz4ge1xuICBjb25zdCBkZWZhdWx0SW1wbCA9IGNoaWxkICYmIHBhcmVudCA/IHtcbiAgICByZWdpc3RlcjogZ2VuZXJhdGVXYXJuaW5nKGNoaWxkLCBwYXJlbnQpLFxuICAgIHVucmVnaXN0ZXI6IGdlbmVyYXRlV2FybmluZyhjaGlsZCwgcGFyZW50KSxcbiAgfSA6IG51bGxcblxuICByZXR1cm4gVnVlLmV4dGVuZCh7XG4gICAgbmFtZTogJ3JlZ2lzdHJhYmxlLWluamVjdCcsXG5cbiAgICBpbmplY3Q6IHtcbiAgICAgIFtuYW1lc3BhY2VdOiB7XG4gICAgICAgIGRlZmF1bHQ6IGRlZmF1bHRJbXBsLFxuICAgICAgfSxcbiAgICB9LFxuICB9KVxufVxuXG5leHBvcnQgZnVuY3Rpb24gcHJvdmlkZSAobmFtZXNwYWNlOiBzdHJpbmcsIHNlbGYgPSBmYWxzZSkge1xuICByZXR1cm4gVnVlLmV4dGVuZCh7XG4gICAgbmFtZTogJ3JlZ2lzdHJhYmxlLXByb3ZpZGUnLFxuXG4gICAgcHJvdmlkZSAoKTogb2JqZWN0IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIFtuYW1lc3BhY2VdOiBzZWxmID8gdGhpcyA6IHtcbiAgICAgICAgICByZWdpc3RlcjogKHRoaXMgYXMgYW55KS5yZWdpc3RlcixcbiAgICAgICAgICB1bnJlZ2lzdGVyOiAodGhpcyBhcyBhbnkpLnVucmVnaXN0ZXIsXG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfSxcbiAgfSlcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///169\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return VGrid; });\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(92);\n/* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(82);\n/* harmony import */ var core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_starts_with_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_string_trim_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(91);\n/* harmony import */ var core_js_modules_es_string_trim_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_trim_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(2);\n\n\n\n\n\n\n\n// Types\n\nfunction VGrid(name) {\n /* @vue/component */\n return vue__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"].extend({\n name: "v-".concat(name),\n functional: true,\n props: {\n id: String,\n tag: {\n type: String,\n default: \'div\'\n }\n },\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n data.staticClass = "".concat(name, " ").concat(data.staticClass || \'\').trim();\n var attrs = data.attrs;\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {};\n var classes = Object.keys(attrs).filter(function (key) {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === \'slot\') return false;\n var value = attrs[key]; // add back data attributes like data-test="foo" but do not\n // add them as classes\n\n if (key.startsWith(\'data-\')) {\n data.attrs[key] = value;\n return false;\n }\n return value || typeof value === \'string\';\n });\n if (classes.length) data.staticClass += " ".concat(classes.join(\' \'));\n }\n if (props.id) {\n data.domProps = data.domProps || {};\n data.domProps.id = props.id;\n }\n return h(props.tag, data, children);\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkdyaWQvZ3JpZC50cz9mMzZhIl0sIm5hbWVzIjpbIlZHcmlkIiwibmFtZSIsIlZ1ZSIsImV4dGVuZCIsImNvbmNhdCIsImZ1bmN0aW9uYWwiLCJwcm9wcyIsImlkIiwiU3RyaW5nIiwidGFnIiwidHlwZSIsImRlZmF1bHQiLCJyZW5kZXIiLCJoIiwiX3JlZiIsImRhdGEiLCJjaGlsZHJlbiIsInN0YXRpY0NsYXNzIiwidHJpbSIsImF0dHJzIiwiY2xhc3NlcyIsIk9iamVjdCIsImtleXMiLCJmaWx0ZXIiLCJrZXkiLCJ2YWx1ZSIsInN0YXJ0c1dpdGgiLCJsZW5ndGgiLCJqb2luIiwiZG9tUHJvcHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFDQTtBQUVjLFNBQVVBLEtBQVZBLENBQWlCQyxJQUFqQixFQUE2QjtFQUN6QztFQUNBLE9BQU9DLG1EQUFHLENBQUNDLE1BQUosQ0FBVztJQUNoQkYsSUFBSSxPQUFBRyxNQUFBLENBQU9ILElBQUksQ0FEQztJQUdoQkksVUFBVSxFQUFFLElBSEk7SUFLaEJDLEtBQUssRUFBRTtNQUNMQyxFQUFFLEVBQUVDLE1BREM7TUFFTEMsR0FBRyxFQUFFO1FBQ0hDLElBQUksRUFBRUYsTUFESDtRQUVIRyxPQUFPLEVBQUU7TUFGTjtJQUZBLENBTFM7SUFhaEJDLE1BQU0sV0FBQUEsT0FBRUMsQ0FBRixFQUFBQyxJQUFBLEVBQThCO01BQUEsSUFBdkJSLEtBQUYsR0FBQVEsSUFBQSxDQUFFUixLQUFGO1FBQVNTLElBQVQsR0FBQUQsSUFBQSxDQUFTQyxJQUFUO1FBQWVDLFFBQUEsR0FBQUYsSUFBQSxDQUFBRSxRQUFBO01BQ3hCRCxJQUFJLENBQUNFLFdBQUwsR0FBb0IsR0FBQWIsTUFBQSxDQUFHSCxJQUFJLE9BQUFHLE1BQUEsQ0FBSVcsSUFBSSxDQUFDRSxXQUFMLElBQW9CLEVBQUUsRUFBSUMsSUFBdEMsRUFBbkI7TUFFQSxJQUFRQyxLQUFBLEdBQVVKLElBQWxCLENBQVFJLEtBQUE7TUFDUixJQUFJQSxLQUFKLEVBQVc7UUFDVDtRQUNBSixJQUFJLENBQUNJLEtBQUwsR0FBYSxFQUFiO1FBQ0EsSUFBTUMsT0FBTyxHQUFHQyxNQUFNLENBQUNDLElBQVAsQ0FBWUgsS0FBWixFQUFtQkksTUFBbkIsQ0FBMEIsVUFBQUMsR0FBRyxFQUFHO1VBQzlDO1VBQ0E7VUFDQSxJQUFJQSxHQUFHLEtBQUssTUFBWixFQUFvQixPQUFPLEtBQVA7VUFFcEIsSUFBTUMsS0FBSyxHQUFHTixLQUFLLENBQUNLLEdBQUQsQ0FBbkIsQ0FMOEMsQ0FPOUM7VUFDQTs7VUFDQSxJQUFJQSxHQUFHLENBQUNFLFVBQUosQ0FBZSxPQUFmLENBQUosRUFBNkI7WUFDM0JYLElBQUksQ0FBQ0ksS0FBTCxDQUFZSyxHQUFaLElBQW1CQyxLQUFuQjtZQUNBLE9BQU8sS0FBUDtVQUNEO1VBRUQsT0FBT0EsS0FBSyxJQUFJLE9BQU9BLEtBQVAsS0FBaUIsUUFBakM7UUFDRCxDQWZlLENBQWhCO1FBaUJBLElBQUlMLE9BQU8sQ0FBQ08sTUFBWixFQUFvQlosSUFBSSxDQUFDRSxXQUFMLFFBQUFiLE1BQUEsQ0FBd0JnQixPQUFPLENBQUNRLElBQVIsQ0FBYSxHQUFiLENBQWlCLENBQXpDO01BQ3JCO01BRUQsSUFBSXRCLEtBQUssQ0FBQ0MsRUFBVixFQUFjO1FBQ1pRLElBQUksQ0FBQ2MsUUFBTCxHQUFnQmQsSUFBSSxDQUFDYyxRQUFMLElBQWlCLEVBQWpDO1FBQ0FkLElBQUksQ0FBQ2MsUUFBTCxDQUFjdEIsRUFBZCxHQUFtQkQsS0FBSyxDQUFDQyxFQUF6QjtNQUNEO01BRUQsT0FBT00sQ0FBQyxDQUFDUCxLQUFLLENBQUNHLEdBQVAsRUFBWU0sSUFBWixFQUFrQkMsUUFBbEIsQ0FBUjtJQUNEO0VBOUNlLENBQVgsQ0FBUDtBQWdERCIsImZpbGUiOiIxNzAuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUeXBlc1xuaW1wb3J0IFZ1ZSwgeyBWTm9kZSB9IGZyb20gJ3Z1ZSdcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gVkdyaWQgKG5hbWU6IHN0cmluZykge1xuICAvKiBAdnVlL2NvbXBvbmVudCAqL1xuICByZXR1cm4gVnVlLmV4dGVuZCh7XG4gICAgbmFtZTogYHYtJHtuYW1lfWAsXG5cbiAgICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gICAgcHJvcHM6IHtcbiAgICAgIGlkOiBTdHJpbmcsXG4gICAgICB0YWc6IHtcbiAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICBkZWZhdWx0OiAnZGl2JyxcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIHJlbmRlciAoaCwgeyBwcm9wcywgZGF0YSwgY2hpbGRyZW4gfSk6IFZOb2RlIHtcbiAgICAgIGRhdGEuc3RhdGljQ2xhc3MgPSAoYCR7bmFtZX0gJHtkYXRhLnN0YXRpY0NsYXNzIHx8ICcnfWApLnRyaW0oKVxuXG4gICAgICBjb25zdCB7IGF0dHJzIH0gPSBkYXRhXG4gICAgICBpZiAoYXR0cnMpIHtcbiAgICAgICAgLy8gcmVzZXQgYXR0cnMgdG8gZXh0cmFjdCB1dGlsaXR5IGNsYXNlcyBsaWtlIHBhLTNcbiAgICAgICAgZGF0YS5hdHRycyA9IHt9XG4gICAgICAgIGNvbnN0IGNsYXNzZXMgPSBPYmplY3Qua2V5cyhhdHRycykuZmlsdGVyKGtleSA9PiB7XG4gICAgICAgICAgLy8gVE9ETzogUmVtb3ZlIG9uY2UgcmVzb2x2ZWRcbiAgICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdnVlanMvdnVlL2lzc3Vlcy83ODQxXG4gICAgICAgICAgaWYgKGtleSA9PT0gJ3Nsb3QnKSByZXR1cm4gZmFsc2VcblxuICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXR0cnNba2V5XVxuXG4gICAgICAgICAgLy8gYWRkIGJhY2sgZGF0YSBhdHRyaWJ1dGVzIGxpa2UgZGF0YS10ZXN0PVwiZm9vXCIgYnV0IGRvIG5vdFxuICAgICAgICAgIC8vIGFkZCB0aGVtIGFzIGNsYXNzZXNcbiAgICAgICAgICBpZiAoa2V5LnN0YXJ0c1dpdGgoJ2RhdGEtJykpIHtcbiAgICAgICAgICAgIGRhdGEuYXR0cnMhW2tleV0gPSB2YWx1ZVxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIHZhbHVlIHx8IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZydcbiAgICAgICAgfSlcblxuICAgICAgICBpZiAoY2xhc3Nlcy5sZW5ndGgpIGRhdGEuc3RhdGljQ2xhc3MgKz0gYCAke2NsYXNzZXMuam9pbignICcpfWBcbiAgICAgIH1cblxuICAgICAgaWYgKHByb3BzLmlkKSB7XG4gICAgICAgIGRhdGEuZG9tUHJvcHMgPSBkYXRhLmRvbVByb3BzIHx8IHt9XG4gICAgICAgIGRhdGEuZG9tUHJvcHMuaWQgPSBwcm9wcy5pZFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gaChwcm9wcy50YWcsIGRhdGEsIGNoaWxkcmVuKVxuICAgIH0sXG4gIH0pXG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///170\n')},,,,,,,,,,,,,,,,,,,,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(62);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n\n\nfunction searchChildren(children) {\n var results = [];\n for (var index = 0; index < children.length; index++) {\n var child = children[index];\n if (child.isActive && child.isDependent) {\n results.push(child);\n } else {\n results.push.apply(results, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(searchChildren(child.$children)));\n }\n }\n return results;\n}\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])().extend({\n name: \'dependent\',\n data: function data() {\n return {\n closeDependents: true,\n isActive: false,\n isDependent: true\n };\n },\n watch: {\n isActive: function isActive(val) {\n if (val) return;\n var openDependents = this.getOpenDependents();\n for (var index = 0; index < openDependents.length; index++) {\n openDependents[index].isActive = false;\n }\n }\n },\n methods: {\n getOpenDependents: function getOpenDependents() {\n if (this.closeDependents) return searchChildren(this.$children);\n return [];\n },\n getOpenDependentElements: function getOpenDependentElements() {\n var result = [];\n var openDependents = this.getOpenDependents();\n for (var index = 0; index < openDependents.length; index++) {\n result.push.apply(result, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(openDependents[index].getClickableDependentElements()));\n }\n return result;\n },\n getClickableDependentElements: function getClickableDependentElements() {\n var result = [this.$el];\n if (this.$refs.content) result.push(this.$refs.content);\n if (this.overlay) result.push(this.overlay.$el);\n result.push.apply(result, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this.getOpenDependentElements()));\n return result;\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9kZXBlbmRlbnQvaW5kZXgudHM/NDhhOCJdLCJuYW1lcyI6WyJzZWFyY2hDaGlsZHJlbiIsImNoaWxkcmVuIiwicmVzdWx0cyIsImluZGV4IiwibGVuZ3RoIiwiY2hpbGQiLCJpc0FjdGl2ZSIsImlzRGVwZW5kZW50IiwicHVzaCIsImFwcGx5IiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiJGNoaWxkcmVuIiwibWl4aW5zIiwiZXh0ZW5kIiwibmFtZSIsImRhdGEiLCJjbG9zZURlcGVuZGVudHMiLCJ3YXRjaCIsInZhbCIsIm9wZW5EZXBlbmRlbnRzIiwiZ2V0T3BlbkRlcGVuZGVudHMiLCJtZXRob2RzIiwiZ2V0T3BlbkRlcGVuZGVudEVsZW1lbnRzIiwicmVzdWx0IiwiZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMiLCIkZWwiLCIkcmVmcyIsImNvbnRlbnQiLCJvdmVybGF5Il0sIm1hcHBpbmdzIjoiOzs7QUFFQTtBQWdCQSxTQUFTQSxjQUFUQSxDQUF5QkMsUUFBekIsRUFBd0M7RUFDdEMsSUFBTUMsT0FBTyxHQUFHLEVBQWhCO0VBQ0EsS0FBSyxJQUFJQyxLQUFLLEdBQUcsQ0FBakIsRUFBb0JBLEtBQUssR0FBR0YsUUFBUSxDQUFDRyxNQUFyQyxFQUE2Q0QsS0FBSyxFQUFsRCxFQUFzRDtJQUNwRCxJQUFNRSxLQUFLLEdBQUdKLFFBQVEsQ0FBQ0UsS0FBRCxDQUF0QjtJQUNBLElBQUlFLEtBQUssQ0FBQ0MsUUFBTixJQUFrQkQsS0FBSyxDQUFDRSxXQUE1QixFQUF5QztNQUN2Q0wsT0FBTyxDQUFDTSxJQUFSLENBQWFILEtBQWI7SUFDRCxDQUZELE1BRU87TUFDTEgsT0FBTyxDQUFDTSxJQUFSLENBQUFDLEtBQUEsQ0FBQVAsT0FBTyxFQUFBUSxvR0FBQSxDQUFTVixjQUFjLENBQUNLLEtBQUssQ0FBQ00sU0FBUCxDQUE5QjtJQUNEO0VBQ0Y7RUFFRCxPQUFPVCxPQUFQO0FBQ0Q7QUFFRDs7QUFDZVUsNkhBQU0sR0FBa0JDLE1BQXhCLENBQStCO0VBQzVDQyxJQUFJLEVBQUUsV0FEc0M7RUFHNUNDLElBQUksV0FBQUEsS0FBQTtJQUNGLE9BQU87TUFDTEMsZUFBZSxFQUFFLElBRFo7TUFFTFYsUUFBUSxFQUFFLEtBRkw7TUFHTEMsV0FBVyxFQUFFO0lBSFIsQ0FBUDtFQUtELENBVDJDO0VBVzVDVSxLQUFLLEVBQUU7SUFDTFgsUUFBUSxXQUFBQSxTQUFFWSxHQUFGLEVBQUs7TUFDWCxJQUFJQSxHQUFKLEVBQVM7TUFFVCxJQUFNQyxjQUFjLEdBQUcsS0FBS0MsaUJBQUwsRUFBdkI7TUFDQSxLQUFLLElBQUlqQixLQUFLLEdBQUcsQ0FBakIsRUFBb0JBLEtBQUssR0FBR2dCLGNBQWMsQ0FBQ2YsTUFBM0MsRUFBbURELEtBQUssRUFBeEQsRUFBNEQ7UUFDMURnQixjQUFjLENBQUNoQixLQUFELENBQWQsQ0FBc0JHLFFBQXRCLEdBQWlDLEtBQWpDO01BQ0Q7SUFDRjtFQVJJLENBWHFDO0VBc0I1Q2UsT0FBTyxFQUFFO0lBQ1BELGlCQUFpQixXQUFBQSxrQkFBQTtNQUNmLElBQUksS0FBS0osZUFBVCxFQUEwQixPQUFPaEIsY0FBYyxDQUFDLEtBQUtXLFNBQU4sQ0FBckI7TUFFMUIsT0FBTyxFQUFQO0lBQ0QsQ0FMTTtJQU1QVyx3QkFBd0IsV0FBQUEseUJBQUE7TUFDdEIsSUFBTUMsTUFBTSxHQUFHLEVBQWY7TUFDQSxJQUFNSixjQUFjLEdBQUcsS0FBS0MsaUJBQUwsRUFBdkI7TUFFQSxLQUFLLElBQUlqQixLQUFLLEdBQUcsQ0FBakIsRUFBb0JBLEtBQUssR0FBR2dCLGNBQWMsQ0FBQ2YsTUFBM0MsRUFBbURELEtBQUssRUFBeEQsRUFBNEQ7UUFDMURvQixNQUFNLENBQUNmLElBQVAsQ0FBQUMsS0FBQSxDQUFBYyxNQUFNLEVBQUFiLG9HQUFBLENBQVNTLGNBQWMsQ0FBQ2hCLEtBQUQsQ0FBZCxDQUFzQnFCLDZCQUF0QixFQUFmO01BQ0Q7TUFFRCxPQUFPRCxNQUFQO0lBQ0QsQ0FmTTtJQWdCUEMsNkJBQTZCLFdBQUFBLDhCQUFBO01BQzNCLElBQU1ELE1BQU0sR0FBRyxDQUFDLEtBQUtFLEdBQU4sQ0FBZjtNQUNBLElBQUksS0FBS0MsS0FBTCxDQUFXQyxPQUFmLEVBQXdCSixNQUFNLENBQUNmLElBQVAsQ0FBWSxLQUFLa0IsS0FBTCxDQUFXQyxPQUF2QjtNQUN4QixJQUFJLEtBQUtDLE9BQVQsRUFBa0JMLE1BQU0sQ0FBQ2YsSUFBUCxDQUFZLEtBQUtvQixPQUFMLENBQWFILEdBQXpCO01BQ2xCRixNQUFNLENBQUNmLElBQVAsQ0FBQUMsS0FBQSxDQUFBYyxNQUFNLEVBQUFiLG9HQUFBLENBQVMsS0FBS1ksd0JBQUwsRUFBZjtNQUVBLE9BQU9DLE1BQVA7SUFDRDtFQXZCTTtBQXRCbUMsQ0FBL0IsQ0FBZiIsImZpbGUiOiIxOTEuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcblxuaW1wb3J0IG1peGlucyBmcm9tICcuLi8uLi91dGlsL21peGlucydcbmltcG9ydCB7IFZPdmVybGF5IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9WT3ZlcmxheSdcblxuaW50ZXJmYWNlIG9wdGlvbnMge1xuICAkZWw6IEhUTUxFbGVtZW50XG4gICRyZWZzOiB7XG4gICAgY29udGVudD86IEhUTUxFbGVtZW50XG4gIH1cbiAgb3ZlcmxheT86IEluc3RhbmNlVHlwZTx0eXBlb2YgVk92ZXJsYXk+XG59XG5cbmludGVyZmFjZSBEZXBlbmRlbnRJbnN0YW5jZSBleHRlbmRzIFZ1ZSB7XG4gIGlzQWN0aXZlPzogYm9vbGVhblxuICBpc0RlcGVuZGVudD86IGJvb2xlYW5cbn1cblxuZnVuY3Rpb24gc2VhcmNoQ2hpbGRyZW4gKGNoaWxkcmVuOiBWdWVbXSk6IERlcGVuZGVudEluc3RhbmNlW10ge1xuICBjb25zdCByZXN1bHRzID0gW11cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNoaWxkcmVuLmxlbmd0aDsgaW5kZXgrKykge1xuICAgIGNvbnN0IGNoaWxkID0gY2hpbGRyZW5baW5kZXhdIGFzIERlcGVuZGVudEluc3RhbmNlXG4gICAgaWYgKGNoaWxkLmlzQWN0aXZlICYmIGNoaWxkLmlzRGVwZW5kZW50KSB7XG4gICAgICByZXN1bHRzLnB1c2goY2hpbGQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdHMucHVzaCguLi5zZWFyY2hDaGlsZHJlbihjaGlsZC4kY2hpbGRyZW4pKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXN1bHRzXG59XG5cbi8qIEB2dWUvY29tcG9uZW50ICovXG5leHBvcnQgZGVmYXVsdCBtaXhpbnM8VnVlICYgb3B0aW9ucz4oKS5leHRlbmQoe1xuICBuYW1lOiAnZGVwZW5kZW50JyxcblxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2xvc2VEZXBlbmRlbnRzOiB0cnVlLFxuICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAgaXNEZXBlbmRlbnQ6IHRydWUsXG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmUgKHZhbCkge1xuICAgICAgaWYgKHZhbCkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IG9wZW5EZXBlbmRlbnRzID0gdGhpcy5nZXRPcGVuRGVwZW5kZW50cygpXG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgb3BlbkRlcGVuZGVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIG9wZW5EZXBlbmRlbnRzW2luZGV4XS5pc0FjdGl2ZSA9IGZhbHNlXG4gICAgICB9XG4gICAgfSxcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2V0T3BlbkRlcGVuZGVudHMgKCk6IGFueVtdIHtcbiAgICAgIGlmICh0aGlzLmNsb3NlRGVwZW5kZW50cykgcmV0dXJuIHNlYXJjaENoaWxkcmVuKHRoaXMuJGNoaWxkcmVuKVxuXG4gICAgICByZXR1cm4gW11cbiAgICB9LFxuICAgIGdldE9wZW5EZXBlbmRlbnRFbGVtZW50cyAoKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBbXVxuICAgICAgY29uc3Qgb3BlbkRlcGVuZGVudHMgPSB0aGlzLmdldE9wZW5EZXBlbmRlbnRzKClcblxuICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IG9wZW5EZXBlbmRlbnRzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICByZXN1bHQucHVzaCguLi5vcGVuRGVwZW5kZW50c1tpbmRleF0uZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMoKSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdFxuICAgIH0sXG4gICAgZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMgKCk6IEhUTUxFbGVtZW50W10ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gW3RoaXMuJGVsXVxuICAgICAgaWYgKHRoaXMuJHJlZnMuY29udGVudCkgcmVzdWx0LnB1c2godGhpcy4kcmVmcy5jb250ZW50KVxuICAgICAgaWYgKHRoaXMub3ZlcmxheSkgcmVzdWx0LnB1c2godGhpcy5vdmVybGF5LiRlbCBhcyBIVE1MRWxlbWVudClcbiAgICAgIHJlc3VsdC5wdXNoKC4uLnRoaXMuZ2V0T3BlbkRlcGVuZGVudEVsZW1lbnRzKCkpXG5cbiAgICAgIHJldHVybiByZXN1bHRcbiAgICB9LFxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///191\n')},function(module,exports,__webpack_require__){eval(';(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(21));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function (undefined) {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var Base = C_lib.Base;\n\t var X32WordArray = C_lib.WordArray;\n\n\t /**\n\t * x64 namespace.\n\t */\n\t var C_x64 = C.x64 = {};\n\n\t /**\n\t * A 64-bit word.\n\t */\n\t var X64Word = C_x64.Word = Base.extend({\n\t /**\n\t * Initializes a newly created 64-bit word.\n\t *\n\t * @param {number} high The high 32 bits.\n\t * @param {number} low The low 32 bits.\n\t *\n\t * @example\n\t *\n\t * var x64Word = CryptoJS.x64.Word.create(0x00010203, 0x04050607);\n\t */\n\t init: function (high, low) {\n\t this.high = high;\n\t this.low = low;\n\t }\n\n\t /**\n\t * Bitwise NOTs this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after negating.\n\t *\n\t * @example\n\t *\n\t * var negated = x64Word.not();\n\t */\n\t // not: function () {\n\t // var high = ~this.high;\n\t // var low = ~this.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Bitwise ANDs this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to AND with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after ANDing.\n\t *\n\t * @example\n\t *\n\t * var anded = x64Word.and(anotherX64Word);\n\t */\n\t // and: function (word) {\n\t // var high = this.high & word.high;\n\t // var low = this.low & word.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Bitwise ORs this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to OR with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after ORing.\n\t *\n\t * @example\n\t *\n\t * var ored = x64Word.or(anotherX64Word);\n\t */\n\t // or: function (word) {\n\t // var high = this.high | word.high;\n\t // var low = this.low | word.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Bitwise XORs this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to XOR with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after XORing.\n\t *\n\t * @example\n\t *\n\t * var xored = x64Word.xor(anotherX64Word);\n\t */\n\t // xor: function (word) {\n\t // var high = this.high ^ word.high;\n\t // var low = this.low ^ word.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Shifts this word n bits to the left.\n\t *\n\t * @param {number} n The number of bits to shift.\n\t *\n\t * @return {X64Word} A new x64-Word object after shifting.\n\t *\n\t * @example\n\t *\n\t * var shifted = x64Word.shiftL(25);\n\t */\n\t // shiftL: function (n) {\n\t // if (n < 32) {\n\t // var high = (this.high << n) | (this.low >>> (32 - n));\n\t // var low = this.low << n;\n\t // } else {\n\t // var high = this.low << (n - 32);\n\t // var low = 0;\n\t // }\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Shifts this word n bits to the right.\n\t *\n\t * @param {number} n The number of bits to shift.\n\t *\n\t * @return {X64Word} A new x64-Word object after shifting.\n\t *\n\t * @example\n\t *\n\t * var shifted = x64Word.shiftR(7);\n\t */\n\t // shiftR: function (n) {\n\t // if (n < 32) {\n\t // var low = (this.low >>> n) | (this.high << (32 - n));\n\t // var high = this.high >>> n;\n\t // } else {\n\t // var low = this.high >>> (n - 32);\n\t // var high = 0;\n\t // }\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Rotates this word n bits to the left.\n\t *\n\t * @param {number} n The number of bits to rotate.\n\t *\n\t * @return {X64Word} A new x64-Word object after rotating.\n\t *\n\t * @example\n\t *\n\t * var rotated = x64Word.rotL(25);\n\t */\n\t // rotL: function (n) {\n\t // return this.shiftL(n).or(this.shiftR(64 - n));\n\t // },\n\n\t /**\n\t * Rotates this word n bits to the right.\n\t *\n\t * @param {number} n The number of bits to rotate.\n\t *\n\t * @return {X64Word} A new x64-Word object after rotating.\n\t *\n\t * @example\n\t *\n\t * var rotated = x64Word.rotR(7);\n\t */\n\t // rotR: function (n) {\n\t // return this.shiftR(n).or(this.shiftL(64 - n));\n\t // },\n\n\t /**\n\t * Adds this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to add with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after adding.\n\t *\n\t * @example\n\t *\n\t * var added = x64Word.add(anotherX64Word);\n\t */\n\t // add: function (word) {\n\t // var low = (this.low + word.low) | 0;\n\t // var carry = (low >>> 0) < (this.low >>> 0) ? 1 : 0;\n\t // var high = (this.high + word.high + carry) | 0;\n\n\t // return X64Word.create(high, low);\n\t // }\n\t });\n\n\t /**\n\t * An array of 64-bit words.\n\t *\n\t * @property {Array} words The array of CryptoJS.x64.Word objects.\n\t * @property {number} sigBytes The number of significant bytes in this word array.\n\t */\n\t var X64WordArray = C_x64.WordArray = Base.extend({\n\t /**\n\t * Initializes a newly created word array.\n\t *\n\t * @param {Array} words (Optional) An array of CryptoJS.x64.Word objects.\n\t * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.x64.WordArray.create();\n\t *\n\t * var wordArray = CryptoJS.x64.WordArray.create([\n\t * CryptoJS.x64.Word.create(0x00010203, 0x04050607),\n\t * CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f)\n\t * ]);\n\t *\n\t * var wordArray = CryptoJS.x64.WordArray.create([\n\t * CryptoJS.x64.Word.create(0x00010203, 0x04050607),\n\t * CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f)\n\t * ], 10);\n\t */\n\t init: function (words, sigBytes) {\n\t words = this.words = words || [];\n\n\t if (sigBytes != undefined) {\n\t this.sigBytes = sigBytes;\n\t } else {\n\t this.sigBytes = words.length * 8;\n\t }\n\t },\n\n\t /**\n\t * Converts this 64-bit word array to a 32-bit word array.\n\t *\n\t * @return {CryptoJS.lib.WordArray} This word array\'s data as a 32-bit word array.\n\t *\n\t * @example\n\t *\n\t * var x32WordArray = x64WordArray.toX32();\n\t */\n\t toX32: function () {\n\t // Shortcuts\n\t var x64Words = this.words;\n\t var x64WordsLength = x64Words.length;\n\n\t // Convert\n\t var x32Words = [];\n\t for (var i = 0; i < x64WordsLength; i++) {\n\t var x64Word = x64Words[i];\n\t x32Words.push(x64Word.high);\n\t x32Words.push(x64Word.low);\n\t }\n\n\t return X32WordArray.create(x32Words, this.sigBytes);\n\t },\n\n\t /**\n\t * Creates a copy of this word array.\n\t *\n\t * @return {X64WordArray} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = x64WordArray.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\n\t // Clone "words" array\n\t var words = clone.words = this.words.slice(0);\n\n\t // Clone each X64Word object\n\t var wordsLength = words.length;\n\t for (var i = 0; i < wordsLength; i++) {\n\t words[i] = words[i].clone();\n\t }\n\n\t return clone;\n\t }\n\t });\n\t}());\n\n\n\treturn CryptoJS;\n\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3J5cHRvLWpzL3g2NC1jb3JlLmpzPzMyNTIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQ0FBQztBQUNELEtBQUssSUFBMkI7QUFDaEM7QUFDQSxxQ0FBcUMsbUJBQU8sQ0FBQyxFQUFRO0FBQ3JEO0FBQ0EsTUFBTSxFQU9KO0FBQ0YsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQixvQkFBb0IsT0FBTztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLFFBQVE7QUFDNUI7QUFDQSxxQkFBcUIsUUFBUTtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsYUFBYTs7QUFFYjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsUUFBUTtBQUM1QjtBQUNBLHFCQUFxQixRQUFRO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixRQUFRO0FBQzVCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU87QUFDM0I7QUFDQSxxQkFBcUIsUUFBUTtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBOztBQUVBO0FBQ0EsYUFBYTs7QUFFYjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQjtBQUNBLHFCQUFxQixRQUFRO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixPQUFPO0FBQzNCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixPQUFPO0FBQzNCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixRQUFRO0FBQzVCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNOztBQUVOO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixNQUFNO0FBQ3pCLG1CQUFtQixPQUFPO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsTUFBTTtBQUMxQixvQkFBb0IsT0FBTztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBLFVBQVU7O0FBRVY7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHVCQUF1QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDRCQUE0QixvQkFBb0I7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxVQUFVOztBQUVWO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixhQUFhO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDRCQUE0QixpQkFBaUI7QUFDN0M7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOLEVBQUU7OztBQUdGOztBQUVBLENBQUMiLCJmaWxlIjoiMTkyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiOyhmdW5jdGlvbiAocm9vdCwgZmFjdG9yeSkge1xuXHRpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIpIHtcblx0XHQvLyBDb21tb25KU1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cyA9IGZhY3RvcnkocmVxdWlyZShcIi4vY29yZVwiKSk7XG5cdH1cblx0ZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gXCJmdW5jdGlvblwiICYmIGRlZmluZS5hbWQpIHtcblx0XHQvLyBBTURcblx0XHRkZWZpbmUoW1wiLi9jb3JlXCJdLCBmYWN0b3J5KTtcblx0fVxuXHRlbHNlIHtcblx0XHQvLyBHbG9iYWwgKGJyb3dzZXIpXG5cdFx0ZmFjdG9yeShyb290LkNyeXB0b0pTKTtcblx0fVxufSh0aGlzLCBmdW5jdGlvbiAoQ3J5cHRvSlMpIHtcblxuXHQoZnVuY3Rpb24gKHVuZGVmaW5lZCkge1xuXHQgICAgLy8gU2hvcnRjdXRzXG5cdCAgICB2YXIgQyA9IENyeXB0b0pTO1xuXHQgICAgdmFyIENfbGliID0gQy5saWI7XG5cdCAgICB2YXIgQmFzZSA9IENfbGliLkJhc2U7XG5cdCAgICB2YXIgWDMyV29yZEFycmF5ID0gQ19saWIuV29yZEFycmF5O1xuXG5cdCAgICAvKipcblx0ICAgICAqIHg2NCBuYW1lc3BhY2UuXG5cdCAgICAgKi9cblx0ICAgIHZhciBDX3g2NCA9IEMueDY0ID0ge307XG5cblx0ICAgIC8qKlxuXHQgICAgICogQSA2NC1iaXQgd29yZC5cblx0ICAgICAqL1xuXHQgICAgdmFyIFg2NFdvcmQgPSBDX3g2NC5Xb3JkID0gQmFzZS5leHRlbmQoe1xuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIEluaXRpYWxpemVzIGEgbmV3bHkgY3JlYXRlZCA2NC1iaXQgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBwYXJhbSB7bnVtYmVyfSBoaWdoIFRoZSBoaWdoIDMyIGJpdHMuXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IGxvdyBUaGUgbG93IDMyIGJpdHMuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB4NjRXb3JkID0gQ3J5cHRvSlMueDY0LldvcmQuY3JlYXRlKDB4MDAwMTAyMDMsIDB4MDQwNTA2MDcpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIGluaXQ6IGZ1bmN0aW9uIChoaWdoLCBsb3cpIHtcblx0ICAgICAgICAgICAgdGhpcy5oaWdoID0gaGlnaDtcblx0ICAgICAgICAgICAgdGhpcy5sb3cgPSBsb3c7XG5cdCAgICAgICAgfVxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogQml0d2lzZSBOT1RzIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBuZWdhdGluZy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIG5lZ2F0ZWQgPSB4NjRXb3JkLm5vdCgpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIG5vdDogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IH50aGlzLmhpZ2g7XG5cdCAgICAgICAgICAgIC8vIHZhciBsb3cgPSB+dGhpcy5sb3c7XG5cblx0ICAgICAgICAgICAgLy8gcmV0dXJuIFg2NFdvcmQuY3JlYXRlKGhpZ2gsIGxvdyk7XG5cdCAgICAgICAgLy8gfSxcblxuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIEJpdHdpc2UgQU5EcyB0aGlzIHdvcmQgd2l0aCB0aGUgcGFzc2VkIHdvcmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge1g2NFdvcmR9IHdvcmQgVGhlIHg2NC1Xb3JkIHRvIEFORCB3aXRoIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBBTkRpbmcuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciBhbmRlZCA9IHg2NFdvcmQuYW5kKGFub3RoZXJYNjRXb3JkKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBhbmQ6IGZ1bmN0aW9uICh3b3JkKSB7XG5cdCAgICAgICAgICAgIC8vIHZhciBoaWdoID0gdGhpcy5oaWdoICYgd29yZC5oaWdoO1xuXHQgICAgICAgICAgICAvLyB2YXIgbG93ID0gdGhpcy5sb3cgJiB3b3JkLmxvdztcblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogQml0d2lzZSBPUnMgdGhpcyB3b3JkIHdpdGggdGhlIHBhc3NlZCB3b3JkLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtYNjRXb3JkfSB3b3JkIFRoZSB4NjQtV29yZCB0byBPUiB3aXRoIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBPUmluZy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIG9yZWQgPSB4NjRXb3JkLm9yKGFub3RoZXJYNjRXb3JkKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBvcjogZnVuY3Rpb24gKHdvcmQpIHtcblx0ICAgICAgICAgICAgLy8gdmFyIGhpZ2ggPSB0aGlzLmhpZ2ggfCB3b3JkLmhpZ2g7XG5cdCAgICAgICAgICAgIC8vIHZhciBsb3cgPSB0aGlzLmxvdyB8IHdvcmQubG93O1xuXG5cdCAgICAgICAgICAgIC8vIHJldHVybiBYNjRXb3JkLmNyZWF0ZShoaWdoLCBsb3cpO1xuXHQgICAgICAgIC8vIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBCaXR3aXNlIFhPUnMgdGhpcyB3b3JkIHdpdGggdGhlIHBhc3NlZCB3b3JkLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtYNjRXb3JkfSB3b3JkIFRoZSB4NjQtV29yZCB0byBYT1Igd2l0aCB0aGlzIHdvcmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtYNjRXb3JkfSBBIG5ldyB4NjQtV29yZCBvYmplY3QgYWZ0ZXIgWE9SaW5nLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQGV4YW1wbGVcblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqICAgICB2YXIgeG9yZWQgPSB4NjRXb3JkLnhvcihhbm90aGVyWDY0V29yZCk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgLy8geG9yOiBmdW5jdGlvbiAod29yZCkge1xuXHQgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IHRoaXMuaGlnaCBeIHdvcmQuaGlnaDtcblx0ICAgICAgICAgICAgLy8gdmFyIGxvdyA9IHRoaXMubG93IF4gd29yZC5sb3c7XG5cblx0ICAgICAgICAgICAgLy8gcmV0dXJuIFg2NFdvcmQuY3JlYXRlKGhpZ2gsIGxvdyk7XG5cdCAgICAgICAgLy8gfSxcblxuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIFNoaWZ0cyB0aGlzIHdvcmQgbiBiaXRzIHRvIHRoZSBsZWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IG4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHNoaWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHJldHVybiB7WDY0V29yZH0gQSBuZXcgeDY0LVdvcmQgb2JqZWN0IGFmdGVyIHNoaWZ0aW5nLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQGV4YW1wbGVcblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqICAgICB2YXIgc2hpZnRlZCA9IHg2NFdvcmQuc2hpZnRMKDI1KTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBzaGlmdEw6IGZ1bmN0aW9uIChuKSB7XG5cdCAgICAgICAgICAgIC8vIGlmIChuIDwgMzIpIHtcblx0ICAgICAgICAgICAgICAgIC8vIHZhciBoaWdoID0gKHRoaXMuaGlnaCA8PCBuKSB8ICh0aGlzLmxvdyA+Pj4gKDMyIC0gbikpO1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9IHRoaXMubG93IDw8IG47XG5cdCAgICAgICAgICAgIC8vIH0gZWxzZSB7XG5cdCAgICAgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IHRoaXMubG93IDw8IChuIC0gMzIpO1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9IDA7XG5cdCAgICAgICAgICAgIC8vIH1cblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogU2hpZnRzIHRoaXMgd29yZCBuIGJpdHMgdG8gdGhlIHJpZ2h0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IG4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHNoaWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHJldHVybiB7WDY0V29yZH0gQSBuZXcgeDY0LVdvcmQgb2JqZWN0IGFmdGVyIHNoaWZ0aW5nLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQGV4YW1wbGVcblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqICAgICB2YXIgc2hpZnRlZCA9IHg2NFdvcmQuc2hpZnRSKDcpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIHNoaWZ0UjogZnVuY3Rpb24gKG4pIHtcblx0ICAgICAgICAgICAgLy8gaWYgKG4gPCAzMikge1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9ICh0aGlzLmxvdyA+Pj4gbikgfCAodGhpcy5oaWdoIDw8ICgzMiAtIG4pKTtcblx0ICAgICAgICAgICAgICAgIC8vIHZhciBoaWdoID0gdGhpcy5oaWdoID4+PiBuO1xuXHQgICAgICAgICAgICAvLyB9IGVsc2Uge1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9IHRoaXMuaGlnaCA+Pj4gKG4gLSAzMik7XG5cdCAgICAgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IDA7XG5cdCAgICAgICAgICAgIC8vIH1cblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogUm90YXRlcyB0aGlzIHdvcmQgbiBiaXRzIHRvIHRoZSBsZWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IG4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHJvdGF0ZS5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciByb3RhdGluZy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIHJvdGF0ZWQgPSB4NjRXb3JkLnJvdEwoMjUpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIHJvdEw6IGZ1bmN0aW9uIChuKSB7XG5cdCAgICAgICAgICAgIC8vIHJldHVybiB0aGlzLnNoaWZ0TChuKS5vcih0aGlzLnNoaWZ0Uig2NCAtIG4pKTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogUm90YXRlcyB0aGlzIHdvcmQgbiBiaXRzIHRvIHRoZSByaWdodC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBwYXJhbSB7bnVtYmVyfSBuIFRoZSBudW1iZXIgb2YgYml0cyB0byByb3RhdGUuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtYNjRXb3JkfSBBIG5ldyB4NjQtV29yZCBvYmplY3QgYWZ0ZXIgcm90YXRpbmcuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciByb3RhdGVkID0geDY0V29yZC5yb3RSKDcpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIHJvdFI6IGZ1bmN0aW9uIChuKSB7XG5cdCAgICAgICAgICAgIC8vIHJldHVybiB0aGlzLnNoaWZ0UihuKS5vcih0aGlzLnNoaWZ0TCg2NCAtIG4pKTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogQWRkcyB0aGlzIHdvcmQgd2l0aCB0aGUgcGFzc2VkIHdvcmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge1g2NFdvcmR9IHdvcmQgVGhlIHg2NC1Xb3JkIHRvIGFkZCB3aXRoIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBhZGRpbmcuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciBhZGRlZCA9IHg2NFdvcmQuYWRkKGFub3RoZXJYNjRXb3JkKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBhZGQ6IGZ1bmN0aW9uICh3b3JkKSB7XG5cdCAgICAgICAgICAgIC8vIHZhciBsb3cgPSAodGhpcy5sb3cgKyB3b3JkLmxvdykgfCAwO1xuXHQgICAgICAgICAgICAvLyB2YXIgY2FycnkgPSAobG93ID4+PiAwKSA8ICh0aGlzLmxvdyA+Pj4gMCkgPyAxIDogMDtcblx0ICAgICAgICAgICAgLy8gdmFyIGhpZ2ggPSAodGhpcy5oaWdoICsgd29yZC5oaWdoICsgY2FycnkpIHwgMDtcblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9XG5cdCAgICB9KTtcblxuXHQgICAgLyoqXG5cdCAgICAgKiBBbiBhcnJheSBvZiA2NC1iaXQgd29yZHMuXG5cdCAgICAgKlxuXHQgICAgICogQHByb3BlcnR5IHtBcnJheX0gd29yZHMgVGhlIGFycmF5IG9mIENyeXB0b0pTLng2NC5Xb3JkIG9iamVjdHMuXG5cdCAgICAgKiBAcHJvcGVydHkge251bWJlcn0gc2lnQnl0ZXMgVGhlIG51bWJlciBvZiBzaWduaWZpY2FudCBieXRlcyBpbiB0aGlzIHdvcmQgYXJyYXkuXG5cdCAgICAgKi9cblx0ICAgIHZhciBYNjRXb3JkQXJyYXkgPSBDX3g2NC5Xb3JkQXJyYXkgPSBCYXNlLmV4dGVuZCh7XG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogSW5pdGlhbGl6ZXMgYSBuZXdseSBjcmVhdGVkIHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge0FycmF5fSB3b3JkcyAoT3B0aW9uYWwpIEFuIGFycmF5IG9mIENyeXB0b0pTLng2NC5Xb3JkIG9iamVjdHMuXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IHNpZ0J5dGVzIChPcHRpb25hbCkgVGhlIG51bWJlciBvZiBzaWduaWZpY2FudCBieXRlcyBpbiB0aGUgd29yZHMuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB3b3JkQXJyYXkgPSBDcnlwdG9KUy54NjQuV29yZEFycmF5LmNyZWF0ZSgpO1xuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB3b3JkQXJyYXkgPSBDcnlwdG9KUy54NjQuV29yZEFycmF5LmNyZWF0ZShbXG5cdCAgICAgICAgICogICAgICAgICBDcnlwdG9KUy54NjQuV29yZC5jcmVhdGUoMHgwMDAxMDIwMywgMHgwNDA1MDYwNyksXG5cdCAgICAgICAgICogICAgICAgICBDcnlwdG9KUy54NjQuV29yZC5jcmVhdGUoMHgxODE5MWExYiwgMHgxYzFkMWUxZilcblx0ICAgICAgICAgKiAgICAgXSk7XG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIHdvcmRBcnJheSA9IENyeXB0b0pTLng2NC5Xb3JkQXJyYXkuY3JlYXRlKFtcblx0ICAgICAgICAgKiAgICAgICAgIENyeXB0b0pTLng2NC5Xb3JkLmNyZWF0ZSgweDAwMDEwMjAzLCAweDA0MDUwNjA3KSxcblx0ICAgICAgICAgKiAgICAgICAgIENyeXB0b0pTLng2NC5Xb3JkLmNyZWF0ZSgweDE4MTkxYTFiLCAweDFjMWQxZTFmKVxuXHQgICAgICAgICAqICAgICBdLCAxMCk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgaW5pdDogZnVuY3Rpb24gKHdvcmRzLCBzaWdCeXRlcykge1xuXHQgICAgICAgICAgICB3b3JkcyA9IHRoaXMud29yZHMgPSB3b3JkcyB8fCBbXTtcblxuXHQgICAgICAgICAgICBpZiAoc2lnQnl0ZXMgIT0gdW5kZWZpbmVkKSB7XG5cdCAgICAgICAgICAgICAgICB0aGlzLnNpZ0J5dGVzID0gc2lnQnl0ZXM7XG5cdCAgICAgICAgICAgIH0gZWxzZSB7XG5cdCAgICAgICAgICAgICAgICB0aGlzLnNpZ0J5dGVzID0gd29yZHMubGVuZ3RoICogODtcblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBDb252ZXJ0cyB0aGlzIDY0LWJpdCB3b3JkIGFycmF5IHRvIGEgMzItYml0IHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtDcnlwdG9KUy5saWIuV29yZEFycmF5fSBUaGlzIHdvcmQgYXJyYXkncyBkYXRhIGFzIGEgMzItYml0IHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB4MzJXb3JkQXJyYXkgPSB4NjRXb3JkQXJyYXkudG9YMzIoKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICB0b1gzMjogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICAvLyBTaG9ydGN1dHNcblx0ICAgICAgICAgICAgdmFyIHg2NFdvcmRzID0gdGhpcy53b3Jkcztcblx0ICAgICAgICAgICAgdmFyIHg2NFdvcmRzTGVuZ3RoID0geDY0V29yZHMubGVuZ3RoO1xuXG5cdCAgICAgICAgICAgIC8vIENvbnZlcnRcblx0ICAgICAgICAgICAgdmFyIHgzMldvcmRzID0gW107XG5cdCAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgeDY0V29yZHNMZW5ndGg7IGkrKykge1xuXHQgICAgICAgICAgICAgICAgdmFyIHg2NFdvcmQgPSB4NjRXb3Jkc1tpXTtcblx0ICAgICAgICAgICAgICAgIHgzMldvcmRzLnB1c2goeDY0V29yZC5oaWdoKTtcblx0ICAgICAgICAgICAgICAgIHgzMldvcmRzLnB1c2goeDY0V29yZC5sb3cpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgcmV0dXJuIFgzMldvcmRBcnJheS5jcmVhdGUoeDMyV29yZHMsIHRoaXMuc2lnQnl0ZXMpO1xuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBDcmVhdGVzIGEgY29weSBvZiB0aGlzIHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtYNjRXb3JkQXJyYXl9IFRoZSBjbG9uZS5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIGNsb25lID0geDY0V29yZEFycmF5LmNsb25lKCk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgY2xvbmU6IGZ1bmN0aW9uICgpIHtcblx0ICAgICAgICAgICAgdmFyIGNsb25lID0gQmFzZS5jbG9uZS5jYWxsKHRoaXMpO1xuXG5cdCAgICAgICAgICAgIC8vIENsb25lIFwid29yZHNcIiBhcnJheVxuXHQgICAgICAgICAgICB2YXIgd29yZHMgPSBjbG9uZS53b3JkcyA9IHRoaXMud29yZHMuc2xpY2UoMCk7XG5cblx0ICAgICAgICAgICAgLy8gQ2xvbmUgZWFjaCBYNjRXb3JkIG9iamVjdFxuXHQgICAgICAgICAgICB2YXIgd29yZHNMZW5ndGggPSB3b3Jkcy5sZW5ndGg7XG5cdCAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgd29yZHNMZW5ndGg7IGkrKykge1xuXHQgICAgICAgICAgICAgICAgd29yZHNbaV0gPSB3b3Jkc1tpXS5jbG9uZSgpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgcmV0dXJuIGNsb25lO1xuXHQgICAgICAgIH1cblx0ICAgIH0pO1xuXHR9KCkpO1xuXG5cblx0cmV0dXJuIENyeXB0b0pTO1xuXG59KSk7Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///192\n')},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* unused harmony export Touch */\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);\n\n\n\nvar handleGesture = function handleGesture(wrapper) {\n var touchstartX = wrapper.touchstartX,\n touchendX = wrapper.touchendX,\n touchstartY = wrapper.touchstartY,\n touchendY = wrapper.touchendY;\n var dirRatio = 0.5;\n var minDistance = 16;\n wrapper.offsetX = touchendX - touchstartX;\n wrapper.offsetY = touchendY - touchstartY;\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && touchendX < touchstartX - minDistance && wrapper.left(wrapper);\n wrapper.right && touchendX > touchstartX + minDistance && wrapper.right(wrapper);\n }\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && touchendY < touchstartY - minDistance && wrapper.up(wrapper);\n wrapper.down && touchendY > touchstartY + minDistance && wrapper.down(wrapper);\n }\n};\nfunction _touchstart(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchstartX = touch.clientX;\n wrapper.touchstartY = touch.clientY;\n wrapper.start && wrapper.start(Object.assign(event, wrapper));\n}\nfunction _touchend(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchendX = touch.clientX;\n wrapper.touchendY = touch.clientY;\n wrapper.end && wrapper.end(Object.assign(event, wrapper));\n handleGesture(wrapper);\n}\nfunction _touchmove(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchmoveX = touch.clientX;\n wrapper.touchmoveY = touch.clientY;\n wrapper.move && wrapper.move(Object.assign(event, wrapper));\n}\nfunction createHandlers(value) {\n var wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end\n };\n return {\n touchstart: function touchstart(e) {\n return _touchstart(e, wrapper);\n },\n touchend: function touchend(e) {\n return _touchend(e, wrapper);\n },\n touchmove: function touchmove(e) {\n return _touchmove(e, wrapper);\n }\n };\n}\nfunction inserted(el, binding, vnode) {\n var value = binding.value;\n var target = value.parent ? el.parentElement : el;\n var options = value.options || {\n passive: true\n }; // Needed to pass unit tests\n\n if (!target) return;\n var handlers = createHandlers(binding.value);\n target._touchHandlers = Object(target._touchHandlers);\n target._touchHandlers[vnode.context._uid] = handlers;\n Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__[/* keys */ "y"])(handlers).forEach(function (eventName) {\n target.addEventListener(eventName, handlers[eventName], options);\n });\n}\nfunction unbind(el, binding, vnode) {\n var target = binding.value.parent ? el.parentElement : el;\n if (!target || !target._touchHandlers) return;\n var handlers = target._touchHandlers[vnode.context._uid];\n Object(_util_helpers__WEBPACK_IMPORTED_MODULE_2__[/* keys */ "y"])(handlers).forEach(function (eventName) {\n target.removeEventListener(eventName, handlers[eventName]);\n });\n delete target._touchHandlers[vnode.context._uid];\n}\nvar Touch = {\n inserted: inserted,\n unbind: unbind\n};\n/* harmony default export */ __webpack_exports__["a"] = (Touch);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2RpcmVjdGl2ZXMvdG91Y2gvaW5kZXgudHM/NGFmOSJdLCJuYW1lcyI6WyJoYW5kbGVHZXN0dXJlIiwid3JhcHBlciIsInRvdWNoc3RhcnRYIiwidG91Y2hlbmRYIiwidG91Y2hzdGFydFkiLCJ0b3VjaGVuZFkiLCJkaXJSYXRpbyIsIm1pbkRpc3RhbmNlIiwib2Zmc2V0WCIsIm9mZnNldFkiLCJNYXRoIiwiYWJzIiwibGVmdCIsInJpZ2h0IiwidXAiLCJkb3duIiwidG91Y2hzdGFydCIsImV2ZW50IiwidG91Y2giLCJjaGFuZ2VkVG91Y2hlcyIsImNsaWVudFgiLCJjbGllbnRZIiwic3RhcnQiLCJPYmplY3QiLCJhc3NpZ24iLCJ0b3VjaGVuZCIsImVuZCIsInRvdWNobW92ZSIsInRvdWNobW92ZVgiLCJ0b3VjaG1vdmVZIiwibW92ZSIsImNyZWF0ZUhhbmRsZXJzIiwidmFsdWUiLCJlIiwiaW5zZXJ0ZWQiLCJlbCIsImJpbmRpbmciLCJ2bm9kZSIsInRhcmdldCIsInBhcmVudCIsInBhcmVudEVsZW1lbnQiLCJvcHRpb25zIiwicGFzc2l2ZSIsImhhbmRsZXJzIiwiX3RvdWNoSGFuZGxlcnMiLCJjb250ZXh0IiwiX3VpZCIsImtleXMiLCJmb3JFYWNoIiwiZXZlbnROYW1lIiwiYWRkRXZlbnRMaXN0ZW5lciIsInVuYmluZCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJUb3VjaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFDQTtBQWFBLElBQU1BLGFBQWEsR0FBSSxTQUFqQkEsYUFBYUEsQ0FBSUMsT0FBRCxFQUEwQjtFQUM5QyxJQUFRQyxXQUFGLEdBQXFERCxPQUEzRCxDQUFRQyxXQUFGO0lBQWVDLFNBQWYsR0FBcURGLE9BQTNELENBQXFCRSxTQUFmO0lBQTBCQyxXQUExQixHQUFxREgsT0FBM0QsQ0FBZ0NHLFdBQTFCO0lBQXVDQyxTQUFBLEdBQWNKLE9BQTNELENBQTZDSSxTQUFBO0VBQzdDLElBQU1DLFFB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QUFOLENBQWVDLElBQXJDLENBQVA7QUFDRDtBQUVNLElBQU1PLEtBQUssR0FBRztFQUNuQm5CLFFBRG1CLEVBQ25CQSxRQURtQjtFQUVuQmlCLE1BQUEsRUFBQUE7QUFGbUIsQ0FBZDtBQUtRRSw4REFBZiIsImZpbGUiOiIxOTQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWTm9kZURpcmVjdGl2ZSwgVk5vZGUgfSBmcm9tICd2dWUvdHlwZXMvdm5vZGUnXG5pbXBvcnQgeyBrZXlzIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuaW1wb3J0IHsgVG91Y2hIYW5kbGVycywgVG91Y2hWYWx1ZSwgVG91Y2hXcmFwcGVyIH0gZnJvbSAndnVldGlmeS90eXBlcydcblxuZXhwb3J0IGludGVyZmFjZSBUb3VjaFN0b3JlZEhhbmRsZXJzIHtcbiAgdG91Y2hzdGFydDogKGU6IFRvdWNoRXZlbnQpID0+IHZvaWRcbiAgdG91Y2hlbmQ6IChlOiBUb3VjaEV2ZW50KSA9PiB2b2lkXG4gIHRvdWNobW92ZTogKGU6IFRvdWNoRXZlbnQpID0+IHZvaWRcbn1cblxuaW50ZXJmYWNlIFRvdWNoVk5vZGVEaXJlY3RpdmUgZXh0ZW5kcyBWTm9kZURpcmVjdGl2ZSB7XG4gIHZhbHVlPzogVG91Y2hWYWx1ZVxufVxuXG5jb25zdCBoYW5kbGVHZXN0dXJlID0gKHdyYXBwZXI6IFRvdWNoV3JhcHBlcikgPT4ge1xuICBjb25zdCB7IHRvdWNoc3RhcnRYLCB0b3VjaGVuZFgsIHRvdWNoc3RhcnRZLCB0b3VjaGVuZFkgfSA9IHdyYXBwZXJcbiAgY29uc3QgZGlyUmF0aW8gPSAwLjVcbiAgY29uc3QgbWluRGlzdGFuY2UgPSAxNlxuICB3cmFwcGVyLm9mZnNldFggPSB0b3VjaGVuZFggLSB0b3VjaHN0YXJ0WFxuICB3cmFwcGVyLm9mZnNldFkgPSB0b3VjaGVuZFkgLSB0b3VjaHN0YXJ0WVxuXG4gIGlmIChNYXRoLmFicyh3cmFwcGVyLm9mZnNldFkpIDwgZGlyUmF0aW8gKiBNYXRoLmFicyh3cmFwcGVyLm9mZnNldFgpKSB7XG4gICAgd3JhcHBlci5sZWZ0ICYmICh0b3VjaGVuZFggPCB0b3VjaHN0YXJ0WCAtIG1pbkRpc3RhbmNlKSAmJiB3cmFwcGVyLmxlZnQod3JhcHBlcilcbiAgICB3cmFwcGVyLnJpZ2h0ICYmICh0b3VjaGVuZFggPiB0b3VjaHN0YXJ0WCArIG1pbkRpc3RhbmNlKSAmJiB3cmFwcGVyLnJpZ2h0KHdyYXBwZXIpXG4gIH1cblxuICBpZiAoTWF0aC5hYnMod3JhcHBlci5vZmZzZXRYKSA8IGRpclJhdGlvICogTWF0aC5hYnMod3JhcHBlci5vZmZzZXRZKSkge1xuICAgIHdyYXBwZXIudXAgJiYgKHRvdWNoZW5kWSA8IHRvdWNoc3RhcnRZIC0gbWluRGlzdGFuY2UpICYmIHdyYXBwZXIudXAod3JhcHBlcilcbiAgICB3cmFwcGVyLmRvd24gJiYgKHRvdWNoZW5kWSA+IHRvdWNoc3RhcnRZICsgbWluRGlzdGFuY2UpICYmIHdyYXBwZXIuZG93bih3cmFwcGVyKVxuICB9XG59XG5cbmZ1bmN0aW9uIHRvdWNoc3RhcnQgKGV2ZW50OiBUb3VjaEV2ZW50LCB3cmFwcGVyOiBUb3VjaFdyYXBwZXIpIHtcbiAgY29uc3QgdG91Y2ggPSBldmVudC5jaGFuZ2VkVG91Y2hlc1swXVxuICB3cmFwcGVyLnRvdWNoc3RhcnRYID0gdG91Y2guY2xpZW50WFxuICB3cmFwcGVyLnRvdWNoc3RhcnRZID0gdG91Y2guY2xpZW50WVxuXG4gIHdyYXBwZXIuc3RhcnQgJiZcbiAgICB3cmFwcGVyLnN0YXJ0KE9iamVjdC5hc3NpZ24oZXZlbnQsIHdyYXBwZXIpKVxufVxuXG5mdW5jdGlvbiB0b3VjaGVuZCAoZXZlbnQ6IFRvdWNoRXZlbnQsIHdyYXBwZXI6IFRvdWNoV3JhcHBlcikge1xuICBjb25zdCB0b3VjaCA9IGV2ZW50LmNoYW5nZWRUb3VjaGVzWzBdXG4gIHdyYXBwZXIudG91Y2hlbmRYID0gdG91Y2guY2xpZW50WFxuICB3cmFwcGVyLnRvdWNoZW5kWSA9IHRvdWNoLmNsaWVudFlcblxuICB3cmFwcGVyLmVuZCAmJlxuICAgIHdyYXBwZXIuZW5kKE9iamVjdC5hc3NpZ24oZXZlbnQsIHdyYXBwZXIpKVxuXG4gIGhhbmRsZUdlc3R1cmUod3JhcHBlcilcbn1cblxuZnVuY3Rpb24gdG91Y2htb3ZlIChldmVudDogVG91Y2hFdmVudCwgd3JhcHBlcjogVG91Y2hXcmFwcGVyKSB7XG4gIGNvbnN0IHRvdWNoID0gZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF1cbiAgd3JhcHBlci50b3VjaG1vdmVYID0gdG91Y2guY2xpZW50WFxuICB3cmFwcGVyLnRvdWNobW92ZVkgPSB0b3VjaC5jbGllbnRZXG5cbiAgd3JhcHBlci5tb3ZlICYmIHdyYXBwZXIubW92ZShPYmplY3QuYXNzaWduKGV2ZW50LCB3cmFwcGVyKSlcbn1cblxuZnVuY3Rpb24gY3JlYXRlSGFuZGxlcnMgKHZhbHVlOiBUb3VjaEhhbmRsZXJzKTogVG91Y2hTdG9yZWRIYW5kbGVycyB7XG4gIGNvbnN0IHdyYXBwZXIgPSB7XG4gICAgdG91Y2hzdGFydFg6IDAsXG4gICAgdG91Y2hzdGFydFk6IDAsXG4gICAgdG91Y2hlbmRYOiAwLFxuICAgIHRvdWNoZW5kWTogMCxcbiAgICB0b3VjaG1vdmVYOiAwLFxuICAgIHRvdWNobW92ZVk6IDAsXG4gICAgb2Zmc2V0WDogMCxcbiAgICBvZmZzZXRZOiAwLFxuICAgIGxlZnQ6IHZhbHVlLmxlZnQsXG4gICAgcmlnaHQ6IHZhbHVlLnJpZ2h0LFxuICAgIHVwOiB2YWx1ZS51cCxcbiAgICBkb3duOiB2YWx1ZS5kb3duLFxuICAgIHN0YXJ0OiB2YWx1ZS5zdGFydCxcbiAgICBtb3ZlOiB2YWx1ZS5tb3ZlLFxuICAgIGVuZDogdmFsdWUuZW5kLFxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0b3VjaHN0YXJ0OiAoZTogVG91Y2hFdmVudCkgPT4gdG91Y2hzdGFydChlLCB3cmFwcGVyKSxcbiAgICB0b3VjaGVuZDogKGU6IFRvdWNoRXZlbnQpID0+IHRvdWNoZW5kKGUsIHdyYXBwZXIpLFxuICAgIHRvdWNobW92ZTogKGU6IFRvdWNoRXZlbnQpID0+IHRvdWNobW92ZShlLCB3cmFwcGVyKSxcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnNlcnRlZCAoZWw6IEhUTUxFbGVtZW50LCBiaW5kaW5nOiBUb3VjaFZOb2RlRGlyZWN0aXZlLCB2bm9kZTogVk5vZGUpIHtcbiAgY29uc3QgdmFsdWUgPSBiaW5kaW5nLnZhbHVlIVxuICBjb25zdCB0YXJnZXQgPSB2YWx1ZS5wYXJlbnQgPyBlbC5wYXJlbnRFbGVtZW50IDogZWxcbiAgY29uc3Qgb3B0aW9ucyA9IHZhbHVlLm9wdGlvbnMgfHwgeyBwYXNzaXZlOiB0cnVlIH1cblxuICAvLyBOZWVkZWQgdG8gcGFzcyB1bml0IHRlc3RzXG4gIGlmICghdGFyZ2V0KSByZXR1cm5cblxuICBjb25zdCBoYW5kbGVycyA9IGNyZWF0ZUhhbmRsZXJzKGJpbmRpbmcudmFsdWUhKVxuICB0YXJnZXQuX3RvdWNoSGFuZGxlcnMgPSBPYmplY3QodGFyZ2V0Ll90b3VjaEhhbmRsZXJzKVxuICB0YXJnZXQuX3RvdWNoSGFuZGxlcnMhW3Zub2RlLmNvbnRleHQhLl91aWRdID0gaGFuZGxlcnNcblxuICBrZXlzKGhhbmRsZXJzKS5mb3JFYWNoKGV2ZW50TmFtZSA9PiB7XG4gICAgdGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBoYW5kbGVyc1tldmVudE5hbWVdIGFzIEV2ZW50TGlzdGVuZXIsIG9wdGlvbnMpXG4gIH0pXG59XG5cbmZ1bmN0aW9uIHVuYmluZCAoZWw6IEhUTUxFbGVtZW50LCBiaW5kaW5nOiBUb3VjaFZOb2RlRGlyZWN0aXZlLCB2bm9kZTogVk5vZGUpIHtcbiAgY29uc3QgdGFyZ2V0ID0gYmluZGluZy52YWx1ZSEucGFyZW50ID8gZWwucGFyZW50RWxlbWVudCA6IGVsXG4gIGlmICghdGFyZ2V0IHx8ICF0YXJnZXQuX3RvdWNoSGFuZGxlcnMpIHJldHVyblxuXG4gIGNvbnN0IGhhbmRsZXJzID0gdGFyZ2V0Ll90b3VjaEhhbmRsZXJzW3Zub2RlLmNvbnRleHQhLl91aWRdXG4gIGtleXMoaGFuZGxlcnMpLmZvckVhY2goZXZlbnROYW1lID0+IHtcbiAgICB0YXJnZXQucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIGhhbmRsZXJzW2V2ZW50TmFtZV0pXG4gIH0pXG4gIGRlbGV0ZSB0YXJnZXQuX3RvdWNoSGFuZGxlcnNbdm5vZGUuY29udGV4dCEuX3VpZF1cbn1cblxuZXhwb3J0IGNvbnN0IFRvdWNoID0ge1xuICBpbnNlcnRlZCxcbiAgdW5iaW5kLFxufVxuXG5leHBvcnQgZGVmYXVsdCBUb3VjaFxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///194\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es_string_small_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(327);\n/* harmony import */ var core_js_modules_es_string_small_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_small_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"].extend({\n name: 'sizeable',\n props: {\n large: Boolean,\n small: Boolean,\n xLarge: Boolean,\n xSmall: Boolean\n },\n computed: {\n medium: function medium() {\n return Boolean(!this.xSmall && !this.small && !this.large && !this.xLarge);\n },\n sizeableClasses: function sizeableClasses() {\n return {\n 'v-size--x-small': this.xSmall,\n 'v-size--small': this.small,\n 'v-size--default': this.medium,\n 'v-size--large': this.large,\n 'v-size--x-large': this.xLarge\n };\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9zaXplYWJsZS9pbmRleC50cz8xYTFhIl0sIm5hbWVzIjpbIlZ1ZSIsImV4dGVuZCIsIm5hbWUiLCJwcm9wcyIsImxhcmdlIiwiQm9vbGVhbiIsInNtYWxsIiwieExhcmdlIiwieFNtYWxsIiwiY29tcHV0ZWQiLCJtZWRpdW0iLCJzaXplYWJsZUNsYXNzZXMiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUVlQSw0R0FBRyxDQUFDQyxNQUFKLENBQVc7RUFDeEJDLElBQUksRUFBRSxVQURrQjtFQUd4QkMsS0FBSyxFQUFFO0lBQ0xDLEtBQUssRUFBRUMsT0FERjtJQUVMQyxLQUFLLEVBQUVELE9BRkY7SUFHTEUsTUFBTSxFQUFFRixPQUhIO0lBSUxHLE1BQU0sRUFBRUg7RUFKSCxDQUhpQjtFQVV4QkksUUFBUSxFQUFFO0lBQ1JDLE1BQU0sV0FBQUEsT0FBQTtNQUNKLE9BQU9MLE9BQU8sQ0FDWixDQUFDLEtBQUtHLE1BQU4sSUFDQSxDQUFDLEtBQUtGLEtBRE4sSUFFQSxDQUFDLEtBQUtGLEtBRk4sSUFHQSxDQUFDLEtBQUtHLE1BSk0sQ0FBZDtJQU1ELENBUk87SUFTUkksZUFBZSxXQUFBQSxnQkFBQTtNQUNiLE9BQU87UUFDTCxtQkFBbUIsS0FBS0gsTUFEbkI7UUFFTCxpQkFBaUIsS0FBS0YsS0FGakI7UUFHTCxtQkFBbUIsS0FBS0ksTUFIbkI7UUFJTCxpQkFBaUIsS0FBS04sS0FKakI7UUFLTCxtQkFBbUIsS0FBS0c7TUFMbkIsQ0FBUDtJQU9EO0VBakJPO0FBVmMsQ0FBWCxDQUFmIiwiZmlsZSI6IjE5NS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBWdWUgZnJvbSAndnVlJ1xuXG5leHBvcnQgZGVmYXVsdCBWdWUuZXh0ZW5kKHtcbiAgbmFtZTogJ3NpemVhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGxhcmdlOiBCb29sZWFuLFxuICAgIHNtYWxsOiBCb29sZWFuLFxuICAgIHhMYXJnZTogQm9vbGVhbixcbiAgICB4U21hbGw6IEJvb2xlYW4sXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBtZWRpdW0gKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIEJvb2xlYW4oXG4gICAgICAgICF0aGlzLnhTbWFsbCAmJlxuICAgICAgICAhdGhpcy5zbWFsbCAmJlxuICAgICAgICAhdGhpcy5sYXJnZSAmJlxuICAgICAgICAhdGhpcy54TGFyZ2VcbiAgICAgIClcbiAgICB9LFxuICAgIHNpemVhYmxlQ2xhc3NlcyAoKTogb2JqZWN0IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICd2LXNpemUtLXgtc21hbGwnOiB0aGlzLnhTbWFsbCxcbiAgICAgICAgJ3Ytc2l6ZS0tc21hbGwnOiB0aGlzLnNtYWxsLFxuICAgICAgICAndi1zaXplLS1kZWZhdWx0JzogdGhpcy5tZWRpdW0sXG4gICAgICAgICd2LXNpemUtLWxhcmdlJzogdGhpcy5sYXJnZSxcbiAgICAgICAgJ3Ytc2l6ZS0teC1sYXJnZSc6IHRoaXMueExhcmdlLFxuICAgICAgfVxuICAgIH0sXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///195\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);\n// Utilities\n // Types\n\n\n/**\n * Bootable\n * @mixin\n *\n * Used to add lazy content functionality to components\n * Looks for change in "isActive" to automatically boot\n * Otherwise can be set manually\n */\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].extend().extend({\n name: \'bootable\',\n props: {\n eager: Boolean\n },\n data: function data() {\n return {\n isBooted: false\n };\n },\n computed: {\n hasContent: function hasContent() {\n return this.isBooted || this.eager || this.isActive;\n }\n },\n watch: {\n isActive: function isActive() {\n this.isBooted = true;\n }\n },\n created: function created() {\n /* istanbul ignore next */\n if (\'lazy\' in this.$attrs) {\n Object(_util_console__WEBPACK_IMPORTED_MODULE_0__[/* removed */ "e"])(\'lazy\', this);\n }\n },\n methods: {\n showLazyContent: function showLazyContent(content) {\n return this.hasContent && content ? content() : [this.$createElement()];\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9ib290YWJsZS9pbmRleC50cz8yMDM3Il0sIm5hbWVzIjpbIlZ1ZSIsImV4dGVuZCIsIm5hbWUiLCJwcm9wcyIsImVhZ2VyIiwiQm9vbGVhbiIsImRhdGEiLCJpc0Jvb3RlZCIsImNvbXB1dGVkIiwiaGFzQ29udGVudCIsImlzQWN0aXZlIiwid2F0Y2giLCJjcmVhdGVkIiwiJGF0dHJzIiwicmVtb3ZlZCIsIm1ldGhvZHMiLCJzaG93TGF6eUNvbnRlbnQiLCJjb250ZW50IiwiJGNyZWF0ZUVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtDQUdBOztBQUNBO0FBS0E7Ozs7Ozs7QUFPRzs7QUFDSDs7QUFDZUEsNEdBQUcsQ0FBQ0MsTUFBSixHQUErQkEsTUFBL0IsQ0FBc0M7RUFDbkRDLElBQUksRUFBRSxVQUQ2QztFQUduREMsS0FBSyxFQUFFO0lBQ0xDLEtBQUssRUFBRUM7RUFERixDQUg0QztFQU9uREMsSUFBSSxFQUFFLFNBQUFBLEtBQUE7SUFBQSxPQUFPO01BQ1hDLFFBQVEsRUFBRTtJQURDLENBQVA7RUFBQSxDQVA2QztFQVduREMsUUFBUSxFQUFFO0lBQ1JDLFVBQVUsV0FBQUEsV0FBQTtNQUNSLE9BQU8sS0FBS0YsUUFBTCxJQUFpQixLQUFLSCxLQUF0QixJQUErQixLQUFLTSxRQUEzQztJQUNEO0VBSE8sQ0FYeUM7RUFpQm5EQyxLQUFLLEVBQUU7SUFDTEQsUUFBUSxXQUFBQSxTQUFBO01BQ04sS0FBS0gsUUFBTCxHQUFnQixJQUFoQjtJQUNEO0VBSEksQ0FqQjRDO0VBdUJuREssT0FBTyxXQUFBQSxRQUFBO0lBQ0w7SUFDQSxJQUFJLFVBQVUsS0FBS0MsTUFBbkIsRUFBMkI7TUFDekJDLHFFQUFPLENBQUMsTUFBRCxFQUFTLElBQVQsQ0FBUDtJQUNEO0VBQ0YsQ0E1QmtEO0VBOEJuREMsT0FBTyxFQUFFO0lBQ1BDLGVBQWUsV0FBQUEsZ0JBQUVDLE9BQUYsRUFBeUI7TUFDdEMsT0FBUSxLQUFLUixVQUFMLElBQW1CUSxPQUFwQixHQUErQkEsT0FBTyxFQUF0QyxHQUEyQyxDQUFDLEtBQUtDLGNBQUwsRUFBRCxDQUFsRDtJQUNEO0VBSE07QUE5QjBDLENBQXRDLENBQWYiLCJmaWxlIjoiMTk2LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVXRpbGl0aWVzXG5pbXBvcnQgeyByZW1vdmVkIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IFZ1ZSwgeyBWTm9kZSB9IGZyb20gJ3Z1ZSdcbmludGVyZmFjZSBUb2dnbGVhYmxlIGV4dGVuZHMgVnVlIHtcbiAgaXNBY3RpdmU/OiBib29sZWFuXG59XG5cbi8qKlxuICogQm9vdGFibGVcbiAqIEBtaXhpblxuICpcbiAqIFVzZWQgdG8gYWRkIGxhenkgY29udGVudCBmdW5jdGlvbmFsaXR5IHRvIGNvbXBvbmVudHNcbiAqIExvb2tzIGZvciBjaGFuZ2UgaW4gXCJpc0FjdGl2ZVwiIHRvIGF1dG9tYXRpY2FsbHkgYm9vdFxuICogT3RoZXJ3aXNlIGNhbiBiZSBzZXQgbWFudWFsbHlcbiAqL1xuLyogQHZ1ZS9jb21wb25lbnQgKi9cbmV4cG9ydCBkZWZhdWx0IFZ1ZS5leHRlbmQ8VnVlICYgVG9nZ2xlYWJsZT4oKS5leHRlbmQoe1xuICBuYW1lOiAnYm9vdGFibGUnLFxuXG4gIHByb3BzOiB7XG4gICAgZWFnZXI6IEJvb2xlYW4sXG4gIH0sXG5cbiAgZGF0YTogKCkgPT4gKHtcbiAgICBpc0Jvb3RlZDogZmFsc2UsXG4gIH0pLFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgaGFzQ29udGVudCAoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgICByZXR1cm4gdGhpcy5pc0Jvb3RlZCB8fCB0aGlzLmVhZ2VyIHx8IHRoaXMuaXNBY3RpdmVcbiAgICB9LFxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmUgKCkge1xuICAgICAgdGhpcy5pc0Jvb3RlZCA9IHRydWVcbiAgICB9LFxuICB9LFxuXG4gIGNyZWF0ZWQgKCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgaWYgKCdsYXp5JyBpbiB0aGlzLiRhdHRycykge1xuICAgICAgcmVtb3ZlZCgnbGF6eScsIHRoaXMpXG4gICAgfVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBzaG93TGF6eUNvbnRlbnQgKGNvbnRlbnQ/OiAoKSA9PiBWTm9kZVtdKTogVk5vZGVbXSB7XG4gICAgICByZXR1cm4gKHRoaXMuaGFzQ29udGVudCAmJiBjb250ZW50KSA/IGNvbnRlbnQoKSA6IFt0aGlzLiRjcmVhdGVFbGVtZW50KCldXG4gICAgfSxcbiAgfSxcbn0pXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///196\n')},,,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(28);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2);\n\n\n\n/* harmony default export */ __webpack_exports__["a"] = (vue__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].extend({\n name: \'elevatable\',\n props: {\n elevation: [Number, String]\n },\n computed: {\n computedElevation: function computedElevation() {\n return this.elevation;\n },\n elevationClasses: function elevationClasses() {\n var elevation = this.computedElevation;\n if (elevation == null) return {};\n if (isNaN(parseInt(elevation))) return {};\n return Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, "elevation-".concat(this.elevation), true);\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9lbGV2YXRhYmxlL2luZGV4LnRzP2RjN2UiXSwibmFtZXMiOlsiVnVlIiwiZXh0ZW5kIiwibmFtZSIsInByb3BzIiwiZWxldmF0aW9uIiwiTnVtYmVyIiwiU3RyaW5nIiwiY29tcHV0ZWQiLCJjb21wdXRlZEVsZXZhdGlvbiIsImVsZXZhdGlvbkNsYXNzZXMiLCJpc05hTiIsInBhcnNlSW50IiwiX2RlZmluZVByb3BlcnR5IiwiY29uY2F0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUVlQSw0R0FBRyxDQUFDQyxNQUFKLENBQVc7RUFDeEJDLElBQUksRUFBRSxZQURrQjtFQUd4QkMsS0FBSyxFQUFFO0lBQ0xDLFNBQVMsRUFBRSxDQUFDQyxNQUFELEVBQVNDLE1BQVQ7RUFETixDQUhpQjtFQU94QkMsUUFBUSxFQUFFO0lBQ1JDLGlCQUFpQixXQUFBQSxrQkFBQTtNQUNmLE9BQU8sS0FBS0osU0FBWjtJQUNELENBSE87SUFJUkssZ0JBQWdCLFdBQUFBLGlCQUFBO01BQ2QsSUFBTUwsU0FBUyxHQUFHLEtBQUtJLGlCQUF2QjtNQUVBLElBQUlKLFNBQVMsSUFBSSxJQUFqQixFQUF1QixPQUFPLEVBQVA7TUFDdkIsSUFBSU0sS0FBSyxDQUFDQyxRQUFRLENBQUNQLFNBQUQsQ0FBVCxDQUFULEVBQWdDLE9BQU8sRUFBUDtNQUNoQyxPQUFBUSxpR0FBQSxrQkFBQUMsTUFBQSxDQUF1QixLQUFLVCxTQUFTLEdBQUs7SUFDM0M7RUFWTztBQVBjLENBQVgsQ0FBZiIsImZpbGUiOiIyMDAuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcblxuZXhwb3J0IGRlZmF1bHQgVnVlLmV4dGVuZCh7XG4gIG5hbWU6ICdlbGV2YXRhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGVsZXZhdGlvbjogW051bWJlciwgU3RyaW5nXSxcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNvbXB1dGVkRWxldmF0aW9uICgpOiBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgICAgcmV0dXJuIHRoaXMuZWxldmF0aW9uXG4gICAgfSxcbiAgICBlbGV2YXRpb25DbGFzc2VzICgpOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiB7XG4gICAgICBjb25zdCBlbGV2YXRpb24gPSB0aGlzLmNvbXB1dGVkRWxldmF0aW9uXG5cbiAgICAgIGlmIChlbGV2YXRpb24gPT0gbnVsbCkgcmV0dXJuIHt9XG4gICAgICBpZiAoaXNOYU4ocGFyc2VJbnQoZWxldmF0aW9uKSkpIHJldHVybiB7fVxuICAgICAgcmV0dXJuIHsgW2BlbGV2YXRpb24tJHt0aGlzLmVsZXZhdGlvbn1gXTogdHJ1ZSB9XG4gICAgfSxcbiAgfSxcbn0pXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///200\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return applicationable; });\n/* harmony import */ var _positionable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(79);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n // Util\n\n\nfunction applicationable(value) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n /* @vue/component */\n return Object(_util_mixins__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])(Object(_positionable__WEBPACK_IMPORTED_MODULE_0__[/* factory */ \"b\"])(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n props: {\n app: Boolean\n },\n computed: {\n applicationProperty: function applicationProperty() {\n return value;\n }\n },\n watch: {\n // If previous value was app\n // reset the provided prop\n app: function app(x, prev) {\n prev ? this.removeApplication(true) : this.callUpdate();\n },\n applicationProperty: function applicationProperty(newVal, oldVal) {\n this.$vuetify.application.unregister(this._uid, oldVal);\n }\n },\n activated: function activated() {\n this.callUpdate();\n },\n created: function created() {\n for (var i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate);\n }\n this.callUpdate();\n },\n mounted: function mounted() {\n this.callUpdate();\n },\n deactivated: function deactivated() {\n this.removeApplication();\n },\n destroyed: function destroyed() {\n this.removeApplication();\n },\n methods: {\n callUpdate: function callUpdate() {\n if (!this.app) return;\n this.$vuetify.application.register(this._uid, this.applicationProperty, this.updateApplication());\n },\n removeApplication: function removeApplication() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n if (!force && !this.app) return;\n this.$vuetify.application.unregister(this._uid, this.applicationProperty);\n },\n updateApplication: function updateApplication() {\n return 0;\n }\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9hcHBsaWNhdGlvbmFibGUvaW5kZXgudHM/NGZjYSJdLCJuYW1lcyI6WyJhcHBsaWNhdGlvbmFibGUiLCJ2YWx1ZSIsImV2ZW50cyIsImFyZ3VtZW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIm1peGlucyIsIlBvc2l0aW9uYWJsZUZhY3RvcnkiLCJleHRlbmQiLCJuYW1lIiwicHJvcHMiLCJhcHAiLCJCb29sZWFuIiwiY29tcHV0ZWQiLCJhcHBsaWNhdGlvblByb3BlcnR5Iiwid2F0Y2giLCJ4IiwicHJldiIsInJlbW92ZUFwcGxpY2F0aW9uIiwiY2FsbFVwZGF0ZSIsIm5ld1ZhbCIsIm9sZFZhbCIsIiR2dWV0aWZ5IiwiYXBwbGljYXRpb24iLCJ1bnJlZ2lzdGVyIiwiX3VpZCIsImFjdGl2YXRlZCIsImNyZWF0ZWQiLCJpIiwiJHdhdGNoIiwibW91bnRlZCIsImRlYWN0aXZhdGVkIiwiZGVzdHJveWVkIiwibWV0aG9kcyIsInJlZ2lzdGVyIiwidXBkYXRlQXBwbGljYXRpb24iLCJmb3JjZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0NBR0E7O0FBQ0E7QUFFYyxTQUFVQSxlQUFWQSxDQUEyQkMsS0FBM0IsRUFBbUU7RUFBQSxJQUFyQkMsTUFBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBbUIsRUFBakU7RUFDWjtFQUNBLE9BQU9HLG9FQUFNLENBQUNDLHFFQUFtQixDQUFDLENBQUMsVUFBRCxFQUFhLE9BQWIsQ0FBRCxDQUFwQixDQUFOLENBQW1EQyxNQUFuRCxDQUEwRDtJQUMvREMsSUFBSSxFQUFFLGlCQUR5RDtJQUcvREMsS0FBSyxFQUFFO01BQ0xDLEdBQUcsRUFBRUM7SUFEQSxDQUh3RDtJQU8vREMsUUFBUSxFQUFFO01BQ1JDLG1CQUFtQixXQUFBQSxvQkFBQTtRQUNqQixPQUFPYixLQUFQO01BQ0Q7SUFITyxDQVBxRDtJQWEvRGMsS0FBSyxFQUFFO01BQ0w7TUFDQTtNQUNBSixHQUFHLFdBQUFBLElBQUVLLENBQUYsRUFBY0MsSUFBZCxFQUEyQjtRQUM1QkEsSUFBSSxHQUNBLEtBQUtDLGlCQUFMLENBQXVCLElBQXZCLENBREEsR0FFQSxLQUFLQyxVQUFMLEVBRko7TUFHRCxDQVBJO01BUUxMLG1CQUFtQixXQUFBQSxvQkFBRU0sTUFBRixFQUFVQyxNQUFWLEVBQWdCO1FBQ2pDLEtBQUtDLFFBQUwsQ0FBY0MsV0FBZCxDQUEwQkMsVUFBMUIsQ0FBcUMsS0FBS0MsSUFBMUMsRUFBZ0RKLE1BQWhEO01BQ0Q7SUFWSSxDQWJ3RDtJQTBCL0RLLFNBQVMsV0FBQUEsVUFBQTtNQUNQLEtBQUtQLFVBQUw7SUFDRCxDQTVCOEQ7SUE4Qi9EUSxPQUFPLFdBQUFBLFFBQUE7TUFDTCxLQUFLLElBQUlDLENBQUMsR0FBRyxDQUFSLEVBQVd4QixNQUFNLEdBQUdGLE1BQU0sQ0FBQ0UsTUFBaEMsRUFBd0N3QixDQUFDLEdBQUd4QixNQUE1QyxFQUFvRHdCLENBQUMsRUFBckQsRUFBeUQ7UUFDdkQsS0FBS0MsTUFBTCxDQUFZM0IsTUFBTSxDQUFDMEIsQ0FBRCxDQUFsQixFQUF1QixLQUFLVCxVQUE1QjtNQUNEO01BQ0QsS0FBS0EsVUFBTDtJQUNELENBbkM4RDtJQXFDL0RXLE9BQU8sV0FBQUEsUUFBQTtNQUNMLEtBQUtYLFVBQUw7SUFDRCxDQXZDOEQ7SUF5Qy9EWSxXQUFXLFdBQUFBLFlBQUE7TUFDVCxLQUFLYixpQkFBTDtJQUNELENBM0M4RDtJQTZDL0RjLFNBQVMsV0FBQUEsVUFBQTtNQUNQLEtBQUtkLGlCQUFMO0lBQ0QsQ0EvQzhEO0lBaUQvRGUsT0FBTyxFQUFFO01BQ1BkLFVBQVUsV0FBQUEsV0FBQTtRQUNSLElBQUksQ0FBQyxLQUFLUixHQUFWLEVBQWU7UUFFZixLQUFLVyxRQUFMLENBQWNDLFdBQWQsQ0FBMEJXLFFBQTFCLENBQ0UsS0FBS1QsSUFEUCxFQUVFLEtBQUtYLG1CQUZQLEVBR0UsS0FBS3FCLGlCQUFMLEVBSEY7TUFLRCxDQVRNO01BVVBqQixpQkFBaUIsV0FBQUEsa0JBQUEsRUFBZTtRQUFBLElBQWJrQixLQUFLLEdBQUFqQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxLQUFWO1FBQ2YsSUFBSSxDQUFDaUMsS0FBRCxJQUFVLENBQUMsS0FBS3pCLEdBQXBCLEVBQXlCO1FBRXpCLEtBQUtXLFFBQUwsQ0FBY0MsV0FBZCxDQUEwQkMsVUFBMUIsQ0FDRSxLQUFLQyxJQURQLEVBRUUsS0FBS1gsbUJBRlA7TUFJRCxDQWpCTTtNQWtCUHFCLGlCQUFpQixFQUFFLFNBQUFBLGtCQUFBO1FBQUEsT0FBTTtNQUFBO0lBbEJsQjtFQWpEc0QsQ0FBMUQsQ0FBUDtBQXNFRCIsImZpbGUiOiIyMDEuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmYWN0b3J5IGFzIFBvc2l0aW9uYWJsZUZhY3RvcnkgfSBmcm9tICcuLi9wb3NpdGlvbmFibGUnXG5pbXBvcnQgeyBUYXJnZXRQcm9wIH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9hcHBsaWNhdGlvbidcblxuLy8gVXRpbFxuaW1wb3J0IG1peGlucyBmcm9tICcuLi8uLi91dGlsL21peGlucydcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gYXBwbGljYXRpb25hYmxlICh2YWx1ZTogVGFyZ2V0UHJvcCwgZXZlbnRzOiBzdHJpbmdbXSA9IFtdKSB7XG4gIC8qIEB2dWUvY29tcG9uZW50ICovXG4gIHJldHVybiBtaXhpbnMoUG9zaXRpb25hYmxlRmFjdG9yeShbJ2Fic29sdXRlJywgJ2ZpeGVkJ10pKS5leHRlbmQoe1xuICAgIG5hbWU6ICdhcHBsaWNhdGlvbmFibGUnLFxuXG4gICAgcHJvcHM6IHtcbiAgICAgIGFwcDogQm9vbGVhbixcbiAgICB9LFxuXG4gICAgY29tcHV0ZWQ6IHtcbiAgICAgIGFwcGxpY2F0aW9uUHJvcGVydHkgKCk6IFRhcmdldFByb3Age1xuICAgICAgICByZXR1cm4gdmFsdWVcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIHdhdGNoOiB7XG4gICAgICAvLyBJZiBwcmV2aW91cyB2YWx1ZSB3YXMgYXBwXG4gICAgICAvLyByZXNldCB0aGUgcHJvdmlkZWQgcHJvcFxuICAgICAgYXBwICh4OiBib29sZWFuLCBwcmV2OiBib29sZWFuKSB7XG4gICAgICAgIHByZXZcbiAgICAgICAgICA/IHRoaXMucmVtb3ZlQXBwbGljYXRpb24odHJ1ZSlcbiAgICAgICAgICA6IHRoaXMuY2FsbFVwZGF0ZSgpXG4gICAgICB9LFxuICAgICAgYXBwbGljYXRpb25Qcm9wZXJ0eSAobmV3VmFsLCBvbGRWYWwpIHtcbiAgICAgICAgdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi51bnJlZ2lzdGVyKHRoaXMuX3VpZCwgb2xkVmFsKVxuICAgICAgfSxcbiAgICB9LFxuXG4gICAgYWN0aXZhdGVkICgpIHtcbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpXG4gICAgfSxcblxuICAgIGNyZWF0ZWQgKCkge1xuICAgICAgZm9yIChsZXQgaSA9IDAsIGxlbmd0aCA9IGV2ZW50cy5sZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykge1xuICAgICAgICB0aGlzLiR3YXRjaChldmVudHNbaV0sIHRoaXMuY2FsbFVwZGF0ZSlcbiAgICAgIH1cbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpXG4gICAgfSxcblxuICAgIG1vdW50ZWQgKCkge1xuICAgICAgdGhpcy5jYWxsVXBkYXRlKClcbiAgICB9LFxuXG4gICAgZGVhY3RpdmF0ZWQgKCkge1xuICAgICAgdGhpcy5yZW1vdmVBcHBsaWNhdGlvbigpXG4gICAgfSxcblxuICAgIGRlc3Ryb3llZCAoKSB7XG4gICAgICB0aGlzLnJlbW92ZUFwcGxpY2F0aW9uKClcbiAgICB9LFxuXG4gICAgbWV0aG9kczoge1xuICAgICAgY2FsbFVwZGF0ZSAoKSB7XG4gICAgICAgIGlmICghdGhpcy5hcHApIHJldHVyblxuXG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24ucmVnaXN0ZXIoXG4gICAgICAgICAgdGhpcy5fdWlkLFxuICAgICAgICAgIHRoaXMuYXBwbGljYXRpb25Qcm9wZXJ0eSxcbiAgICAgICAgICB0aGlzLnVwZGF0ZUFwcGxpY2F0aW9uKClcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIHJlbW92ZUFwcGxpY2F0aW9uIChmb3JjZSA9IGZhbHNlKSB7XG4gICAgICAgIGlmICghZm9yY2UgJiYgIXRoaXMuYXBwKSByZXR1cm5cblxuICAgICAgICB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLnVucmVnaXN0ZXIoXG4gICAgICAgICAgdGhpcy5fdWlkLFxuICAgICAgICAgIHRoaXMuYXBwbGljYXRpb25Qcm9wZXJ0eVxuICAgICAgICApXG4gICAgICB9LFxuICAgICAgdXBkYXRlQXBwbGljYXRpb246ICgpID0+IDAsXG4gICAgfSxcbiAgfSlcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///201\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* unused harmony export VToolbarItems */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return VToolbarTitle; });\n/* harmony import */ var _VToolbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(74);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);\n// Components\n // Utilities\n\n\nvar VToolbarTitle = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-toolbar__title\');\nvar VToolbarItems = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-toolbar__items\');\n\n/* unused harmony default export */ var _unused_webpack_default_export = ({\n $_vuetify_subcomponents: {\n VToolbar: _VToolbar__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"],\n VToolbarItems: VToolbarItems,\n VToolbarTitle: VToolbarTitle\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVlRvb2xiYXIvaW5kZXgudHM/YWEzZCJdLCJuYW1lcyI6WyJWVG9vbGJhclRpdGxlIiwiY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCIsIlZUb29sYmFySXRlbXMiLCIkX3Z1ZXRpZnlfc3ViY29tcG9uZW50cyIsIlZUb29sYmFyIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0NBR0E7O0FBQ0E7QUFFQSxJQUFNQSxhQUFhLEdBQUdDLG9GQUFzQixDQUFDLGtCQUFELENBQTVDO0FBQ0EsSUFBTUMsYUFBYSxHQUFHRCxvRkFBc0IsQ0FBQyxrQkFBRCxDQUE1QztBQUVBO0FBTWU7RUFDYkUsdUJBQXVCLEVBQUU7SUFDdkJDLFFBRHVCLEVBQ3ZCQSx5REFEdUI7SUFFdkJGLGFBRnVCLEVBRXZCQSxhQUZ1QjtJQUd2QkYsYUFBQSxFQUFBQTtFQUh1QjtBQURaLENBQWYiLCJmaWxlIjoiMjAyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29tcG9uZW50c1xuaW1wb3J0IFZUb29sYmFyIGZyb20gJy4vVlRvb2xiYXInXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcblxuY29uc3QgVlRvb2xiYXJUaXRsZSA9IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwoJ3YtdG9vbGJhcl9fdGl0bGUnKVxuY29uc3QgVlRvb2xiYXJJdGVtcyA9IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwoJ3YtdG9vbGJhcl9faXRlbXMnKVxuXG5leHBvcnQge1xuICBWVG9vbGJhcixcbiAgVlRvb2xiYXJJdGVtcyxcbiAgVlRvb2xiYXJUaXRsZSxcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICAkX3Z1ZXRpZnlfc3ViY29tcG9uZW50czoge1xuICAgIFZUb29sYmFyLFxuICAgIFZUb29sYmFySXRlbXMsXG4gICAgVlRvb2xiYXJUaXRsZSxcbiAgfSxcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///202\n')},,,,,,,,,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.number.constructor.js\nvar es_number_constructor = __webpack_require__(28);\n\n// EXTERNAL MODULE: ./node_modules/vue/dist/vue.runtime.esm.js\nvar vue_runtime_esm = __webpack_require__(2);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js\nvar es_symbol = __webpack_require__(7);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js\nvar es_array_filter = __webpack_require__(10);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptor.js\nvar es_object_get_own_property_descriptor = __webpack_require__(12);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptors.js\nvar es_object_get_own_property_descriptors = __webpack_require__(13);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.keys.js\nvar es_object_keys = __webpack_require__(8);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js\nvar es_object_to_string = __webpack_require__(3);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js\nvar web_dom_collections_for_each = __webpack_require__(9);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(1);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.fixed.js\nvar es_string_fixed = __webpack_require__(190);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/src/components/VProgressLinear/VProgressLinear.sass\nvar VProgressLinear = __webpack_require__(490);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/components/transitions/index.js + 2 modules\nvar transitions = __webpack_require__(115);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/directives/intersect/index.js\nvar intersect = __webpack_require__(132);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/colorable/index.js\nvar colorable = __webpack_require__(32);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/positionable/index.js\nvar positionable = __webpack_require__(79);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/proxyable/index.js\nvar proxyable = __webpack_require__(137);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/themeable/index.js\nvar themeable = __webpack_require__(24);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/util/helpers.js\nvar helpers = __webpack_require__(0);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/util/mixins.js\nvar mixins = __webpack_require__(5);\n\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/components/VProgressLinear/VProgressLinear.js\n\n\n\n\n\n\n\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(defineProperty[\"a\" /* default */])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n\n\n // Components\n\n // Directives\n\n // Mixins\n\n\n\n\n // Utilities\n\n\n\nvar baseMixins = Object(mixins[\"a\" /* default */])(colorable[\"a\" /* default */], Object(positionable[\"b\" /* factory */])(['absolute', 'fixed', 'top', 'bottom']), proxyable[\"a\" /* default */], themeable[\"a\" /* default */]);\n/* @vue/component */\n\n/* harmony default export */ var VProgressLinear_VProgressLinear = (baseMixins.extend({\n name: 'v-progress-linear',\n directives: {\n intersect: intersect[\"a\" /* default */]\n },\n props: {\n active: {\n type: Boolean,\n default: true\n },\n backgroundColor: {\n type: String,\n default: null\n },\n backgroundOpacity: {\n type: [Number, String],\n default: null\n },\n bufferValue: {\n type: [Number, String],\n default: 100\n },\n color: {\n type: String,\n default: 'primary'\n },\n height: {\n type: [Number, String],\n default: 4\n },\n indeterminate: Boolean,\n query: Boolean,\n reverse: Boolean,\n rounded: Boolean,\n stream: Boolean,\n striped: Boolean,\n value: {\n type: [Number, String],\n default: 0\n }\n },\n data: function data() {\n return {\n internalLazyValue: this.value || 0,\n isVisible: true\n };\n },\n computed: {\n __cachedBackground: function __cachedBackground() {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor || this.color, {\n staticClass: 'v-progress-linear__background',\n style: this.backgroundStyle\n }));\n },\n __cachedBar: function __cachedBar() {\n return this.$createElement(this.computedTransition, [this.__cachedBarType]);\n },\n __cachedBarType: function __cachedBarType() {\n return this.indeterminate ? this.__cachedIndeterminate : this.__cachedDeterminate;\n },\n __cachedBuffer: function __cachedBuffer() {\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__buffer',\n style: this.styles\n });\n },\n __cachedDeterminate: function __cachedDeterminate() {\n return this.$createElement('div', this.setBackgroundColor(this.color, {\n staticClass: \"v-progress-linear__determinate\",\n style: {\n width: Object(helpers[\"h\" /* convertToUnit */])(this.normalizedValue, '%')\n }\n }));\n },\n __cachedIndeterminate: function __cachedIndeterminate() {\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__indeterminate',\n class: {\n 'v-progress-linear__indeterminate--active': this.active\n }\n }, [this.genProgressBar('long'), this.genProgressBar('short')]);\n },\n __cachedStream: function __cachedStream() {\n if (!this.stream) return null;\n return this.$createElement('div', this.setTextColor(this.color, {\n staticClass: 'v-progress-linear__stream',\n style: {\n width: Object(helpers[\"h\" /* convertToUnit */])(100 - this.normalizedBuffer, '%')\n }\n }));\n },\n backgroundStyle: function backgroundStyle() {\n var backgroundOpacity = this.backgroundOpacity == null ? this.backgroundColor ? 1 : 0.3 : parseFloat(this.backgroundOpacity);\n return Object(defineProperty[\"a\" /* default */])(Object(defineProperty[\"a\" /* default */])({\n opacity: backgroundOpacity\n }, this.isReversed ? 'right' : 'left', Object(helpers[\"h\" /* convertToUnit */])(this.normalizedValue, '%')), \"width\", Object(helpers[\"h\" /* convertToUnit */])(Math.max(0, this.normalizedBuffer - this.normalizedValue), '%'));\n },\n classes: function classes() {\n return _objectSpread({\n 'v-progress-linear--absolute': this.absolute,\n 'v-progress-linear--fixed': this.fixed,\n 'v-progress-linear--query': this.query,\n 'v-progress-linear--reactive': this.reactive,\n 'v-progress-linear--reverse': this.isReversed,\n 'v-progress-linear--rounded': this.rounded,\n 'v-progress-linear--striped': this.striped,\n 'v-progress-linear--visible': this.isVisible\n }, this.themeClasses);\n },\n computedTransition: function computedTransition() {\n return this.indeterminate ? transitions[\"c\" /* VFadeTransition */] : transitions[\"e\" /* VSlideXTransition */];\n },\n isReversed: function isReversed() {\n return this.$vuetify.rtl !== this.reverse;\n },\n normalizedBuffer: function normalizedBuffer() {\n return this.normalize(this.bufferValue);\n },\n normalizedValue: function normalizedValue() {\n return this.normalize(this.internalLazyValue);\n },\n reactive: function reactive() {\n return Boolean(this.$listeners.change);\n },\n styles: function styles() {\n var styles = {};\n if (!this.active) {\n styles.height = 0;\n }\n if (!this.indeterminate && parseFloat(this.normalizedBuffer) !== 100) {\n styles.width = Object(helpers[\"h\" /* convertToUnit */])(this.normalizedBuffer, '%');\n }\n return styles;\n }\n },\n methods: {\n genContent: function genContent() {\n var slot = Object(helpers[\"s\" /* getSlot */])(this, 'default', {\n value: this.internalLazyValue\n });\n if (!slot) return null;\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__content'\n }, slot);\n },\n genListeners: function genListeners() {\n var listeners = this.$listeners;\n if (this.reactive) {\n listeners.click = this.onClick;\n }\n return listeners;\n },\n genProgressBar: function genProgressBar(name) {\n return this.$createElement('div', this.setBackgroundColor(this.color, {\n staticClass: 'v-progress-linear__indeterminate',\n class: Object(defineProperty[\"a\" /* default */])({}, name, true)\n }));\n },\n onClick: function onClick(e) {\n if (!this.reactive) return;\n var _this$$el$getBounding = this.$el.getBoundingClientRect(),\n width = _this$$el$getBounding.width;\n this.internalValue = e.offsetX / width * 100;\n },\n onObserve: function onObserve(entries, observer, isIntersecting) {\n this.isVisible = isIntersecting;\n },\n normalize: function normalize(value) {\n if (value < 0) return 0;\n if (value > 100) return 100;\n return parseFloat(value);\n }\n },\n render: function render(h) {\n var data = {\n staticClass: 'v-progress-linear',\n attrs: {\n role: 'progressbar',\n 'aria-valuemin': 0,\n 'aria-valuemax': this.normalizedBuffer,\n 'aria-valuenow': this.indeterminate ? undefined : this.normalizedValue\n },\n class: this.classes,\n directives: [{\n name: 'intersect',\n value: this.onObserve\n }],\n style: {\n bottom: this.bottom ? 0 : undefined,\n height: this.active ? Object(helpers[\"h\" /* convertToUnit */])(this.height) : 0,\n top: this.top ? 0 : undefined\n },\n on: this.genListeners()\n };\n return h('div', data, [this.__cachedStream, this.__cachedBackground, this.__cachedBuffer, this.__cachedBar, this.genContent()]);\n }\n}));\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/components/VProgressLinear/index.js\n\n\n/* harmony default export */ var components_VProgressLinear = (VProgressLinear_VProgressLinear);\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/mixins/loadable/index.js\n\n\n\n\n/**\n * Loadable\n *\n * @mixin\n *\n * Used to add linear progress bar to components\n * Can use a default bar with a specific color\n * or designate a custom progress linear bar\n */\n\n/* @vue/component */\n\n/* harmony default export */ var loadable = __webpack_exports__[\"a\"] = (vue_runtime_esm[\"a\" /* default */].extend().extend({\n name: 'loadable',\n props: {\n loading: {\n type: [Boolean, String],\n default: false\n },\n loaderHeight: {\n type: [Number, String],\n default: 2\n }\n },\n methods: {\n genProgress: function genProgress() {\n if (this.loading === false) return null;\n return Object(helpers[\"s\" /* getSlot */])(this, 'progress') || this.$createElement(components_VProgressLinear, {\n props: {\n absolute: true,\n color: this.loading === true || this.loading === '' ? this.color || 'primary' : this.loading,\n height: this.loaderHeight,\n indeterminate: true\n }\n });\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVlByb2dyZXNzTGluZWFyL1ZQcm9ncmVzc0xpbmVhci50cz8yOTNjIiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9WUHJvZ3Jlc3NMaW5lYXIvaW5kZXgudHM/NWQ3ZCIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9sb2FkYWJsZS9pbmRleC50cz8xMmQ5Il0sIm5hbWVzIjpbImJhc2VNaXhpbnMiLCJtaXhpbnMiLCJDb2xvcmFibGUiLCJQb3NpdGlvbmFibGVGYWN0b3J5IiwiUHJveHlhYmxlIiwiVGhlbWVhYmxlIiwiZXh0ZW5kIiwibmFtZSIsImRpcmVjdGl2ZXMiLCJpbnRlcnNlY3QiLCJwcm9wcyIsImFjdGl2ZSIsInR5cGUiLCJCb29sZWFuIiwiZGVmYXVsdCIsImJhY2tncm91bmRDb2xvciIsIlN0cmluZyIsImJhY2tncm91bmRPcGFjaXR5IiwiTnVtYmVyIiwiYnVmZmVyVmFsdWUiLCJjb2xvciIsImhlaWdodCIsImluZGV0ZXJtaW5hdGUiLCJxdWVyeSIsInJldmVyc2UiLCJyb3VuZGVkIiwic3RyZWFtIiwic3RyaXBlZCIsInZhbHVlIiwiZGF0YSIsImludGVybmFsTGF6eVZhbHVlIiwiaXNWaXNpYmxlIiwiY29tcHV0ZWQiLCJfX2NhY2hlZEJhY2tncm91bmQiLCIkY3JlYXRlRWxlbWVudCIsInNldEJhY2tncm91bmRDb2xvciIsInN0YXRpY0NsYXNzIiwic3R5bGUiLCJiYWNrZ3JvdW5kU3R5bGUiLCJfX2NhY2hlZEJhciIsImNvbXB1dGVkVHJhbnNpdGlvbiIsIl9fY2FjaGVkQmFyVHlwZSIsIl9fY2FjaGVkSW5kZXRlcm1pbmF0ZSIsIl9fY2FjaGVkRGV0ZXJtaW5hdGUiLCJfX2NhY2hlZEJ1ZmZlciIsInN0eWxlcyIsIndpZHRoIiwiY29udmVydFRvVW5pdCIsIm5vcm1hbGl6ZWRWYWx1ZSIsImNsYXNzIiwiZ2VuUHJvZ3Jlc3NCYXIiLCJfX2NhY2hlZFN0cmVhbSIsInNldFRleHRDb2xvciIsIm5vcm1hbGl6ZWRCdWZmZXIiLCJwYXJzZUZsb2F0IiwiX2RlZmluZVByb3BlcnR5Iiwib3BhY2l0eSIsImlzUmV2ZXJzZWQiLCJNYXRoIiwibWF4IiwiY2xhc3NlcyIsIl9vYmplY3RTcHJlYWQiLCJhYnNvbHV0ZSIsImZpeGVkIiwicmVhY3RpdmUiLCJ0aGVtZUNsYXNzZXMiLCJWRmFkZVRyYW5zaXRpb24iLCJWU2xpZGVYVHJhbnNpdGlvbiIsIiR2dWV0aWZ5IiwicnRsIiwibm9ybWFsaXplIiwiJGxpc3RlbmVycyIsImNoYW5nZSIsIm1ldGhvZHMiLCJnZW5Db250ZW50Iiwic2xvdCIsImdldFNsb3QiLCJnZW5MaXN0ZW5lcnMiLCJsaXN0ZW5lcnMiLCJjbGljayIsIm9uQ2xpY2siLCJlIiwiX3RoaXMkJGVsJGdldEJvdW5kaW5nIiwiJGVsIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwiaW50ZXJuYWxWYWx1ZSIsIm9mZnNldFgiLCJvbk9ic2VydmUiLCJlbnRyaWVzIiwib2JzZXJ2ZXIiLCJpc0ludGVyc2VjdGluZyIsInJlbmRlciIsImgiLCJhdHRycyIsInJvbGUiLCJ1bmRlZmluZWQiLCJib3R0b20iLCJ0b3AiLCJvbiIsIlZQcm9ncmVzc0xpbmVhciIsIlZ1ZSIsImxvYWRpbmciLCJsb2FkZXJIZWlnaHQiLCJnZW5Qcm9ncmVzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FFQTs7Q0FNQTs7Q0FHQTs7QUFDQTtBQUNBO0FBQ0E7Q0FHQTs7QUFDQTtBQUNBO0FBTUEsSUFBTUEsVUFBVSxHQUFHQyxpQ0FBTSxDQUN2QkMsNEJBRHVCLEVBRXZCQyx1Q0FBbUIsQ0FBQyxDQUFDLFVBQUQsRUFBYSxPQUFiLEVBQXNCLEtBQXRCLEVBQTZCLFFBQTdCLENBQUQsQ0FGSSxFQUd2QkMsNEJBSHVCLEVBSXZCQyw0QkFKdUIsQ0FB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anMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJy4vVlByb2dyZXNzTGluZWFyLnNhc3MnXG5cbi8vIENvbXBvbmVudHNcbmltcG9ydCB7XG4gIFZGYWRlVHJhbnNpdGlvbixcbiAgVlNsaWRlWFRyYW5zaXRpb24sXG59IGZyb20gJy4uL3RyYW5zaXRpb25zJ1xuXG4vLyBEaXJlY3RpdmVzXG5pbXBvcnQgaW50ZXJzZWN0IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvaW50ZXJzZWN0J1xuXG4vLyBNaXhpbnNcbmltcG9ydCBDb2xvcmFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL2NvbG9yYWJsZSdcbmltcG9ydCB7IGZhY3RvcnkgYXMgUG9zaXRpb25hYmxlRmFjdG9yeSB9IGZyb20gJy4uLy4uL21peGlucy9wb3NpdGlvbmFibGUnXG5pbXBvcnQgUHJveHlhYmxlIGZyb20gJy4uLy4uL21peGlucy9wcm94eWFibGUnXG5pbXBvcnQgVGhlbWVhYmxlIGZyb20gJy4uLy4uL21peGlucy90aGVtZWFibGUnXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgY29udmVydFRvVW5pdCwgZ2V0U2xvdCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcbmltcG9ydCBtaXhpbnMgZnJvbSAnLi4vLi4vdXRpbC9taXhpbnMnXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBGdW5jdGlvbmFsQ29tcG9uZW50T3B0aW9ucyB9IGZyb20gJ3Z1ZS90eXBlcydcbmltcG9ydCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuXG5jb25zdCBiYXNlTWl4aW5zID0gbWl4aW5zKFxuICBDb2xvcmFibGUsXG4gIFBvc2l0aW9uYWJsZUZhY3RvcnkoWydhYnNvbHV0ZScsICdmaXhlZCcsICd0b3AnLCAnYm90dG9tJ10pLFxuICBQcm94eWFibGUsXG4gIFRoZW1lYWJsZVxuKVxuXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgYmFzZU1peGlucy5leHRlbmQoe1xuICBuYW1lOiAndi1wcm9ncmVzcy1saW5lYXInLFxuXG4gIGRpcmVjdGl2ZXM6IHsgaW50ZXJzZWN0IH0sXG5cbiAgcHJvcHM6IHtcbiAgICBhY3RpdmU6IHtcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICBkZWZhdWx0OiB0cnVlLFxuICAgIH0sXG4gICAgYmFja2dyb3VuZENvbG9yOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiBudWxsLFxuICAgIH0sXG4gICAgYmFja2dyb3VuZE9wYWNpdHk6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiBudWxsLFxuICAgIH0sXG4gICAgYnVmZmVyVmFsdWU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAxMDAsXG4gICAgfSxcbiAgICBjb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ3ByaW1hcnknLFxuICAgIH0sXG4gICAgaGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNCxcbiAgICB9LFxuICAgIGluZGV0ZXJtaW5hdGU6IEJvb2xlYW4sXG4gICAgcXVlcnk6IEJvb2xlYW4sXG4gICAgcmV2ZXJzZTogQm9vbGVhbixcbiAgICByb3VuZGVkOiBCb29sZWFuLFxuICAgIHN0cmVhbTogQm9vbGVhbixcbiAgICBzdHJpcGVkOiBCb29sZWFuLFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMCxcbiAgICB9LFxuICB9LFxuXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBpbnRlcm5hbExhenlWYWx1ZTogdGhpcy52YWx1ZSB8fCAwLFxuICAgICAgaXNWaXNpYmxlOiB0cnVlLFxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIF9fY2FjaGVkQmFja2dyb3VuZCAoKTogVk5vZGUge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKHRoaXMuYmFja2dyb3VuZENvbG9yIHx8IHRoaXMuY29sb3IsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd2LXByb2dyZXNzLWxpbmVhcl9fYmFja2dyb3VuZCcsXG4gICAgICAgIHN0eWxlOiB0aGlzLmJhY2tncm91bmRTdHlsZSxcbiAgICAgIH0pKVxuICAgIH0sXG4gICAgX19jYWNoZWRCYXIgKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KHRoaXMuY29tcHV0ZWRUcmFuc2l0aW9uLCBbdGhpcy5fX2NhY2hlZEJhclR5cGVdKVxuICAgIH0sXG4gICAgX19jYWNoZWRCYXJUeXBlICgpOiBWTm9kZSB7XG4gICAgICByZXR1cm4gdGhpcy5pbmRldGVybWluYXRlID8gdGhpcy5fX2NhY2hlZEluZGV0ZXJtaW5hdGUgOiB0aGlzLl9fY2FjaGVkRGV0ZXJtaW5hdGVcbiAgICB9LFxuICAgIF9fY2FjaGVkQnVmZmVyICgpOiBWTm9kZSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtcHJvZ3Jlc3MtbGluZWFyX19idWZmZXInLFxuICAgICAgICBzdHlsZTogdGhpcy5zdHlsZXMsXG4gICAgICB9KVxuICAgIH0sXG4gICAgX19jYWNoZWREZXRlcm1pbmF0ZSAoKTogVk5vZGUge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKHRoaXMuY29sb3IsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6IGB2LXByb2dyZXNzLWxpbmVhcl9fZGV0ZXJtaW5hdGVgLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIHdpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMubm9ybWFsaXplZFZhbHVlLCAnJScpLFxuICAgICAgICB9LFxuICAgICAgfSkpXG4gICAgfSxcbiAgICBfX2NhY2hlZEluZGV0ZXJtaW5hdGUgKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1saW5lYXJfX2luZGV0ZXJtaW5hdGUnLFxuICAgICAgICBjbGFzczoge1xuICAgICAgICAgICd2LXByb2dyZXNzLWxpbmVhcl9faW5kZXRlcm1pbmF0ZS0tYWN0aXZlJzogdGhpcy5hY3RpdmUsXG4gICAgICAgIH0sXG4gICAgICB9LCBbXG4gICAgICAgIHRoaXMuZ2VuUHJvZ3Jlc3NCYXIoJ2xvbmcnKSxcbiAgICAgICAgdGhpcy5nZW5Qcm9ncmVzc0Jhcignc2hvcnQnKSxcbiAgICAgIF0pXG4gICAgfSxcbiAgICBfX2NhY2hlZFN0cmVhbSAoKTogVk5vZGUgfCBudWxsIHtcbiAgICAgIGlmICghdGhpcy5zdHJlYW0pIHJldHVybiBudWxsXG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB0aGlzLnNldFRleHRDb2xvcih0aGlzLmNvbG9yLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1saW5lYXJfX3N0cmVhbScsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgd2lkdGg6IGNvbnZlcnRUb1VuaXQoMTAwIC0gdGhpcy5ub3JtYWxpemVkQnVmZmVyLCAnJScpLFxuICAgICAgICB9LFxuICAgICAgfSkpXG4gICAgfSxcbiAgICBiYWNrZ3JvdW5kU3R5bGUgKCk6IG9iamVjdCB7XG4gICAgICBjb25zdCBiYWNrZ3JvdW5kT3BhY2l0eSA9IHRoaXMuYmFja2dyb3VuZE9wYWNpdHkgPT0gbnVsbFxuICAgICAgICA/ICh0aGlzLmJhY2tncm91bmRDb2xvciA/IDEgOiAwLjMpXG4gICAgICAgIDogcGFyc2VGbG9hdCh0aGlzLmJhY2tncm91bmRPcGFjaXR5KVxuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBvcGFjaXR5OiBiYWNrZ3JvdW5kT3BhY2l0eSxcbiAgICAgICAgW3RoaXMuaXNSZXZlcnNlZCA/ICdyaWdodCcgOiAnbGVmdCddOiBjb252ZXJ0VG9Vbml0KHRoaXMubm9ybWFsaXplZFZhbHVlLCAnJScpLFxuICAgICAgICB3aWR0aDogY29udmVydFRvVW5pdChNYXRoLm1heCgwLCB0aGlzLm5vcm1hbGl6ZWRCdWZmZXIgLSB0aGlzLm5vcm1hbGl6ZWRWYWx1ZSksICclJyksXG4gICAgICB9XG4gICAgfSxcbiAgICBjbGFzc2VzICgpOiBvYmplY3Qge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtbGluZWFyLS1hYnNvbHV0ZSc6IHRoaXMuYWJzb2x1dGUsXG4gICAgICAgICd2LXByb2dyZXNzLWxpbmVhci0tZml4ZWQnOiB0aGlzLmZpeGVkLFxuICAgICAgICAndi1wcm9ncmVzcy1saW5lYXItLXF1ZXJ5JzogdGhpcy5xdWVyeSxcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtbGluZWFyLS1yZWFjdGl2ZSc6IHRoaXMucmVhY3RpdmUsXG4gICAgICAgICd2LXByb2dyZXNzLWxpbmVhci0tcmV2ZXJzZSc6IHRoaXMuaXNSZXZlcnNlZCxcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtbGluZWFyLS1yb3VuZGVkJzogdGhpcy5yb3VuZGVkLFxuICAgICAgICAndi1wcm9ncmVzcy1saW5lYXItLXN0cmlwZWQnOiB0aGlzLnN0cmlwZWQsXG4gICAgICAgICd2LXByb2dyZXNzLWxpbmVhci0tdmlzaWJsZSc6IHRoaXMuaXNWaXNpYmxlLFxuICAgICAgICAuLi50aGlzLnRoZW1lQ2xhc3NlcyxcbiAgICAgIH1cbiAgICB9LFxuICAgIGNvbXB1dGVkVHJhbnNpdGlvbiAoKTogRnVuY3Rpb25hbENvbXBvbmVudE9wdGlvbnMge1xuICAgICAgcmV0dXJuIHRoaXMuaW5kZXRlcm1pbmF0ZSA/IFZGYWRlVHJhbnNpdGlvbiA6IFZTbGlkZVhUcmFuc2l0aW9uXG4gICAgfSxcbiAgICBpc1JldmVyc2VkICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLiR2dWV0aWZ5LnJ0bCAhPT0gdGhpcy5yZXZlcnNlXG4gICAgfSxcbiAgICBub3JtYWxpemVkQnVmZmVyICgpOiBudW1iZXIge1xuICAgICAgcmV0dXJuIHRoaXMubm9ybWFsaXplKHRoaXMuYnVmZmVyVmFsdWUpXG4gICAgfSxcbiAgICBub3JtYWxpemVkVmFsdWUgKCk6IG51bWJlciB7XG4gICAgICByZXR1cm4gdGhpcy5ub3JtYWxpemUodGhpcy5pbnRlcm5hbExhenlWYWx1ZSlcbiAgICB9LFxuICAgIHJlYWN0aXZlICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBCb29sZWFuKHRoaXMuJGxpc3RlbmVycy5jaGFuZ2UpXG4gICAgfSxcbiAgICBzdHlsZXMgKCk6IG9iamVjdCB7XG4gICAgICBjb25zdCBzdHlsZXM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fVxuXG4gICAgICBpZiAoIXRoaXMuYWN0aXZlKSB7XG4gICAgICAgIHN0eWxlcy5oZWlnaHQgPSAwXG4gICAgICB9XG5cbiAgICAgIGlmICghdGhpcy5pbmRldGVybWluYXRlICYmIHBhcnNlRmxvYXQodGhpcy5ub3JtYWxpemVkQnVmZmVyKSAhPT0gMTAwKSB7XG4gICAgICAgIHN0eWxlcy53aWR0aCA9IGNvbnZlcnRUb1VuaXQodGhpcy5ub3JtYWxpemVkQnVmZmVyLCAnJScpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdHlsZXNcbiAgICB9LFxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5Db250ZW50ICgpIHtcbiAgICAgIGNvbnN0IHNsb3QgPSBnZXRTbG90KHRoaXMsICdkZWZhdWx0JywgeyB2YWx1ZTogdGhpcy5pbnRlcm5hbExhenlWYWx1ZSB9KVxuXG4gICAgICBpZiAoIXNsb3QpIHJldHVybiBudWxsXG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1saW5lYXJfX2NvbnRlbnQnLFxuICAgICAgfSwgc2xvdClcbiAgICB9LFxuICAgIGdlbkxpc3RlbmVycyAoKSB7XG4gICAgICBjb25zdCBsaXN0ZW5lcnMgPSB0aGlzLiRsaXN0ZW5lcnNcblxuICAgICAgaWYgKHRoaXMucmVhY3RpdmUpIHtcbiAgICAgICAgbGlzdGVuZXJzLmNsaWNrID0gdGhpcy5vbkNsaWNrXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBsaXN0ZW5lcnNcbiAgICB9LFxuICAgIGdlblByb2dyZXNzQmFyIChuYW1lOiAnbG9uZycgfCAnc2hvcnQnKSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2JywgdGhpcy5zZXRCYWNrZ3JvdW5kQ29sb3IodGhpcy5jb2xvciwge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtcHJvZ3Jlc3MtbGluZWFyX19pbmRldGVybWluYXRlJyxcbiAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICBbbmFtZV06IHRydWUsXG4gICAgICAgIH0sXG4gICAgICB9KSlcbiAgICB9LFxuICAgIG9uQ2xpY2sgKGU6IE1vdXNlRXZlbnQpIHtcbiAgICAgIGlmICghdGhpcy5yZWFjdGl2ZSkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IHsgd2lkdGggfSA9IHRoaXMuJGVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXG5cbiAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IGUub2Zmc2V0WCAvIHdpZHRoICogMTAwXG4gICAgfSxcbiAgICBvbk9ic2VydmUgKGVudHJpZXM6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnlbXSwgb2JzZXJ2ZXI6IEludGVyc2VjdGlvbk9ic2VydmVyLCBpc0ludGVyc2VjdGluZzogYm9vbGVhbikge1xuICAgICAgdGhpcy5pc1Zpc2libGUgPSBpc0ludGVyc2VjdGluZ1xuICAgIH0sXG4gICAgbm9ybWFsaXplICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKSB7XG4gICAgICBpZiAodmFsdWUgPCAwKSByZXR1cm4gMFxuICAgICAgaWYgKHZhbHVlID4gMTAwKSByZXR1cm4gMTAwXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdCh2YWx1ZSlcbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgc3RhdGljQ2xhc3M6ICd2LXByb2dyZXNzLWxpbmVhcicsXG4gICAgICBhdHRyczoge1xuICAgICAgICByb2xlOiAncHJvZ3Jlc3NiYXInLFxuICAgICAgICAnYXJpYS12YWx1ZW1pbic6IDAsXG4gICAgICAgICdhcmlhLXZhbHVlbWF4JzogdGhpcy5ub3JtYWxpemVkQnVmZmVyLFxuICAgICAgICAnYXJpYS12YWx1ZW5vdyc6IHRoaXMuaW5kZXRlcm1pbmF0ZSA/IHVuZGVmaW5lZCA6IHRoaXMubm9ybWFsaXplZFZhbHVlLFxuICAgICAgfSxcbiAgICAgIGNsYXNzOiB0aGlzLmNsYXNzZXMsXG4gICAgICBkaXJlY3RpdmVzOiBbe1xuICAgICAgICBuYW1lOiAnaW50ZXJzZWN0JyxcbiAgICAgICAgdmFsdWU6IHRoaXMub25PYnNlcnZlLFxuICAgICAgfV0sXG4gICAgICBzdHlsZToge1xuICAgICAgICBib3R0b206IHRoaXMuYm90dG9tID8gMCA6IHVuZGVmaW5lZCxcbiAgICAgICAgaGVpZ2h0OiB0aGlzLmFjdGl2ZSA/IGNvbnZlcnRUb1VuaXQodGhpcy5oZWlnaHQpIDogMCxcbiAgICAgICAgdG9wOiB0aGlzLnRvcCA/IDAgOiB1bmRlZmluZWQsXG4gICAgICB9LFxuICAgICAgb246IHRoaXMuZ2VuTGlzdGVuZXJzKCksXG4gICAgfVxuXG4gICAgcmV0dXJuIGgoJ2RpdicsIGRhdGEsIFtcbiAgICAgIHRoaXMuX19jYWNoZWRTdHJlYW0sXG4gICAgICB0aGlzLl9fY2FjaGVkQmFja2dyb3VuZCxcbiAgICAgIHRoaXMuX19jYWNoZWRCdWZmZXIsXG4gICAgICB0aGlzLl9fY2FjaGVkQmFyLFxuICAgICAgdGhpcy5nZW5Db250ZW50KCksXG4gICAgXSlcbiAgfSxcbn0pXG4iLCJpbXBvcnQgVlByb2dyZXNzTGluZWFyIGZyb20gJy4vVlByb2dyZXNzTGluZWFyJ1xuXG5leHBvcnQgeyBWUHJvZ3Jlc3NMaW5lYXIgfVxuZXhwb3J0IGRlZmF1bHQgVlByb2dyZXNzTGluZWFyXG4iLCJpbXBvcnQgVnVlLCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuaW1wb3J0IFZQcm9ncmVzc0xpbmVhciBmcm9tICcuLi8uLi9jb21wb25lbnRzL1ZQcm9ncmVzc0xpbmVhcidcbmltcG9ydCB7IGdldFNsb3QgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5cbmludGVyZmFjZSBjb2xvcmFibGUgZXh0ZW5kcyBWdWUge1xuICBjb2xvcj86IHN0cmluZ1xufVxuXG4vKipcbiAqIExvYWRhYmxlXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCB0byBhZGQgbGluZWFyIHByb2dyZXNzIGJhciB0byBjb21wb25lbnRzXG4gKiBDYW4gdXNlIGEgZGVmYXVsdCBiYXIgd2l0aCBhIHNwZWNpZmljIGNvbG9yXG4gKiBvciBkZXNpZ25hdGUgYSBjdXN0b20gcHJvZ3Jlc3MgbGluZWFyIGJhclxuICovXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgVnVlLmV4dGVuZDxjb2xvcmFibGU+KCkuZXh0ZW5kKHtcbiAgbmFtZTogJ2xvYWRhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGxvYWRpbmc6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgfSxcbiAgICBsb2FkZXJIZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAyLFxuICAgIH0sXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblByb2dyZXNzICgpOiBWTm9kZSB8IFZOb2RlW10gfCBudWxsIHtcbiAgICAgIGlmICh0aGlzLmxvYWRpbmcgPT09IGZhbHNlKSByZXR1cm4gbnVsbFxuXG4gICAgICByZXR1cm4gZ2V0U2xvdCh0aGlzLCAncHJvZ3Jlc3MnKSB8fCB0aGlzLiRjcmVhdGVFbGVtZW50KFZQcm9ncmVzc0xpbmVhciwge1xuICAgICAgICBwcm9wczoge1xuICAgICAgICAgIGFic29sdXRlOiB0cnVlLFxuICAgICAgICAgIGNvbG9yOiAodGhpcy5sb2FkaW5nID09PSB0cnVlIHx8IHRoaXMubG9hZGluZyA9PT0gJycpXG4gICAgICAgICAgICA/ICh0aGlzLmNvbG9yIHx8ICdwcmltYXJ5JylcbiAgICAgICAgICAgIDogdGhpcy5sb2FkaW5nLFxuICAgICAgICAgIGhlaWdodDogdGhpcy5sb2FkZXJIZWlnaHQsXG4gICAgICAgICAgaW5kZXRlcm1pbmF0ZTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSxcbiAgfSxcbn0pXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///212\n")},,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,function(module,exports,__webpack_require__){eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(21));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function (Math) {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var WordArray = C_lib.WordArray;\n\t var Hasher = C_lib.Hasher;\n\t var C_algo = C.algo;\n\n\t // Initialization and round constants tables\n\t var H = [];\n\t var K = [];\n\n\t // Compute constants\n\t (function () {\n\t function isPrime(n) {\n\t var sqrtN = Math.sqrt(n);\n\t for (var factor = 2; factor <= sqrtN; factor++) {\n\t if (!(n % factor)) {\n\t return false;\n\t }\n\t }\n\n\t return true;\n\t }\n\n\t function getFractionalBits(n) {\n\t return ((n - (n | 0)) * 0x100000000) | 0;\n\t }\n\n\t var n = 2;\n\t var nPrime = 0;\n\t while (nPrime < 64) {\n\t if (isPrime(n)) {\n\t if (nPrime < 8) {\n\t H[nPrime] = getFractionalBits(Math.pow(n, 1 / 2));\n\t }\n\t K[nPrime] = getFractionalBits(Math.pow(n, 1 / 3));\n\n\t nPrime++;\n\t }\n\n\t n++;\n\t }\n\t }());\n\n\t // Reusable object\n\t var W = [];\n\n\t /**\n\t * SHA-256 hash algorithm.\n\t */\n\t var SHA256 = C_algo.SHA256 = Hasher.extend({\n\t _doReset: function () {\n\t this._hash = new WordArray.init(H.slice(0));\n\t },\n\n\t _doProcessBlock: function (M, offset) {\n\t // Shortcut\n\t var H = this._hash.words;\n\n\t // Working variables\n\t var a = H[0];\n\t var b = H[1];\n\t var c = H[2];\n\t var d = H[3];\n\t var e = H[4];\n\t var f = H[5];\n\t var g = H[6];\n\t var h = H[7];\n\n\t // Computation\n\t for (var i = 0; i < 64; i++) {\n\t if (i < 16) {\n\t W[i] = M[offset + i] | 0;\n\t } else {\n\t var gamma0x = W[i - 15];\n\t var gamma0 = ((gamma0x << 25) | (gamma0x >>> 7)) ^\n\t ((gamma0x << 14) | (gamma0x >>> 18)) ^\n\t (gamma0x >>> 3);\n\n\t var gamma1x = W[i - 2];\n\t var gamma1 = ((gamma1x << 15) | (gamma1x >>> 17)) ^\n\t ((gamma1x << 13) | (gamma1x >>> 19)) ^\n\t (gamma1x >>> 10);\n\n\t W[i] = gamma0 + W[i - 7] + gamma1 + W[i - 16];\n\t }\n\n\t var ch = (e & f) ^ (~e & g);\n\t var maj = (a & b) ^ (a & c) ^ (b & c);\n\n\t var sigma0 = ((a << 30) | (a >>> 2)) ^ ((a << 19) | (a >>> 13)) ^ ((a << 10) | (a >>> 22));\n\t var sigma1 = ((e << 26) | (e >>> 6)) ^ ((e << 21) | (e >>> 11)) ^ ((e << 7) | (e >>> 25));\n\n\t var t1 = h + sigma1 + ch + K[i] + W[i];\n\t var t2 = sigma0 + maj;\n\n\t h = g;\n\t g = f;\n\t f = e;\n\t e = (d + t1) | 0;\n\t d = c;\n\t c = b;\n\t b = a;\n\t a = (t1 + t2) | 0;\n\t }\n\n\t // Intermediate hash value\n\t H[0] = (H[0] + a) | 0;\n\t H[1] = (H[1] + b) | 0;\n\t H[2] = (H[2] + c) | 0;\n\t H[3] = (H[3] + d) | 0;\n\t H[4] = (H[4] + e) | 0;\n\t H[5] = (H[5] + f) | 0;\n\t H[6] = (H[6] + g) | 0;\n\t H[7] = (H[7] + h) | 0;\n\t },\n\n\t _doFinalize: function () {\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\n\t var nBitsTotal = this._nDataBytes * 8;\n\t var nBitsLeft = data.sigBytes * 8;\n\n\t // Add padding\n\t dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = Math.floor(nBitsTotal / 0x100000000);\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = nBitsTotal;\n\t data.sigBytes = dataWords.length * 4;\n\n\t // Hash final blocks\n\t this._process();\n\n\t // Return final computed hash\n\t return this._hash;\n\t },\n\n\t clone: function () {\n\t var clone = Hasher.clone.call(this);\n\t clone._hash = this._hash.clone();\n\n\t return clone;\n\t }\n\t });\n\n\t /**\n\t * Shortcut function to the hasher's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hash = CryptoJS.SHA256('message');\n\t * var hash = CryptoJS.SHA256(wordArray);\n\t */\n\t C.SHA256 = Hasher._createHelper(SHA256);\n\n\t /**\n\t * Shortcut function to the HMAC's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hmac = CryptoJS.HmacSHA256(message, key);\n\t */\n\t C.HmacSHA256 = Hasher._createHmacHelper(SHA256);\n\t}(Math));\n\n\n\treturn CryptoJS.SHA256;\n\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3J5cHRvLWpzL3NoYTI1Ni5qcz85NGY4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLENBQUM7QUFDRCxLQUFLLElBQTJCO0FBQ2hDO0FBQ0EscUNBQXFDLG1CQUFPLENBQUMsRUFBUTtBQUNyRDtBQUNBLE1BQU0sRUFPSjtBQUNGLENBQUM7O0FBRUQ7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsaUNBQWlDLGlCQUFpQjtBQUNsRDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07O0FBRU47QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVOztBQUVWO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSw0QkFBNEIsUUFBUTtBQUNwQztBQUNBO0FBQ0Esa0JBQWtCO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQVU7O0FBRVY7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFVBQVU7O0FBRVY7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNOztBQUVOO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixpQkFBaUI7QUFDakM7QUFDQSxpQkFBaUIsVUFBVTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQyxnQkFBZ0IsaUJBQWlCO0FBQ2pDO0FBQ0EsaUJBQWlCLFVBQVU7QUFDM0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEVBQUU7OztBQUdGOztBQUVBLENBQUMiLCJmaWxlIjoiMjQzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiOyhmdW5jdGlvbiAocm9vdCwgZmFjdG9yeSkge1xuXHRpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIpIHtcblx0XHQvLyBDb21tb25KU1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cyA9IGZhY3RvcnkocmVxdWlyZShcIi4vY29yZVwiKSk7XG5cdH1cblx0ZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gXCJmdW5jdGlvblwiICYmIGRlZmluZS5hbWQpIHtcblx0XHQvLyBBTURcblx0XHRkZWZpbmUoW1wiLi9jb3JlXCJdLCBmYWN0b3J5KTtcblx0fVxuXHRlbHNlIHtcblx0XHQvLyBHbG9iYWwgKGJyb3dzZXIpXG5cdFx0ZmFjdG9yeShyb290LkNyeXB0b0pTKTtcblx0fVxufSh0aGlzLCBmdW5jdGlvbiAoQ3J5cHRvSlMpIHtcblxuXHQoZnVuY3Rpb24gKE1hdGgpIHtcblx0ICAgIC8vIFNob3J0Y3V0c1xuXHQgICAgdmFyIEMgPSBDcnlwdG9KUztcblx0ICAgIHZhciBDX2xpYiA9IEMubGliO1xuXHQgICAgdmFyIFdvcmRBcnJheSA9IENfbGliLldvcmRBcnJheTtcblx0ICAgIHZhciBIYXNoZXIgPSBDX2xpYi5IYXNoZXI7XG5cdCAgICB2YXIgQ19hbGdvID0gQy5hbGdvO1xuXG5cdCAgICAvLyBJbml0aWFsaXphdGlvbiBhbmQgcm91bmQgY29uc3RhbnRzIHRhYmxlc1xuXHQgICAgdmFyIEggPSBbXTtcblx0ICAgIHZhciBLID0gW107XG5cblx0ICAgIC8vIENvbXB1dGUgY29uc3RhbnRzXG5cdCAgICAoZnVuY3Rpb24gKCkge1xuXHQgICAgICAgIGZ1bmN0aW9uIGlzUHJpbWUobikge1xuXHQgICAgICAgICAgICB2YXIgc3FydE4gPSBNYXRoLnNxcnQobik7XG5cdCAgICAgICAgICAgIGZvciAodmFyIGZhY3RvciA9IDI7IGZhY3RvciA8PSBzcXJ0TjsgZmFjdG9yKyspIHtcblx0ICAgICAgICAgICAgICAgIGlmICghKG4gJSBmYWN0b3IpKSB7XG5cdCAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuXHQgICAgICAgICAgICAgICAgfVxuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgcmV0dXJuIHRydWU7XG5cdCAgICAgICAgfVxuXG5cdCAgICAgICAgZnVuY3Rpb24gZ2V0RnJhY3Rpb25hbEJpdHMobikge1xuXHQgICAgICAgICAgICByZXR1cm4gKChuIC0gKG4gfCAwKSkgKiAweDEwMDAwMDAwMCkgfCAwO1xuXHQgICAgICAgIH1cblxuXHQgICAgICAgIHZhciBuID0gMjtcblx0ICAgICAgICB2YXIgblByaW1lID0gMDtcblx0ICAgICAgICB3aGlsZSAoblByaW1lIDwgNjQpIHtcblx0ICAgICAgICAgICAgaWYgKGlzUHJpbWUobikpIHtcblx0ICAgICAgICAgICAgICAgIGlmIChuUHJpbWUgPCA4KSB7XG5cdCAgICAgICAgICAgICAgICAgICAgSFtuUHJpbWVdID0gZ2V0RnJhY3Rpb25hbEJpdHMoTWF0aC5wb3cobiwgMSAvIDIpKTtcblx0ICAgICAgICAgICAgICAgIH1cblx0ICAgICAgICAgICAgICAgIEtbblByaW1lXSA9IGdldEZyYWN0aW9uYWxCaXRzKE1hdGgucG93KG4sIDEgLyAzKSk7XG5cblx0ICAgICAgICAgICAgICAgIG5QcmltZSsrO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgbisrO1xuXHQgICAgICAgIH1cblx0ICAgIH0oKSk7XG5cblx0ICAgIC8vIFJldXNhYmxlIG9iamVjdFxuXHQgICAgdmFyIFcgPSBbXTtcblxuXHQgICAgLyoqXG5cdCAgICAgKiBTSEEtMjU2IGhhc2ggYWxnb3JpdGhtLlxuXHQgICAgICovXG5cdCAgICB2YXIgU0hBMjU2ID0gQ19hbGdvLlNIQTI1NiA9IEhhc2hlci5leHRlbmQoe1xuXHQgICAgICAgIF9kb1Jlc2V0OiBmdW5jdGlvbiAoKSB7XG5cdCAgICAgICAgICAgIHRoaXMuX2hhc2ggPSBuZXcgV29yZEFycmF5LmluaXQoSC5zbGljZSgwKSk7XG5cdCAgICAgICAgfSxcblxuXHQgICAgICAgIF9kb1Byb2Nlc3NCbG9jazogZnVuY3Rpb24gKE0sIG9mZnNldCkge1xuXHQgICAgICAgICAgICAvLyBTaG9ydGN1dFxuXHQgICAgICAgICAgICB2YXIgSCA9IHRoaXMuX2hhc2gud29yZHM7XG5cblx0ICAgICAgICAgICAgLy8gV29ya2luZyB2YXJpYWJsZXNcblx0ICAgICAgICAgICAgdmFyIGEgPSBIWzBdO1xuXHQgICAgICAgICAgICB2YXIgYiA9IEhbMV07XG5cdCAgICAgICAgICAgIHZhciBjID0gSFsyXTtcblx0ICAgICAgICAgICAgdmFyIGQgPSBIWzNdO1xuXHQgICAgICAgICAgICB2YXIgZSA9IEhbNF07XG5cdCAgICAgICAgICAgIHZhciBmID0gSFs1XTtcblx0ICAgICAgICAgICAgdmFyIGcgPSBIWzZdO1xuXHQgICAgICAgICAgICB2YXIgaCA9IEhbN107XG5cblx0ICAgICAgICAgICAgLy8gQ29tcHV0YXRpb25cblx0ICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCA2NDsgaSsrKSB7XG5cdCAgICAgICAgICAgICAgICBpZiAoaSA8IDE2KSB7XG5cdCAgICAgICAgICAgICAgICAgICAgV1tpXSA9IE1bb2Zmc2V0ICsgaV0gfCAwO1xuXHQgICAgICAgICAgICAgICAgfSBlbHNlIHtcblx0ICAgICAgICAgICAgICAgICAgICB2YXIgZ2FtbWEweCA9IFdbaSAtIDE1XTtcblx0ICAgICAgICAgICAgICAgICAgICB2YXIgZ2FtbWEwICA9ICgoZ2FtbWEweCA8PCAyNSkgfCAoZ2FtbWEweCA+Pj4gNykpICBeXG5cdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKGdhbW1hMHggPDwgMTQpIHwgKGdhbW1hMHggPj4+IDE4KSkgXlxuXHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChnYW1tYTB4ID4+PiAzKTtcblxuXHQgICAgICAgICAgICAgICAgICAgIHZhciBnYW1tYTF4ID0gV1tpIC0gMl07XG5cdCAgICAgICAgICAgICAgICAgICAgdmFyIGdhbW1hMSAgPSAoKGdhbW1hMXggPDwgMTUpIHwgKGdhbW1hMXggPj4+IDE3KSkgXlxuXHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChnYW1tYTF4IDw8IDEzKSB8IChnYW1tYTF4ID4+PiAxOSkpIF5cblx0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZ2FtbWExeCA+Pj4gMTApO1xuXG5cdCAgICAgICAgICAgICAgICAgICAgV1tpXSA9IGdhbW1hMCArIFdbaSAtIDddICsgZ2FtbWExICsgV1tpIC0gMTZdO1xuXHQgICAgICAgICAgICAgICAgfVxuXG5cdCAgICAgICAgICAgICAgICB2YXIgY2ggID0gKGUgJiBmKSBeICh+ZSAmIGcpO1xuXHQgICAgICAgICAgICAgICAgdmFyIG1haiA9IChhICYgYikgXiAoYSAmIGMpIF4gKGIgJiBjKTtcblxuXHQgICAgICAgICAgICAgICAgdmFyIHNpZ21hMCA9ICgoYSA8PCAzMCkgfCAoYSA+Pj4gMikpIF4gKChhIDw8IDE5KSB8IChhID4+PiAxMykpIF4gKChhIDw8IDEwKSB8IChhID4+PiAyMikpO1xuXHQgICAgICAgICAgICAgICAgdmFyIHNpZ21hMSA9ICgoZSA8PCAyNikgfCAoZSA+Pj4gNikpIF4gKChlIDw8IDIxKSB8IChlID4+PiAxMSkpIF4gKChlIDw8IDcpICB8IChlID4+PiAyNSkpO1xuXG5cdCAgICAgICAgICAgICAgICB2YXIgdDEgPSBoICsgc2lnbWExICsgY2ggKyBLW2ldICsgV1tpXTtcblx0ICAgICAgICAgICAgICAgIHZhciB0MiA9IHNpZ21hMCArIG1hajtcblxuXHQgICAgICAgICAgICAgICAgaCA9IGc7XG5cdCAgICAgICAgICAgICAgICBnID0gZjtcblx0ICAgICAgICAgICAgICAgIGYgPSBlO1xuXHQgICAgICAgICAgICAgICAgZSA9IChkICsgdDEpIHwgMDtcblx0ICAgICAgICAgICAgICAgIGQgPSBjO1xuXHQgICAgICAgICAgICAgICAgYyA9IGI7XG5cdCAgICAgICAgICAgICAgICBiID0gYTtcblx0ICAgICAgICAgICAgICAgIGEgPSAodDEgKyB0MikgfCAwO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgLy8gSW50ZXJtZWRpYXRlIGhhc2ggdmFsdWVcblx0ICAgICAgICAgICAgSFswXSA9IChIWzBdICsgYSkgfCAwO1xuXHQgICAgICAgICAgICBIWzFdID0gKEhbMV0gKyBiKSB8IDA7XG5cdCAgICAgICAgICAgIEhbMl0gPSAoSFsyXSArIGMpIHwgMDtcblx0ICAgICAgICAgICAgSFszXSA9IChIWzNdICsgZCkgfCAwO1xuXHQgICAgICAgICAgICBIWzRdID0gKEhbNF0gKyBlKSB8IDA7XG5cdCAgICAgICAgICAgIEhbNV0gPSAoSFs1XSArIGYpIHwgMDtcblx0ICAgICAgICAgICAgSFs2XSA9IChIWzZdICsgZykgfCAwO1xuXHQgICAgICAgICAgICBIWzddID0gKEhbN10gKyBoKSB8IDA7XG5cdCAgICAgICAgfSxcblxuXHQgICAgICAgIF9kb0ZpbmFsaXplOiBmdW5jdGlvbiAoKSB7XG5cdCAgICAgICAgICAgIC8vIFNob3J0Y3V0c1xuXHQgICAgICAgICAgICB2YXIgZGF0YSA9IHRoaXMuX2RhdGE7XG5cdCAgICAgICAgICAgIHZhciBkYXRhV29yZHMgPSBkYXRhLndvcmRzO1xuXG5cdCAgICAgICAgICAgIHZhciBuQml0c1RvdGFsID0gdGhpcy5fbkRhdGFCeXRlcyAqIDg7XG5cdCAgICAgICAgICAgIHZhciBuQml0c0xlZnQgPSBkYXRhLnNpZ0J5dGVzICogODtcblxuXHQgICAgICAgICAgICAvLyBBZGQgcGFkZGluZ1xuXHQgICAgICAgICAgICBkYXRhV29yZHNbbkJpdHNMZWZ0ID4+PiA1XSB8PSAweDgwIDw8ICgyNCAtIG5CaXRzTGVmdCAlIDMyKTtcblx0ICAgICAgICAgICAgZGF0YVdvcmRzWygoKG5CaXRzTGVmdCArIDY0KSA+Pj4gOSkgPDwgNCkgKyAxNF0gPSBNYXRoLmZsb29yKG5CaXRzVG90YWwgLyAweDEwMDAwMDAwMCk7XG5cdCAgICAgICAgICAgIGRhdGFXb3Jkc1soKChuQml0c0xlZnQgKyA2NCkgPj4+IDkpIDw8IDQpICsgMTVdID0gbkJpdHNUb3RhbDtcblx0ICAgICAgICAgICAgZGF0YS5zaWdCeXRlcyA9IGRhdGFXb3Jkcy5sZW5ndGggKiA0O1xuXG5cdCAgICAgICAgICAgIC8vIEhhc2ggZmluYWwgYmxvY2tzXG5cdCAgICAgICAgICAgIHRoaXMuX3Byb2Nlc3MoKTtcblxuXHQgICAgICAgICAgICAvLyBSZXR1cm4gZmluYWwgY29tcHV0ZWQgaGFzaFxuXHQgICAgICAgICAgICByZXR1cm4gdGhpcy5faGFzaDtcblx0ICAgICAgICB9LFxuXG5cdCAgICAgICAgY2xvbmU6IGZ1bmN0aW9uICgpIHtcblx0ICAgICAgICAgICAgdmFyIGNsb25lID0gSGFzaGVyLmNsb25lLmNhbGwodGhpcyk7XG5cdCAgICAgICAgICAgIGNsb25lLl9oYXNoID0gdGhpcy5faGFzaC5jbG9uZSgpO1xuXG5cdCAgICAgICAgICAgIHJldHVybiBjbG9uZTtcblx0ICAgICAgICB9XG5cdCAgICB9KTtcblxuXHQgICAgLyoqXG5cdCAgICAgKiBTaG9ydGN1dCBmdW5jdGlvbiB0byB0aGUgaGFzaGVyJ3Mgb2JqZWN0IGludGVyZmFjZS5cblx0ICAgICAqXG5cdCAgICAgKiBAcGFyYW0ge1dvcmRBcnJheXxzdHJpbmd9IG1lc3NhZ2UgVGhlIG1lc3NhZ2UgdG8gaGFzaC5cblx0ICAgICAqXG5cdCAgICAgKiBAcmV0dXJuIHtXb3JkQXJyYXl9IFRoZSBoYXNoLlxuXHQgICAgICpcblx0ICAgICAqIEBzdGF0aWNcblx0ICAgICAqXG5cdCAgICAgKiBAZXhhbXBsZVxuXHQgICAgICpcblx0ICAgICAqICAgICB2YXIgaGFzaCA9IENyeXB0b0pTLlNIQTI1NignbWVzc2FnZScpO1xuXHQgICAgICogICAgIHZhciBoYXNoID0gQ3J5cHRvSlMuU0hBMjU2KHdvcmRBcnJheSk7XG5cdCAgICAgKi9cblx0ICAgIEMuU0hBMjU2ID0gSGFzaGVyLl9jcmVhdGVIZWxwZXIoU0hBMjU2KTtcblxuXHQgICAgLyoqXG5cdCAgICAgKiBTaG9ydGN1dCBmdW5jdGlvbiB0byB0aGUgSE1BQydzIG9iamVjdCBpbnRlcmZhY2UuXG5cdCAgICAgKlxuXHQgICAgICogQHBhcmFtIHtXb3JkQXJyYXl8c3RyaW5nfSBtZXNzYWdlIFRoZSBtZXNzYWdlIHRvIGhhc2guXG5cdCAgICAgKiBAcGFyYW0ge1dvcmRBcnJheXxzdHJpbmd9IGtleSBUaGUgc2VjcmV0IGtleS5cblx0ICAgICAqXG5cdCAgICAgKiBAcmV0dXJuIHtXb3JkQXJyYXl9IFRoZSBITUFDLlxuXHQgICAgICpcblx0ICAgICAqIEBzdGF0aWNcblx0ICAgICAqXG5cdCAgICAgKiBAZXhhbXBsZVxuXHQgICAgICpcblx0ICAgICAqICAgICB2YXIgaG1hYyA9IENyeXB0b0pTLkhtYWNTSEEyNTYobWVzc2FnZSwga2V5KTtcblx0ICAgICAqL1xuXHQgICAgQy5IbWFjU0hBMjU2ID0gSGFzaGVyLl9jcmVhdGVIbWFjSGVscGVyKFNIQTI1Nik7XG5cdH0oTWF0aCkpO1xuXG5cblx0cmV0dXJuIENyeXB0b0pTLlNIQTI1NjtcblxufSkpOyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///243\n")},function(module,exports,__webpack_require__){eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(21));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function () {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var Base = C_lib.Base;\n\t var C_enc = C.enc;\n\t var Utf8 = C_enc.Utf8;\n\t var C_algo = C.algo;\n\n\t /**\n\t * HMAC algorithm.\n\t */\n\t var HMAC = C_algo.HMAC = Base.extend({\n\t /**\n\t * Initializes a newly created HMAC.\n\t *\n\t * @param {Hasher} hasher The hash algorithm to use.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @example\n\t *\n\t * var hmacHasher = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256, key);\n\t */\n\t init: function (hasher, key) {\n\t // Init hasher\n\t hasher = this._hasher = new hasher.init();\n\n\t // Convert string to WordArray, else assume WordArray already\n\t if (typeof key == 'string') {\n\t key = Utf8.parse(key);\n\t }\n\n\t // Shortcuts\n\t var hasherBlockSize = hasher.blockSize;\n\t var hasherBlockSizeBytes = hasherBlockSize * 4;\n\n\t // Allow arbitrary length keys\n\t if (key.sigBytes > hasherBlockSizeBytes) {\n\t key = hasher.finalize(key);\n\t }\n\n\t // Clamp excess bits\n\t key.clamp();\n\n\t // Clone key for inner and outer pads\n\t var oKey = this._oKey = key.clone();\n\t var iKey = this._iKey = key.clone();\n\n\t // Shortcuts\n\t var oKeyWords = oKey.words;\n\t var iKeyWords = iKey.words;\n\n\t // XOR keys with pad constants\n\t for (var i = 0; i < hasherBlockSize; i++) {\n\t oKeyWords[i] ^= 0x5c5c5c5c;\n\t iKeyWords[i] ^= 0x36363636;\n\t }\n\t oKey.sigBytes = iKey.sigBytes = hasherBlockSizeBytes;\n\n\t // Set initial values\n\t this.reset();\n\t },\n\n\t /**\n\t * Resets this HMAC to its initial state.\n\t *\n\t * @example\n\t *\n\t * hmacHasher.reset();\n\t */\n\t reset: function () {\n\t // Shortcut\n\t var hasher = this._hasher;\n\n\t // Reset\n\t hasher.reset();\n\t hasher.update(this._iKey);\n\t },\n\n\t /**\n\t * Updates this HMAC with a message.\n\t *\n\t * @param {WordArray|string} messageUpdate The message to append.\n\t *\n\t * @return {HMAC} This HMAC instance.\n\t *\n\t * @example\n\t *\n\t * hmacHasher.update('message');\n\t * hmacHasher.update(wordArray);\n\t */\n\t update: function (messageUpdate) {\n\t this._hasher.update(messageUpdate);\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Finalizes the HMAC computation.\n\t * Note that the finalize operation is effectively a destructive, read-once operation.\n\t *\n\t * @param {WordArray|string} messageUpdate (Optional) A final message update.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @example\n\t *\n\t * var hmac = hmacHasher.finalize();\n\t * var hmac = hmacHasher.finalize('message');\n\t * var hmac = hmacHasher.finalize(wordArray);\n\t */\n\t finalize: function (messageUpdate) {\n\t // Shortcut\n\t var hasher = this._hasher;\n\n\t // Compute HMAC\n\t var innerHash = hasher.finalize(messageUpdate);\n\t hasher.reset();\n\t var hmac = hasher.finalize(this._oKey.clone().concat(innerHash));\n\n\t return hmac;\n\t }\n\t });\n\t}());\n\n\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3J5cHRvLWpzL2htYWMuanM/NTk4MCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxDQUFDO0FBQ0QsS0FBSyxJQUEyQjtBQUNoQztBQUNBLHFDQUFxQyxtQkFBTyxDQUFDLEVBQVE7QUFDckQ7QUFDQSxNQUFNLEVBT0o7QUFDRixDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQixvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDRCQUE0QixxQkFBcUI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFVBQVU7O0FBRVY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsVUFBVTs7QUFFVjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0EscUJBQXFCLEtBQUs7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsVUFBVTs7QUFFVjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixpQkFBaUI7QUFDckM7QUFDQSxxQkFBcUIsVUFBVTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOLEVBQUU7OztBQUdGLENBQUMiLCJmaWxlIjoiMjQ0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiOyhmdW5jdGlvbiAocm9vdCwgZmFjdG9yeSkge1xuXHRpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIpIHtcblx0XHQvLyBDb21tb25KU1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cyA9IGZhY3RvcnkocmVxdWlyZShcIi4vY29yZVwiKSk7XG5cdH1cblx0ZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gXCJmdW5jdGlvblwiICYmIGRlZmluZS5hbWQpIHtcblx0XHQvLyBBTURcblx0XHRkZWZpbmUoW1wiLi9jb3JlXCJdLCBmYWN0b3J5KTtcblx0fVxuXHRlbHNlIHtcblx0XHQvLyBHbG9iYWwgKGJyb3dzZXIpXG5cdFx0ZmFjdG9yeShyb290LkNyeXB0b0pTKTtcblx0fVxufSh0aGlzLCBmdW5jdGlvbiAoQ3J5cHRvSlMpIHtcblxuXHQoZnVuY3Rpb24gKCkge1xuXHQgICAgLy8gU2hvcnRjdXRzXG5cdCAgICB2YXIgQyA9IENyeXB0b0pTO1xuXHQgICAgdmFyIENfbGliID0gQy5saWI7XG5cdCAgICB2YXIgQmFzZSA9IENfbGliLkJhc2U7XG5cdCAgICB2YXIgQ19lbmMgPSBDLmVuYztcblx0ICAgIHZhciBVdGY4ID0gQ19lbmMuVXRmODtcblx0ICAgIHZhciBDX2FsZ28gPSBDLmFsZ287XG5cblx0ICAgIC8qKlxuXHQgICAgICogSE1BQyBhbGdvcml0aG0uXG5cdCAgICAgKi9cblx0ICAgIHZhciBITUFDID0gQ19hbGdvLkhNQUMgPSBCYXNlLmV4dGVuZCh7XG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogSW5pdGlhbGl6ZXMgYSBuZXdseSBjcmVhdGVkIEhNQUMuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge0hhc2hlcn0gaGFzaGVyIFRoZSBoYXNoIGFsZ29yaXRobSB0byB1c2UuXG5cdCAgICAgICAgICogQHBhcmFtIHtXb3JkQXJyYXl8c3RyaW5nfSBrZXkgVGhlIHNlY3JldCBrZXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciBobWFjSGFzaGVyID0gQ3J5cHRvSlMuYWxnby5ITUFDLmNyZWF0ZShDcnlwdG9KUy5hbGdvLlNIQTI1Niwga2V5KTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICBpbml0OiBmdW5jdGlvbiAoaGFzaGVyLCBrZXkpIHtcblx0ICAgICAgICAgICAgLy8gSW5pdCBoYXNoZXJcblx0ICAgICAgICAgICAgaGFzaGVyID0gdGhpcy5faGFzaGVyID0gbmV3IGhhc2hlci5pbml0KCk7XG5cblx0ICAgICAgICAgICAgLy8gQ29udmVydCBzdHJpbmcgdG8gV29yZEFycmF5LCBlbHNlIGFzc3VtZSBXb3JkQXJyYXkgYWxyZWFkeVxuXHQgICAgICAgICAgICBpZiAodHlwZW9mIGtleSA9PSAnc3RyaW5nJykge1xuXHQgICAgICAgICAgICAgICAga2V5ID0gVXRmOC5wYXJzZShrZXkpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRzXG5cdCAgICAgICAgICAgIHZhciBoYXNoZXJCbG9ja1NpemUgPSBoYXNoZXIuYmxvY2tTaXplO1xuXHQgICAgICAgICAgICB2YXIgaGFzaGVyQmxvY2tTaXplQnl0ZXMgPSBoYXNoZXJCbG9ja1NpemUgKiA0O1xuXG5cdCAgICAgICAgICAgIC8vIEFsbG93IGFyYml0cmFyeSBsZW5ndGgga2V5c1xuXHQgICAgICAgICAgICBpZiAoa2V5LnNpZ0J5dGVzID4gaGFzaGVyQmxvY2tTaXplQnl0ZXMpIHtcblx0ICAgICAgICAgICAgICAgIGtleSA9IGhhc2hlci5maW5hbGl6ZShrZXkpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgLy8gQ2xhbXAgZXhjZXNzIGJpdHNcblx0ICAgICAgICAgICAga2V5LmNsYW1wKCk7XG5cblx0ICAgICAgICAgICAgLy8gQ2xvbmUga2V5IGZvciBpbm5lciBhbmQgb3V0ZXIgcGFkc1xuXHQgICAgICAgICAgICB2YXIgb0tleSA9IHRoaXMuX29LZXkgPSBrZXkuY2xvbmUoKTtcblx0ICAgICAgICAgICAgdmFyIGlLZXkgPSB0aGlzLl9pS2V5ID0ga2V5LmNsb25lKCk7XG5cblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRzXG5cdCAgICAgICAgICAgIHZhciBvS2V5V29yZHMgPSBvS2V5LndvcmRzO1xuXHQgICAgICAgICAgICB2YXIgaUtleVdvcmRzID0gaUtleS53b3JkcztcblxuXHQgICAgICAgICAgICAvLyBYT1Iga2V5cyB3aXRoIHBhZCBjb25zdGFudHNcblx0ICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBoYXNoZXJCbG9ja1NpemU7IGkrKykge1xuXHQgICAgICAgICAgICAgICAgb0tleVdvcmRzW2ldIF49IDB4NWM1YzVjNWM7XG5cdCAgICAgICAgICAgICAgICBpS2V5V29yZHNbaV0gXj0gMHgzNjM2MzYzNjtcblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgICAgICBvS2V5LnNpZ0J5dGVzID0gaUtleS5zaWdCeXRlcyA9IGhhc2hlckJsb2NrU2l6ZUJ5dGVzO1xuXG5cdCAgICAgICAgICAgIC8vIFNldCBpbml0aWFsIHZhbHVlc1xuXHQgICAgICAgICAgICB0aGlzLnJlc2V0KCk7XG5cdCAgICAgICAgfSxcblxuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIFJlc2V0cyB0aGlzIEhNQUMgdG8gaXRzIGluaXRpYWwgc3RhdGUuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIGhtYWNIYXNoZXIucmVzZXQoKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICByZXNldDogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICAvLyBTaG9ydGN1dFxuXHQgICAgICAgICAgICB2YXIgaGFzaGVyID0gdGhpcy5faGFzaGVyO1xuXG5cdCAgICAgICAgICAgIC8vIFJlc2V0XG5cdCAgICAgICAgICAgIGhhc2hlci5yZXNldCgpO1xuXHQgICAgICAgICAgICBoYXNoZXIudXBkYXRlKHRoaXMuX2lLZXkpO1xuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBVcGRhdGVzIHRoaXMgSE1BQyB3aXRoIGEgbWVzc2FnZS5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBwYXJhbSB7V29yZEFycmF5fHN0cmluZ30gbWVzc2FnZVVwZGF0ZSBUaGUgbWVzc2FnZSB0byBhcHBlbmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtITUFDfSBUaGlzIEhNQUMgaW5zdGFuY2UuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIGhtYWNIYXNoZXIudXBkYXRlKCdtZXNzYWdlJyk7XG5cdCAgICAgICAgICogICAgIGhtYWNIYXNoZXIudXBkYXRlKHdvcmRBcnJheSk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgdXBkYXRlOiBmdW5jdGlvbiAobWVzc2FnZVVwZGF0ZSkge1xuXHQgICAgICAgICAgICB0aGlzLl9oYXNoZXIudXBkYXRlKG1lc3NhZ2VVcGRhdGUpO1xuXG5cdCAgICAgICAgICAgIC8vIENoYWluYWJsZVxuXHQgICAgICAgICAgICByZXR1cm4gdGhpcztcblx0ICAgICAgICB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogRmluYWxpemVzIHRoZSBITUFDIGNvbXB1dGF0aW9uLlxuXHQgICAgICAgICAqIE5vdGUgdGhhdCB0aGUgZmluYWxpemUgb3BlcmF0aW9uIGlzIGVmZmVjdGl2ZWx5IGEgZGVzdHJ1Y3RpdmUsIHJlYWQtb25jZSBvcGVyYXRpb24uXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge1dvcmRBcnJheXxzdHJpbmd9IG1lc3NhZ2VVcGRhdGUgKE9wdGlvbmFsKSBBIGZpbmFsIG1lc3NhZ2UgdXBkYXRlLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHJldHVybiB7V29yZEFycmF5fSBUaGUgSE1BQy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIGhtYWMgPSBobWFjSGFzaGVyLmZpbmFsaXplKCk7XG5cdCAgICAgICAgICogICAgIHZhciBobWFjID0gaG1hY0hhc2hlci5maW5hbGl6ZSgnbWVzc2FnZScpO1xuXHQgICAgICAgICAqICAgICB2YXIgaG1hYyA9IGhtYWNIYXNoZXIuZmluYWxpemUod29yZEFycmF5KTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICBmaW5hbGl6ZTogZnVuY3Rpb24gKG1lc3NhZ2VVcGRhdGUpIHtcblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRcblx0ICAgICAgICAgICAgdmFyIGhhc2hlciA9IHRoaXMuX2hhc2hlcjtcblxuXHQgICAgICAgICAgICAvLyBDb21wdXRlIEhNQUNcblx0ICAgICAgICAgICAgdmFyIGlubmVySGFzaCA9IGhhc2hlci5maW5hbGl6ZShtZXNzYWdlVXBkYXRlKTtcblx0ICAgICAgICAgICAgaGFzaGVyLnJlc2V0KCk7XG5cdCAgICAgICAgICAgIHZhciBobWFjID0gaGFzaGVyLmZpbmFsaXplKHRoaXMuX29LZXkuY2xvbmUoKS5jb25jYXQoaW5uZXJIYXNoKSk7XG5cblx0ICAgICAgICAgICAgcmV0dXJuIGhtYWM7XG5cdCAgICAgICAgfVxuXHQgICAgfSk7XG5cdH0oKSk7XG5cblxufSkpOyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///244\n")},,,function(module,exports,__webpack_require__){"use strict";eval('\n\nmodule.exports = function (url, options) {\n if (!options) {\n // eslint-disable-next-line no-param-reassign\n options = {};\n } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n url = url && url.__esModule ? url.default : url;\n\n if (typeof url !== "string") {\n return url;\n } // If url is already wrapped in quotes, remove them\n\n\n if (/^[\'"].*[\'"]$/.test(url)) {\n // eslint-disable-next-line no-param-reassign\n url = url.slice(1, -1);\n }\n\n if (options.hash) {\n // eslint-disable-next-line no-param-reassign\n url += options.hash;\n } // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n\n\n if (/["\'() \\t\\n]/.test(url) || options.needQuotes) {\n return "\\"".concat(url.replace(/"/g, \'\\\\"\').replace(/\\n/g, "\\\\n"), "\\"");\n }\n\n return url;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvZ2V0VXJsLmpzPzFkZTUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOzs7QUFHSDs7QUFFQTtBQUNBO0FBQ0EsR0FBRzs7O0FBR0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIOzs7QUFHQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSIsImZpbGUiOiIyNDcuanMiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodXJsLCBvcHRpb25zKSB7XG4gIGlmICghb3B0aW9ucykge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgIG9wdGlvbnMgPSB7fTtcbiAgfSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZXJzY29yZS1kYW5nbGUsIG5vLXBhcmFtLXJlYXNzaWduXG5cblxuICB1cmwgPSB1cmwgJiYgdXJsLl9fZXNNb2R1bGUgPyB1cmwuZGVmYXVsdCA6IHVybDtcblxuICBpZiAodHlwZW9mIHVybCAhPT0gXCJzdHJpbmdcIikge1xuICAgIHJldHVybiB1cmw7XG4gIH0gLy8gSWYgdXJsIGlzIGFscmVhZHkgd3JhcHBlZCBpbiBxdW90ZXMsIHJlbW92ZSB0aGVtXG5cblxuICBpZiAoL15bJ1wiXS4qWydcIl0kLy50ZXN0KHVybCkpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cbiAgICB1cmwgPSB1cmwuc2xpY2UoMSwgLTEpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMuaGFzaCkge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgIHVybCArPSBvcHRpb25zLmhhc2g7XG4gIH0gLy8gU2hvdWxkIHVybCBiZSB3cmFwcGVkP1xuICAvLyBTZWUgaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy12YWx1ZXMtMy8jdXJsc1xuXG5cbiAgaWYgKC9bXCInKCkgXFx0XFxuXS8udGVzdCh1cmwpIHx8IG9wdGlvbnMubmVlZFF1b3Rlcykge1xuICAgIHJldHVybiBcIlxcXCJcIi5jb25jYXQodXJsLnJlcGxhY2UoL1wiL2csICdcXFxcXCInKS5yZXBsYWNlKC9cXG4vZywgXCJcXFxcblwiKSwgXCJcXFwiXCIpO1xuICB9XG5cbiAgcmV0dXJuIHVybDtcbn07Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///247\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(16);\n/* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(18);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(46);\n/* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(28);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_string_fixed_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(190);\n/* harmony import */ var core_js_modules_es_string_fixed_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_fixed_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var _src_components_VBtn_VBtn_sass__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(460);\n/* harmony import */ var _src_components_VBtn_VBtn_sass__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_src_components_VBtn_VBtn_sass__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var _VSheet__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(138);\n/* harmony import */ var _VProgressCircular__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(270);\n/* harmony import */ var _mixins_groupable__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(131);\n/* harmony import */ var _mixins_toggleable__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(63);\n/* harmony import */ var _mixins_elevatable__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(200);\n/* harmony import */ var _mixins_positionable__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(79);\n/* harmony import */ var _mixins_routable__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(73);\n/* harmony import */ var _mixins_sizeable__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(195);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(5);\n/* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(11);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(0);\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_8__[/* default */ \"a\"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n// Styles\n // Extensions\n\n // Components\n\n // Mixins\n\n\n\n\n\n\n // Utilities\n\n\n\n\nvar baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_22__[/* default */ \"a\"])(_VSheet__WEBPACK_IMPORTED_MODULE_14__[/* default */ \"a\"], _mixins_routable__WEBPACK_IMPORTED_MODULE_20__[/* default */ \"a\"], _mixins_positionable__WEBPACK_IMPORTED_MODULE_19__[/* default */ \"a\"], _mixins_sizeable__WEBPACK_IMPORTED_MODULE_21__[/* default */ \"a\"], Object(_mixins_groupable__WEBPACK_IMPORTED_MODULE_16__[/* factory */ \"a\"])('btnToggle'), Object(_mixins_toggleable__WEBPACK_IMPORTED_MODULE_17__[/* factory */ \"b\"])('inputValue')\n/* @vue/component */);\n/* harmony default export */ __webpack_exports__[\"a\"] = (baseMixins.extend().extend({\n name: 'v-btn',\n props: {\n activeClass: {\n type: String,\n default: function _default() {\n if (!this.btnToggle) return '';\n return this.btnToggle.activeClass;\n }\n },\n block: Boolean,\n depressed: Boolean,\n fab: Boolean,\n icon: Boolean,\n loading: Boolean,\n outlined: Boolean,\n plain: Boolean,\n retainFocusOnClick: Boolean,\n rounded: Boolean,\n tag: {\n type: String,\n default: 'button'\n },\n text: Boolean,\n tile: Boolean,\n type: {\n type: String,\n default: 'button'\n },\n value: null\n },\n data: function data() {\n return {\n proxyClass: 'v-btn--active'\n };\n },\n computed: {\n classes: function classes() {\n return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({\n 'v-btn': true\n }, _mixins_routable__WEBPACK_IMPORTED_MODULE_20__[/* default */ \"a\"].options.computed.classes.call(this)), {}, {\n 'v-btn--absolute': this.absolute,\n 'v-btn--block': this.block,\n 'v-btn--bottom': this.bottom,\n 'v-btn--disabled': this.disabled,\n 'v-btn--is-elevated': this.isElevated,\n 'v-btn--fab': this.fab,\n 'v-btn--fixed': this.fixed,\n 'v-btn--has-bg': this.hasBg,\n 'v-btn--icon': this.icon,\n 'v-btn--left': this.left,\n 'v-btn--loading': this.loading,\n 'v-btn--outlined': this.outlined,\n 'v-btn--plain': this.plain,\n 'v-btn--right': this.right,\n 'v-btn--round': this.isRound,\n 'v-btn--rounded': this.rounded,\n 'v-btn--router': this.to,\n 'v-btn--text': this.text,\n 'v-btn--tile': this.tile,\n 'v-btn--top': this.top\n }, this.themeClasses), this.groupClasses), this.elevationClasses), this.sizeableClasses);\n },\n computedElevation: function computedElevation() {\n if (this.disabled) return undefined;\n return _mixins_elevatable__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"].options.computed.computedElevation.call(this);\n },\n computedRipple: function computedRipple() {\n var _a;\n var defaultRipple = this.icon || this.fab ? {\n circle: true\n } : true;\n if (this.disabled) return false;else return (_a = this.ripple) !== null && _a !== void 0 ? _a : defaultRipple;\n },\n hasBg: function hasBg() {\n return !this.text && !this.plain && !this.outlined && !this.icon;\n },\n isElevated: function isElevated() {\n return Boolean(!this.icon && !this.text && !this.outlined && !this.depressed && !this.disabled && !this.plain && (this.elevation == null || Number(this.elevation) > 0));\n },\n isRound: function isRound() {\n return Boolean(this.icon || this.fab);\n },\n styles: function styles() {\n return _objectSpread({}, this.measurableStyles);\n }\n },\n created: function created() {\n var _this = this;\n var breakingProps = [['flat', 'text'], ['outline', 'outlined'], ['round', 'rounded']];\n /* istanbul ignore next */\n\n breakingProps.forEach(function (_ref) {\n var _ref2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_7__[/* default */ \"a\"])(_ref, 2),\n original = _ref2[0],\n replacement = _ref2[1];\n if (_this.$attrs.hasOwnProperty(original)) Object(_util_console__WEBPACK_IMPORTED_MODULE_23__[/* breaking */ \"a\"])(original, replacement, _this);\n });\n },\n methods: {\n click: function click(e) {\n // TODO: Remove this in v3\n !this.retainFocusOnClick && !this.fab && e.detail && this.$el.blur();\n this.$emit('click', e);\n this.btnToggle && this.toggle();\n },\n genContent: function genContent() {\n return this.$createElement('span', {\n staticClass: 'v-btn__content'\n }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_24__[/* getSlot */ \"s\"])(this));\n },\n genLoader: function genLoader() {\n return this.$createElement('span', {\n class: 'v-btn__loader'\n }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_24__[/* getSlot */ \"s\"])(this, 'loader') || [this.$createElement(_VProgressCircular__WEBPACK_IMPORTED_MODULE_15__[/* default */ \"a\"], {\n props: {\n indeterminate: true,\n size: 23,\n width: 2\n }\n })]);\n }\n },\n render: function render(h) {\n var children = [this.genContent(), this.loading && this.genLoader()];\n var _this$generateRouteLi = this.generateRouteLink(),\n tag = _this$generateRouteLi.tag,\n data = _this$generateRouteLi.data;\n var setColor = this.hasBg ? this.setBackgroundColor : this.setTextColor;\n if (tag === 'button') {\n data.attrs.type = this.type;\n data.attrs.disabled = this.disabled;\n }\n data.attrs.value = ['string', 'number'].includes(Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(this.value)) ? this.value : JSON.stringify(this.value);\n return h(tag, this.disabled ? data : setColor(this.color, data), children);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkJ0bi9WQnRuLnRzPzBlZmYiXSwibmFtZXMiOlsiYmFzZU1peGlucyIsIm1peGlucyIsIlZTaGVldCIsIlJvdXRhYmxlIiwiUG9zaXRpb25hYmxlIiwiU2l6ZWFibGUiLCJHcm91cGFibGVGYWN0b3J5IiwiVG9nZ2xlYWJsZUZhY3RvcnkiLCJleHRlbmQiLCJuYW1lIiwicHJvcHMiLCJhY3RpdmVDbGFzcyIsInR5cGUiLCJTdHJpbmciLCJkZWZhdWx0IiwiX2RlZmF1bHQiLCJidG5Ub2dnbGUiLCJibG9jayIsIkJvb2xlYW4iLCJkZXByZXNzZWQiLCJmYWIiLCJpY29uIiwibG9hZGluZyIsIm91dGxpbmVkIiwicGxhaW4iLCJyZXRhaW5Gb2N1c09uQ2xpY2siLCJyb3VuZGVkIiwidGFnIiwidGV4dCIsInRpbGUiLCJ2YWx1ZSIsImRhdGEiLCJwcm94eUNsYXNzIiwiY29tcHV0ZWQiLCJjbGFzc2VzIiwiX29iamVjdFNwcmVhZCIsIm9wdGlvbnMiLCJjYWxsIiwiYWJzb2x1dGUiLCJib3R0b20iLCJkaXNhYmxlZCIsImlzRWxldmF0ZWQiLCJmaXhlZCIsImhhc0JnIiwibGVmdCIsInJpZ2h0IiwiaXNSb3VuZCIsInRvIiwidG9wIiwidGhlbWVDbGFzc2VzIiwiZ3JvdXBDbGFzc2VzIiwiZWxldmF0aW9uQ2xhc3NlcyIsInNpemVhYmxlQ2xhc3NlcyIsImNvbXB1dGVkRWxldmF0aW9uIiwidW5kZWZpbmVkIiwiRWxldmF0YWJsZSIsImNvbXB1dGVkUmlwcGxlIiwiZGVmYXVsdFJpcHBsZSIsImNpcmNsZSIsIl9hIiwicmlwcGxlIiwiZWxldmF0aW9uIiwiTnVtYmVyIiwic3R5bGVzIiwibWVhc3VyYWJsZVN0eWxlcyIsImNyZWF0ZWQiLCJfdGhpcyIsImJyZWFraW5nUHJvcHMiLCJmb3JFYWNoIiwiX3JlZiIsIl9yZWYyIiwiX3NsaWNlZFRvQXJyYXkiLCJvcmlnaW5hbCIsInJlcGxhY2VtZW50IiwiJGF0dHJzIiwiaGFzT3duUHJvcGVydHkiLCJicmVha2luZyIsIm1ldGhvZHMiLCJjbGljayIsImUiLCJkZXRhaWwiLCIkZWwiLCJibHVyIiwiJGVtaXQiLCJ0b2dnbGUiLCJnZW5Db250ZW50IiwiJGNyZWF0ZUVsZW1lbnQiLCJzdGF0aWNDbGFzcyIsImdldFNsb3QiLCJnZW5Mb2FkZXIiLCJjbGFzcyIsIlZQcm9ncmVzc0NpcmN1bGFyIiwiaW5kZXRlcm1pbmF0ZSIsInNpemUiLCJ3aWR0aCIsInJlbmRlciIsImgiLCJjaGlsZHJlbiIsIl90aGlzJGdlbmVyYXRlUm91dGVMaSIsImdlbmVyYXRlUm91dGVMaW5rIiwic2V0Q29sb3IiLCJzZXRCYWNrZ3JvdW5kQ29sb3IiLCJzZXRUZXh0Q29sb3IiLCJhdHRycyIsImluY2x1ZGVzIiwiX3R5cGVvZiIsIkpTT04iLCJzdHJpbmdpZnkiLCJjb2xvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Q0FHQTs7Q0FHQTs7Q0FHQTs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0NBR0E7O0FBQ0E7QUFDQTtBQUNBO0FBT0EsSUFBTUEsVUFBVSxHQUFHQyxxRUFBTSxDQUN2QkMsd0RBRHVCLEVBRXZCQyxpRUFGdUIsRUFHdkJDLHFFQUh1QixFQUl2QkMsaUVBSnVCLEVBS3ZCQywwRUFBZ0IsQ0FBQyxXQUFELENBTE8sRUFNdkJDLDJFQUFpQixDQUFDLFlBQUQ7QUFDakIsb0JBUHVCLENBQXpCO0FBYWVQLG1FQUFVLENBQUNRLE1BQVgsR0FBNkJBLE1BQTdCLENBQW9DO0VBQ2pEQyxJQUFJLEVBQUUsT0FEMkM7RUFHakRDLEtBQUssRUFBRTtJQUNMQyxXQUFXLEVBQUU7TUFDWEMsSUFBSSxFQUFFQyxNQURLO01BRVhDLE9BQU8sV0FBQUMsU0FBQTtRQUNMLElBQUksQ0FBQyxLQUFLQyxTQUFWLEVBQXFCLE9BQU8sRUFBUDtRQUVyQixPQUFPLEtBQUtBLFNBQUwsQ0FBZUwsV0FB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QUFBO0lBQ2IsSUFBTXFFLFFBQVEsR0FBRyxLQUFLekQsS0FBTCxHQUNiLEtBQUswRCxrQkFEUSxHQUViLEtBQUtDLFlBRlQ7SUFJQSxJQUFJM0UsR0FBRyxLQUFLLFFBQVosRUFBc0I7TUFDcEJJLElBQUksQ0FBQ3dFLEtBQUwsQ0FBWTNGLElBQVosR0FBbUIsS0FBS0EsSUFBeEI7TUFDQW1CLElBQUksQ0FBQ3dFLEtBQUwsQ0FBWS9ELFFBQVosR0FBdUIsS0FBS0EsUUFBNUI7SUFDRDtJQUNEVCxJQUFJLENBQUN3RSxLQUFMLENBQVl6RSxLQUFaLEdBQW9CLENBQUMsUUFBRCxFQUFXLFFBQVgsRUFBcUIwRSxRQUFyQixDQUFBQyx5RkFBQSxDQUFxQyxLQUFLM0UsS0FBMUMsS0FDaEIsS0FBS0EsS0FEVyxHQUVoQjRFLElBQUksQ0FBQ0MsU0FBTCxDQUFlLEtBQUs3RSxLQUFwQixDQUZKO0lBSUEsT0FBT2tFLENBQUMsQ0FBQ3JFLEdBQUQsRUFBTSxLQUFLYSxRQUFMLEdBQWdCVCxJQUFoQixHQUF1QnFFLFFBQVEsQ0FBQyxLQUFLUSxLQUFOLEVBQWE3RSxJQUFiLENBQXJDLEVBQXlEa0UsUUFBekQsQ0FBUjtFQUNEO0FBcEtnRCxDQUFwQyxDQUFmIiwiZmlsZSI6IjI0OC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFN0eWxlc1xuaW1wb3J0ICcuL1ZCdG4uc2FzcydcblxuLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IFZTaGVldCBmcm9tICcuLi9WU2hlZXQnXG5cbi8vIENvbXBvbmVudHNcbmltcG9ydCBWUHJvZ3Jlc3NDaXJjdWxhciBmcm9tICcuLi9WUHJvZ3Jlc3NDaXJjdWxhcidcblxuLy8gTWl4aW5zXG5pbXBvcnQgeyBmYWN0b3J5IGFzIEdyb3VwYWJsZUZhY3RvcnkgfSBmcm9tICcuLi8uLi9taXhpbnMvZ3JvdXBhYmxlJ1xuaW1wb3J0IHsgZmFjdG9yeSBhcyBUb2dnbGVhYmxlRmFjdG9yeSB9IGZyb20gJy4uLy4uL21peGlucy90b2dnbGVhYmxlJ1xuaW1wb3J0IEVsZXZhdGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL2VsZXZhdGFibGUnXG5pbXBvcnQgUG9zaXRpb25hYmxlIGZyb20gJy4uLy4uL21peGlucy9wb3NpdGlvbmFibGUnXG5pbXBvcnQgUm91dGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL3JvdXRhYmxlJ1xuaW1wb3J0IFNpemVhYmxlIGZyb20gJy4uLy4uL21peGlucy9zaXplYWJsZSdcblxuLy8gVXRpbGl0aWVzXG5pbXBvcnQgbWl4aW5zLCB7IEV4dHJhY3RWdWUgfSBmcm9tICcuLi8uLi91dGlsL21peGlucydcbmltcG9ydCB7IGJyZWFraW5nIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuaW1wb3J0IHsgZ2V0U2xvdCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcblxuLy8gVHlwZXNcbmltcG9ydCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuaW1wb3J0IHsgUHJvcFZhbGlkYXRvciwgUHJvcFR5cGUgfSBmcm9tICd2dWUvdHlwZXMvb3B0aW9ucydcbmltcG9ydCB7IFJpcHBsZU9wdGlvbnMgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3JpcHBsZSdcblxuY29uc3QgYmFzZU1peGlucyA9IG1peGlucyhcbiAgVlNoZWV0LFxuICBSb3V0YWJsZSxcbiAgUG9zaXRpb25hYmxlLFxuICBTaXplYWJsZSxcbiAgR3JvdXBhYmxlRmFjdG9yeSgnYnRuVG9nZ2xlJyksXG4gIFRvZ2dsZWFibGVGYWN0b3J5KCdpbnB1dFZhbHVlJylcbiAgLyogQHZ1ZS9jb21wb25lbnQgKi9cbilcbmludGVyZmFjZSBvcHRpb25zIGV4dGVuZHMgRXh0cmFjdFZ1ZTx0eXBlb2YgYmFzZU1peGlucz4ge1xuICAkZWw6IEhUTUxFbGVtZW50XG59XG5cbmV4cG9ydCBkZWZhdWx0IGJhc2VNaXhpbnMuZXh0ZW5kPG9wdGlvbnM+KCkuZXh0ZW5kKHtcbiAgbmFtZTogJ3YtYnRuJyxcblxuICBwcm9wczoge1xuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0ICgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoIXRoaXMuYnRuVG9nZ2xlKSByZXR1cm4gJydcblxuICAgICAgICByZXR1cm4gdGhpcy5idG5Ub2dnbGUuYWN0aXZlQ2xhc3NcbiAgICAgIH0sXG4gICAgfSBhcyBhbnkgYXMgUHJvcFZhbGlkYXRvcjxzdHJpbmc+LFxuICAgIGJsb2NrOiBCb29sZWFuLFxuICAgIGRlcHJlc3NlZDogQm9vbGVhbixcbiAgICBmYWI6IEJvb2xlYW4sXG4gICAgaWNvbjogQm9vbGVhbixcbiAgICBsb2FkaW5nOiBCb29sZWFuLFxuICAgIG91dGxpbmVkOiBCb29sZWFuLFxuICAgIHBsYWluOiBCb29sZWFuLFxuICAgIHJldGFpbkZvY3VzT25DbGljazogQm9vbGVhbixcbiAgICByb3VuZGVkOiBCb29sZWFuLFxuICAgIHRhZzoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2J1dHRvbicsXG4gICAgfSxcbiAgICB0ZXh0OiBCb29sZWFuLFxuICAgIHRpbGU6IEJvb2xlYW4sXG4gICAgdHlwZToge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2J1dHRvbicsXG4gICAgfSxcbiAgICB2YWx1ZTogbnVsbCBhcyBhbnkgYXMgUHJvcFR5cGU8YW55PixcbiAgfSxcblxuICBkYXRhOiAoKSA9PiAoe1xuICAgIHByb3h5Q2xhc3M6ICd2LWJ0bi0tYWN0aXZlJyxcbiAgfSksXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzICgpOiBhbnkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgJ3YtYnRuJzogdHJ1ZSxcbiAgICAgICAgLi4uUm91dGFibGUub3B0aW9ucy5jb21wdXRlZC5jbGFzc2VzLmNhbGwodGhpcyksXG4gICAgICAgICd2LWJ0bi0tYWJzb2x1dGUnOiB0aGlzLmFic29sdXRlLFxuICAgICAgICAndi1idG4tLWJsb2NrJzogdGhpcy5ibG9jayxcbiAgICAgICAgJ3YtYnRuLS1ib3R0b20nOiB0aGlzLmJvdHRvbSxcbiAgICAgICAgJ3YtYnRuLS1kaXNhYmxlZCc6IHRoaXMuZGlzYWJsZWQsXG4gICAgICAgICd2LWJ0bi0taXMtZWxldmF0ZWQnOiB0aGlzLmlzRWxldmF0ZWQsXG4gICAgICAgICd2LWJ0bi0tZmFiJzogdGhpcy5mYWIsXG4gICAgICAgICd2LWJ0bi0tZml4ZWQnOiB0aGlzLmZpeGVkLFxuICAgICAgICAndi1idG4tLWhhcy1iZyc6IHRoaXMuaGFzQmcsXG4gICAgICAgICd2LWJ0bi0taWNvbic6IHRoaXMuaWNvbixcbiAgICAgICAgJ3YtYnRuLS1sZWZ0JzogdGhpcy5sZWZ0LFxuICAgICAgICAndi1idG4tLWxvYWRpbmcnOiB0aGlzLmxvYWRpbmcsXG4gICAgICAgICd2LWJ0bi0tb3V0bGluZWQnOiB0aGlzLm91dGxpbmVkLFxuICAgICAgICAndi1idG4tLXBsYWluJzogdGhpcy5wbGFpbixcbiAgICAgICAgJ3YtYnRuLS1yaWdodCc6IHRoaXMucmlnaHQsXG4gICAgICAgICd2LWJ0bi0tcm91bmQnOiB0aGlzLmlzUm91bmQsXG4gICAgICAgICd2LWJ0bi0tcm91bmRlZCc6IHRoaXMucm91bmRlZCxcbiAgICAgICAgJ3YtYnRuLS1yb3V0ZXInOiB0aGlzLnRvLFxuICAgICAgICAndi1idG4tLXRleHQnOiB0aGlzLnRleHQsXG4gICAgICAgICd2LWJ0bi0tdGlsZSc6IHRoaXMudGlsZSxcbiAgICAgICAgJ3YtYnRuLS10b3AnOiB0aGlzLnRvcCxcbiAgICAgICAgLi4udGhpcy50aGVtZUNsYXNzZXMsXG4gICAgICAgIC4uLnRoaXMuZ3JvdXBDbGFzc2VzLFxuICAgICAgICAuLi50aGlzLmVsZXZhdGlvbkNsYXNzZXMsXG4gICAgICAgIC4uLnRoaXMuc2l6ZWFibGVDbGFzc2VzLFxuICAgICAgfVxuICAgIH0sXG4gICAgY29tcHV0ZWRFbGV2YXRpb24gKCk6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuIHVuZGVmaW5lZFxuXG4gICAgICByZXR1cm4gRWxldmF0YWJsZS5vcHRpb25zLmNvbXB1dGVkLmNvbXB1dGVkRWxldmF0aW9uLmNhbGwodGhpcylcbiAgICB9LFxuICAgIGNvbXB1dGVkUmlwcGxlICgpOiBSaXBwbGVPcHRpb25zIHwgYm9vbGVhbiB7XG4gICAgICBjb25zdCBkZWZhdWx0UmlwcGxlID0gdGhpcy5pY29uIHx8IHRoaXMuZmFiID8geyBjaXJjbGU6IHRydWUgfSA6IHRydWVcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm4gZmFsc2VcbiAgICAgIGVsc2UgcmV0dXJuIHRoaXMucmlwcGxlID8/IGRlZmF1bHRSaXBwbGVcbiAgICB9LFxuICAgIGhhc0JnICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiAhdGhpcy50ZXh0ICYmICF0aGlzLnBsYWluICYmICF0aGlzLm91dGxpbmVkICYmICF0aGlzLmljb25cbiAgICB9LFxuICAgIGlzRWxldmF0ZWQgKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIEJvb2xlYW4oXG4gICAgICAgICF0aGlzLmljb24gJiZcbiAgICAgICAgIXRoaXMudGV4dCAmJlxuICAgICAgICAhdGhpcy5vdXRsaW5lZCAmJlxuICAgICAgICAhdGhpcy5kZXByZXNzZWQgJiZcbiAgICAgICAgIXRoaXMuZGlzYWJsZWQgJiZcbiAgICAgICAgIXRoaXMucGxhaW4gJiZcbiAgICAgICAgKHRoaXMuZWxldmF0aW9uID09IG51bGwgfHwgTnVtYmVyKHRoaXMuZWxldmF0aW9uKSA+IDApXG4gICAgICApXG4gICAgfSxcbiAgICBpc1JvdW5kICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBCb29sZWFuKFxuICAgICAgICB0aGlzLmljb24gfHxcbiAgICAgICAgdGhpcy5mYWJcbiAgICAgIClcbiAgICB9LFxuICAgIHN0eWxlcyAoKTogb2JqZWN0IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLnRoaXMubWVhc3VyYWJsZVN0eWxlcyxcbiAgICAgIH1cbiAgICB9LFxuICB9LFxuXG4gIGNyZWF0ZWQgKCkge1xuICAgIGNvbnN0IGJyZWFraW5nUHJvcHMgPSBbXG4gICAgICBbJ2ZsYXQnLCAndGV4dCddLFxuICAgICAgWydvdXRsaW5lJywgJ291dGxpbmVkJ10sXG4gICAgICBbJ3JvdW5kJywgJ3JvdW5kZWQnXSxcbiAgICBdXG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGJyZWFraW5nUHJvcHMuZm9yRWFjaCgoW29yaWdpbmFsLCByZXBsYWNlbWVudF0pID0+IHtcbiAgICAgIGlmICh0aGlzLiRhdHRycy5oYXNPd25Qcm9wZXJ0eShvcmlnaW5hbCkpIGJyZWFraW5nKG9yaWdpbmFsLCByZXBsYWNlbWVudCwgdGhpcylcbiAgICB9KVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBjbGljayAoZTogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgLy8gVE9ETzogUmVtb3ZlIHRoaXMgaW4gdjNcbiAgICAgICF0aGlzLnJldGFpbkZvY3VzT25DbGljayAmJiAhdGhpcy5mYWIgJiYgZS5kZXRhaWwgJiYgdGhpcy4kZWwuYmx1cigpXG4gICAgICB0aGlzLiRlbWl0KCdjbGljaycsIGUpXG5cbiAgICAgIHRoaXMuYnRuVG9nZ2xlICYmIHRoaXMudG9nZ2xlKClcbiAgICB9LFxuICAgIGdlbkNvbnRlbnQgKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdzcGFuJywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtYnRuX19jb250ZW50JyxcbiAgICAgIH0sIGdldFNsb3QodGhpcykpXG4gICAgfSxcbiAgICBnZW5Mb2FkZXIgKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdzcGFuJywge1xuICAgICAgICBjbGFzczogJ3YtYnRuX19sb2FkZXInLFxuICAgICAgfSwgZ2V0U2xvdCh0aGlzLCAnbG9hZGVyJykgfHwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoVlByb2dyZXNzQ2lyY3VsYXIsIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBpbmRldGVybWluYXRlOiB0cnVlLFxuICAgICAgICAgIHNpemU6IDIzLFxuICAgICAgICAgIHdpZHRoOiAyLFxuICAgICAgICB9LFxuICAgICAgfSldKVxuICAgIH0sXG4gIH0sXG5cbiAgcmVuZGVyIChoKTogVk5vZGUge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gW1xuICAgICAgdGhpcy5nZW5Db250ZW50KCksXG4gICAgICB0aGlzLmxvYWRpbmcgJiYgdGhpcy5nZW5Mb2FkZXIoKSxcbiAgICBdXG4gICAgY29uc3QgeyB0YWcsIGRhdGEgfSA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKVxuICAgIGNvbnN0IHNldENvbG9yID0gdGhpcy5oYXNCZ1xuICAgICAgPyB0aGlzLnNldEJhY2tncm91bmRDb2xvclxuICAgICAgOiB0aGlzLnNldFRleHRDb2xvclxuXG4gICAgaWYgKHRhZyA9PT0gJ2J1dHRvbicpIHtcbiAgICAgIGRhdGEuYXR0cnMhLnR5cGUgPSB0aGlzLnR5cGVcbiAgICAgIGRhdGEuYXR0cnMhLmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZFxuICAgIH1cbiAgICBkYXRhLmF0dHJzIS52YWx1ZSA9IFsnc3RyaW5nJywgJ251bWJlciddLmluY2x1ZGVzKHR5cGVvZiB0aGlzLnZhbHVlKVxuICAgICAgPyB0aGlzLnZhbHVlXG4gICAgICA6IEpTT04uc3RyaW5naWZ5KHRoaXMudmFsdWUpXG5cbiAgICByZXR1cm4gaCh0YWcsIHRoaXMuZGlzYWJsZWQgPyBkYXRhIDogc2V0Q29sb3IodGhpcy5jb2xvciwgZGF0YSksIGNoaWxkcmVuKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///248\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(28);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _src_components_VProgressCircular_VProgressCircular_sass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(465);\n/* harmony import */ var _src_components_VProgressCircular_VProgressCircular_sass__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_src_components_VProgressCircular_VProgressCircular_sass__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _directives_intersect__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(132);\n/* harmony import */ var _mixins_colorable__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(32);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(0);\n\n\n// Styles\n // Directives\n\n // Mixins\n\n // Utils\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (_mixins_colorable__WEBPACK_IMPORTED_MODULE_4__[/* default */ \"a\"].extend({\n name: 'v-progress-circular',\n directives: {\n intersect: _directives_intersect__WEBPACK_IMPORTED_MODULE_3__[/* default */ \"a\"]\n },\n props: {\n button: Boolean,\n indeterminate: Boolean,\n rotate: {\n type: [Number, String],\n default: 0\n },\n size: {\n type: [Number, String],\n default: 32\n },\n width: {\n type: [Number, String],\n default: 4\n },\n value: {\n type: [Number, String],\n default: 0\n }\n },\n data: function data() {\n return {\n radius: 20,\n isVisible: true\n };\n },\n computed: {\n calculatedSize: function calculatedSize() {\n return Number(this.size) + (this.button ? 8 : 0);\n },\n circumference: function circumference() {\n return 2 * Math.PI * this.radius;\n },\n classes: function classes() {\n return {\n 'v-progress-circular--visible': this.isVisible,\n 'v-progress-circular--indeterminate': this.indeterminate,\n 'v-progress-circular--button': this.button\n };\n },\n normalizedValue: function normalizedValue() {\n if (this.value < 0) {\n return 0;\n }\n if (this.value > 100) {\n return 100;\n }\n return parseFloat(this.value);\n },\n strokeDashArray: function strokeDashArray() {\n return Math.round(this.circumference * 1000) / 1000;\n },\n strokeDashOffset: function strokeDashOffset() {\n return (100 - this.normalizedValue) / 100 * this.circumference + 'px';\n },\n strokeWidth: function strokeWidth() {\n return Number(this.width) / +this.size * this.viewBoxSize * 2;\n },\n styles: function styles() {\n return {\n height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_5__[/* convertToUnit */ \"h\"])(this.calculatedSize),\n width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_5__[/* convertToUnit */ \"h\"])(this.calculatedSize)\n };\n },\n svgStyles: function svgStyles() {\n return {\n transform: \"rotate(\".concat(Number(this.rotate), \"deg)\")\n };\n },\n viewBoxSize: function viewBoxSize() {\n return this.radius / (1 - Number(this.width) / +this.size);\n }\n },\n methods: {\n genCircle: function genCircle(name, offset) {\n return this.$createElement('circle', {\n class: \"v-progress-circular__\".concat(name),\n attrs: {\n fill: 'transparent',\n cx: 2 * this.viewBoxSize,\n cy: 2 * this.viewBoxSize,\n r: this.radius,\n 'stroke-width': this.strokeWidth,\n 'stroke-dasharray': this.strokeDashArray,\n 'stroke-dashoffset': offset\n }\n });\n },\n genSvg: function genSvg() {\n var children = [this.indeterminate || this.genCircle('underlay', 0), this.genCircle('overlay', this.strokeDashOffset)];\n return this.$createElement('svg', {\n style: this.svgStyles,\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: \"\".concat(this.viewBoxSize, \" \").concat(this.viewBoxSize, \" \").concat(2 * this.viewBoxSize, \" \").concat(2 * this.viewBoxSize)\n }\n }, children);\n },\n genInfo: function genInfo() {\n return this.$createElement('div', {\n staticClass: 'v-progress-circular__info'\n }, Object(_util_helpers__WEBPACK_IMPORTED_MODULE_5__[/* getSlot */ \"s\"])(this));\n },\n onObserve: function onObserve(entries, observer, isIntersecting) {\n this.isVisible = isIntersecting;\n }\n },\n render: function render(h) {\n return h('div', this.setTextColor(this.color, {\n staticClass: 'v-progress-circular',\n attrs: {\n role: 'progressbar',\n 'aria-valuemin': 0,\n 'aria-valuemax': 100,\n 'aria-valuenow': this.indeterminate ? undefined : this.normalizedValue\n },\n class: this.classes,\n directives: [{\n name: 'intersect',\n value: this.onObserve\n }],\n style: this.styles,\n on: this.$listeners\n }), [this.genSvg(), this.genInfo()]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVlByb2dyZXNzQ2lyY3VsYXIvVlByb2dyZXNzQ2lyY3VsYXIudHM/MDQzNSJdLCJuYW1lcyI6WyJDb2xvcmFibGUiLCJleHRlbmQiLCJuYW1lIiwiZGlyZWN0aXZlcyIsImludGVyc2VjdCIsInByb3BzIiwiYnV0dG9uIiwiQm9vbGVhbiIsImluZGV0ZXJtaW5hdGUiLCJyb3RhdGUiLCJ0eXBlIiwiTnVtYmVyIiwiU3RyaW5nIiwiZGVmYXVsdCIsInNpemUiLCJ3aWR0aCIsInZhbHVlIiwiZGF0YSIsInJhZGl1cyIsImlzVmlzaWJsZSIsImNvbXB1dGVkIiwiY2FsY3VsYXRlZFNpemUiLCJjaXJjdW1mZXJlbmNlIiwiTWF0aCIsIlBJIiwiY2xhc3NlcyIsIm5vcm1hbGl6ZWRWYWx1ZSIsInBhcnNlRmxvYXQiLCJzdHJva2VEYXNoQXJyYXkiLCJyb3VuZCIsInN0cm9rZURhc2hPZmZzZXQiLCJzdHJva2VXaWR0aCIsInZpZXdCb3hTaXplIiwic3R5bGVzIiwiaGVpZ2h0IiwiY29udmVydFRvVW5pdCIsInN2Z1N0eWxlcyIsInRyYW5zZm9ybSIsImNvbmNhdCIsIm1ldGhvZHMiLCJnZW5DaXJjbGUiLCJvZmZzZXQiLCIkY3JlYXRlRWxlbWVudCIsImNsYXNzIiwiYXR0cnMiLCJmaWxsIiwiY3giLCJjeSIsInIiLCJnZW5TdmciLCJjaGlsZHJlbiIsInN0eWxlIiwieG1sbnMiLCJ2aWV3Qm94IiwiZ2VuSW5mbyIsInN0YXRpY0NsYXNzIiwiZ2V0U2xvdCIsIm9uT2JzZXJ2ZSIsImVudHJpZXMiLCJvYnNlcnZlciIsImlzSW50ZXJzZWN0aW5nIiwicmVuZGVyIiwiaCIsInNldFRleHRDb2xvciIsImNvbG9yIiwicm9sZSIsInVuZGVmaW5lZCIsIm9uIiwiJGxpc3RlbmVycyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtDQUdBOztDQUdBOztDQUdBOztBQUNBO0FBS0E7O0FBQ2VBLDBIQUFT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LENBQW9CLEtBQXBCLEVBQTJCO1FBQ2hDYSxXQUFXLEVBQUU7TUFEbUIsQ0FBM0IsRUFFSkMscUVBQU8sQ0FBQyxJQUFELENBRkgsQ0FBUDtJQUdELENBakNNO0lBa0NQQyxTQUFTLFdBQUFBLFVBQUVDLE9BQUYsRUFBd0NDLFFBQXhDLEVBQXdFQyxjQUF4RSxFQUErRjtNQUN0RyxLQUFLekMsU0FBTCxHQUFpQnlDLGNBQWpCO0lBQ0Q7RUFwQ00sQ0ExRnFCO0VBaUk5QkMsTUFBTSxXQUFBQSxPQUFFQyxDQUFGLEVBQUc7SUFDUCxPQUFPQSxDQUFDLENBQUMsS0FBRCxFQUFRLEtBQUtDLFlBQUwsQ0FBa0IsS0FBS0MsS0FBdkIsRUFBOEI7TUFDNUNULFdBQVcsRUFBRSxxQkFEK0I7TUFFNUNYLEtBQUssRUFBRTtRQUNMcUIsSUFBSSxFQUFFLGFBREQ7UUFFTCxpQkFBaUIsQ0FGWjtRQUdMLGlCQUFpQixHQUhaO1FBSUwsaUJBQWlCLEtBQUt6RCxhQUFMLEdBQXFCMEQsU0FBckIsR0FBaUMsS0FBS3hDO01BSmxELENBRnFDO01BUTVDaUIsS0FBSyxFQUFFLEtBQUtsQixPQVJnQztNQVM1Q3RCLFVBQVUsRUFBRSxDQUFDO1FBQ1hELElBQUksRUFBRSxXQURLO1FBRVhjLEtBQUssRUFBRSxLQUFLeUM7TUFGRCxDQUFELENBVGdDO01BYTVDTixLQUFLLEVBQUUsS0FBS2xCLE1BYmdDO01BYzVDa0MsRUFBRSxFQUFFLEtBQUtDO0lBZG1DLENBQTlCLENBQVIsRUFlSixDQUNGLEtBQUtuQixNQUFMLEVBREUsRUFFRixLQUFLSyxPQUFMLEVBRkUsQ0FmSSxDQUFSO0VBbUJEO0FBcko2QixDQUFqQixDQUFmIiwiZmlsZSI6IjI0OS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFN0eWxlc1xuaW1wb3J0ICcuL1ZQcm9ncmVzc0NpcmN1bGFyLnNhc3MnXG5cbi8vIERpcmVjdGl2ZXNcbmltcG9ydCBpbnRlcnNlY3QgZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9pbnRlcnNlY3QnXG5cbi8vIE1peGluc1xuaW1wb3J0IENvbG9yYWJsZSBmcm9tICcuLi8uLi9taXhpbnMvY29sb3JhYmxlJ1xuXG4vLyBVdGlsc1xuaW1wb3J0IHsgY29udmVydFRvVW5pdCwgZ2V0U2xvdCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcblxuLy8gVHlwZXNcbmltcG9ydCB7IFZOb2RlLCBWTm9kZUNoaWxkcmVuIH0gZnJvbSAndnVlJ1xuXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgQ29sb3JhYmxlLmV4dGVuZCh7XG4gIG5hbWU6ICd2LXByb2dyZXNzLWNpcmN1bGFyJyxcblxuICBkaXJlY3RpdmVzOiB7IGludGVyc2VjdCB9LFxuXG4gIHByb3BzOiB7XG4gICAgYnV0dG9uOiBCb29sZWFuLFxuICAgIGluZGV0ZXJtaW5hdGU6IEJvb2xlYW4sXG4gICAgcm90YXRlOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMCxcbiAgICB9LFxuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAzMixcbiAgICB9LFxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNCxcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMCxcbiAgICB9LFxuICB9LFxuXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgcmFkaXVzOiAyMCxcbiAgICBpc1Zpc2libGU6IHRydWUsXG4gIH0pLFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2FsY3VsYXRlZFNpemUgKCk6IG51bWJlciB7XG4gICAgICByZXR1cm4gTnVtYmVyKHRoaXMuc2l6ZSkgKyAodGhpcy5idXR0b24gPyA4IDogMClcbiAgICB9LFxuXG4gICAgY2lyY3VtZmVyZW5jZSAoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiAyICogTWF0aC5QSSAqIHRoaXMucmFkaXVzXG4gICAgfSxcblxuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndi1wcm9ncmVzcy1jaXJjdWxhci0tdmlzaWJsZSc6IHRoaXMuaXNWaXNpYmxlLFxuICAgICAgICAndi1wcm9ncmVzcy1jaXJjdWxhci0taW5kZXRlcm1pbmF0ZSc6IHRoaXMuaW5kZXRlcm1pbmF0ZSxcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtY2lyY3VsYXItLWJ1dHRvbic6IHRoaXMuYnV0dG9uLFxuICAgICAgfVxuICAgIH0sXG5cbiAgICBub3JtYWxpemVkVmFsdWUgKCk6IG51bWJlciB7XG4gICAgICBpZiAodGhpcy52YWx1ZSA8IDApIHtcbiAgICAgICAgcmV0dXJuIDBcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMudmFsdWUgPiAxMDApIHtcbiAgICAgICAgcmV0dXJuIDEwMFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdCh0aGlzLnZhbHVlKVxuICAgIH0sXG5cbiAgICBzdHJva2VEYXNoQXJyYXkgKCk6IG51bWJlciB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh0aGlzLmNpcmN1bWZlcmVuY2UgKiAxMDAwKSAvIDEwMDBcbiAgICB9LFxuXG4gICAgc3Ryb2tlRGFzaE9mZnNldCAoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiAoKDEwMCAtIHRoaXMubm9ybWFsaXplZFZhbHVlKSAvIDEwMCkgKiB0aGlzLmNpcmN1bWZlcmVuY2UgKyAncHgnXG4gICAgfSxcblxuICAgIHN0cm9rZVdpZHRoICgpOiBudW1iZXIge1xuICAgICAgcmV0dXJuIE51bWJlcih0aGlzLndpZHRoKSAvICt0aGlzLnNpemUgKiB0aGlzLnZpZXdCb3hTaXplICogMlxuICAgIH0sXG5cbiAgICBzdHlsZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IGNvbnZlcnRUb1VuaXQodGhpcy5jYWxjdWxhdGVkU2l6ZSksXG4gICAgICAgIHdpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMuY2FsY3VsYXRlZFNpemUpLFxuICAgICAgfVxuICAgIH0sXG5cbiAgICBzdmdTdHlsZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtOdW1iZXIodGhpcy5yb3RhdGUpfWRlZylgLFxuICAgICAgfVxuICAgIH0sXG5cbiAgICB2aWV3Qm94U2l6ZSAoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiB0aGlzLnJhZGl1cyAvICgxIC0gTnVtYmVyKHRoaXMud2lkdGgpIC8gK3RoaXMuc2l6ZSlcbiAgICB9LFxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5DaXJjbGUgKG5hbWU6IHN0cmluZywgb2Zmc2V0OiBzdHJpbmcgfCBudW1iZXIpOiBWTm9kZSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnY2lyY2xlJywge1xuICAgICAgICBjbGFzczogYHYtcHJvZ3Jlc3MtY2lyY3VsYXJfXyR7bmFtZX1gLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXG4gICAgICAgICAgY3g6IDIgKiB0aGlzLnZpZXdCb3hTaXplLFxuICAgICAgICAgIGN5OiAyICogdGhpcy52aWV3Qm94U2l6ZSxcbiAgICAgICAgICByOiB0aGlzLnJhZGl1cyxcbiAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogdGhpcy5zdHJva2VXaWR0aCxcbiAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6IHRoaXMuc3Ryb2tlRGFzaEFycmF5LFxuICAgICAgICAgICdzdHJva2UtZGFzaG9mZnNldCc6IG9mZnNldCxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSxcbiAgICBnZW5TdmcgKCk6IFZOb2RlIHtcbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gW1xuICAgICAgICB0aGlzLmluZGV0ZXJtaW5hdGUgfHwgdGhpcy5nZW5DaXJjbGUoJ3VuZGVybGF5JywgMCksXG4gICAgICAgIHRoaXMuZ2VuQ2lyY2xlKCdvdmVybGF5JywgdGhpcy5zdHJva2VEYXNoT2Zmc2V0KSxcbiAgICAgIF0gYXMgVk5vZGVDaGlsZHJlblxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnc3ZnJywge1xuICAgICAgICBzdHlsZTogdGhpcy5zdmdTdHlsZXMsXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgeG1sbnM6ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycsXG4gICAgICAgICAgdmlld0JveDogYCR7dGhpcy52aWV3Qm94U2l6ZX0gJHt0aGlzLnZpZXdCb3hTaXplfSAkezIgKiB0aGlzLnZpZXdCb3hTaXplfSAkezIgKiB0aGlzLnZpZXdCb3hTaXplfWAsXG4gICAgICAgIH0sXG4gICAgICB9LCBjaGlsZHJlbilcbiAgICB9LFxuICAgIGdlbkluZm8gKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1jaXJjdWxhcl9faW5mbycsXG4gICAgICB9LCBnZXRTbG90KHRoaXMpKVxuICAgIH0sXG4gICAgb25PYnNlcnZlIChlbnRyaWVzOiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5W10sIG9ic2VydmVyOiBJbnRlcnNlY3Rpb25PYnNlcnZlciwgaXNJbnRlcnNlY3Rpbmc6IGJvb2xlYW4pIHtcbiAgICAgIHRoaXMuaXNWaXNpYmxlID0gaXNJbnRlcnNlY3RpbmdcbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICByZXR1cm4gaCgnZGl2JywgdGhpcy5zZXRUZXh0Q29sb3IodGhpcy5jb2xvciwge1xuICAgICAgc3RhdGljQ2xhc3M6ICd2LXByb2dyZXNzLWNpcmN1bGFyJyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHJvbGU6ICdwcm9ncmVzc2JhcicsXG4gICAgICAgICdhcmlhLXZhbHVlbWluJzogMCxcbiAgICAgICAgJ2FyaWEtdmFsdWVtYXgnOiAxMDAsXG4gICAgICAgICdhcmlhLXZhbHVlbm93JzogdGhpcy5pbmRldGVybWluYXRlID8gdW5kZWZpbmVkIDogdGhpcy5ub3JtYWxpemVkVmFsdWUsXG4gICAgICB9LFxuICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdpbnRlcnNlY3QnLFxuICAgICAgICB2YWx1ZTogdGhpcy5vbk9ic2VydmUsXG4gICAgICB9XSxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnMsXG4gICAgfSksIFtcbiAgICAgIHRoaXMuZ2VuU3ZnKCksXG4gICAgICB0aGlzLmdlbkluZm8oKSxcbiAgICBdKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///249\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(28);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var _src_components_VAvatar_VAvatar_sass__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(467);\n/* harmony import */ var _src_components_VAvatar_VAvatar_sass__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_src_components_VAvatar_VAvatar_sass__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var _mixins_colorable__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(32);\n/* harmony import */ var _mixins_measurable__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(135);\n/* harmony import */ var _mixins_roundable__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(136);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(0);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(5);\n\n\n\n\n\n\n\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n\n // Mixins\n\n\n\n // Utilities\n\n\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"])(_mixins_colorable__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"], _mixins_measurable__WEBPACK_IMPORTED_MODULE_11__[/* default */ "a"], _mixins_roundable__WEBPACK_IMPORTED_MODULE_12__[/* default */ "a"]).extend({\n name: \'v-avatar\',\n props: {\n left: Boolean,\n right: Boolean,\n size: {\n type: [Number, String],\n default: 48\n }\n },\n computed: {\n classes: function classes() {\n return _objectSpread({\n \'v-avatar--left\': this.left,\n \'v-avatar--right\': this.right\n }, this.roundedClasses);\n },\n styles: function styles() {\n return _objectSpread({\n height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_13__[/* convertToUnit */ "h"])(this.size),\n minWidth: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_13__[/* convertToUnit */ "h"])(this.size),\n width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_13__[/* convertToUnit */ "h"])(this.size)\n }, this.measurableStyles);\n }\n },\n render: function render(h) {\n var data = {\n staticClass: \'v-avatar\',\n class: this.classes,\n style: this.styles,\n on: this.$listeners\n };\n return h(\'div\', this.setBackgroundColor(this.color, data), Object(_util_helpers__WEBPACK_IMPORTED_MODULE_13__[/* getSlot */ "s"])(this));\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkF2YXRhci9WQXZhdGFyLnRzPzdmMzYiXSwibmFtZXMiOlsibWl4aW5zIiwiQ29sb3JhYmxlIiwiTWVhc3VyYWJsZSIsIlJvdW5kYWJsZSIsImV4dGVuZCIsIm5hbWUiLCJwcm9wcyIsImxlZnQiLCJCb29sZWFuIiwicmlnaHQiLCJzaXplIiwidHlwZSIsIk51bWJlciIsIlN0cmluZyIsImRlZmF1bHQiLCJjb21wdXRlZCIsImNsYXNzZXMiLCJfb2JqZWN0U3ByZWFkIiwicm91bmRlZENsYXNzZXMiLCJzdHlsZXMiLCJoZWlnaHQiLCJjb252ZXJ0VG9Vbml0IiwibWluV2lkdGgiLCJ3aWR0aCIsIm1lYXN1cmFibGVTdHlsZXMiLCJyZW5kZXIiLCJoIiwiZGF0YSIsInN0YXRpY0NsYXNzIiwiY2xhc3MiLCJzdHlsZSIsIm9uIiwiJGxpc3RlbmVycyIsInNldEJhY2tncm91bmRDb2xvciIsImNvbG9yIiwiZ2V0U2xvdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FFQTs7QUFDQTtBQUNBO0NBR0E7O0FBQ0E7QUFJQTtBQUVlQSw4SEFBTSxDQUNuQkMsa0VBRG1CLEVBRW5CQyxtRUFGbUIsRUFHbkJDLGtFQUhtQixDQUFOLENBS2JDLE1BTGEsQ0FLTjtFQUNQQyxJQUFJLEVBQUUsVUFEQztFQUdQQyxLQUFLLEVBQUU7SUFDTEMsSUFBSSxFQUFFQyxPQUREO0lBRUxDLEtBQUssRUFBRUQsT0FGRjtJQUdMRSxJQUFJLEVBQUU7TUFDSkMsSUFBSSxFQUFFLENBQUNDLE1BQUQsRUFBU0MsTUFBVCxDQURGO01BRUpDLE9BQU8sRUFBRTtJQUZMO0VBSEQsQ0FIQTtFQVlQQyxRQUFRLEVBQUU7SUFDUkMsT0FBTyxXQUFBQSxRQUFBO01BQ0wsT0FBQUMsYUFBQTtRQUNFLGtCQUFrQixLQUFLVixJQURsQjtRQUVMLG1CQUFtQixLQUFLRTtNQUZuQixHQUdGLEtBQUtTLGNBQUE7SUFFWCxDQVBPO0lBUVJDLE1BQU0sV0FBQUEsT0FBQTtNQUNKLE9BQUFGLGFBQUE7UUFDRUcsTUFBTSxFQUFFQyw0RUFBYSxDQUFDLEtBQUtYLElBQU4sQ0FEaEI7UUFFTFksUUFBUSxFQUFFRCw0RUFBYSxDQUFDLEtBQUtYLElBQU4sQ0FGbEI7UUFHTGEsS0FBSyxFQUFFRiw0RUFBYSxDQUFDLEtBQUtYLElBQU47TUFIZixHQUlGLEtBQUtjLGdCQUFBO0lBRVg7RUFmTyxDQVpIO0VBOEJQQyxNQUFNLFdBQUFBLE9BQUVDLENBQUYsRUFBRztJQUNQLElBQU1DLElBQUksR0FBRztNQUNYQyxXQUFXLEVBQUUsVUFERjtNQUVYQyxLQUFLLEVBQUUsS0FBS2IsT0FGRDtNQUdYYyxLQUFLLEVBQUUsS0FBS1gsTUFIRDtNQUlYWSxFQUFFLEVBQUUsS0FBS0M7SUFKRSxDQUFiO0lBT0EsT0FBT04sQ0FBQyxDQUFDLEtBQUQsRUFBUSxLQUFLTyxrQkFBTCxDQUF3QixLQUFLQyxLQUE3QixFQUFvQ1AsSUFBcEMsQ0FBUixFQUFtRFEsc0VBQU8sQ0FBQyxJQUFELENBQTFELENBQVI7RUFDRDtBQXZDTSxDQUxNLENBQWYiLCJmaWxlIjoiMjUwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICcuL1ZBdmF0YXIuc2FzcydcblxuLy8gTWl4aW5zXG5pbXBvcnQgQ29sb3JhYmxlIGZyb20gJy4uLy4uL21peGlucy9jb2xvcmFibGUnXG5pbXBvcnQgTWVhc3VyYWJsZSBmcm9tICcuLi8uLi9taXhpbnMvbWVhc3VyYWJsZSdcbmltcG9ydCBSb3VuZGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL3JvdW5kYWJsZSdcblxuLy8gVXRpbGl0aWVzXG5pbXBvcnQgeyBjb252ZXJ0VG9Vbml0LCBnZXRTbG90IH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVk5vZGUgfSBmcm9tICd2dWUnXG5pbXBvcnQgbWl4aW5zIGZyb20gJy4uLy4uL3V0aWwvbWl4aW5zJ1xuXG5leHBvcnQgZGVmYXVsdCBtaXhpbnMoXG4gIENvbG9yYWJsZSxcbiAgTWVhc3VyYWJsZSxcbiAgUm91bmRhYmxlLFxuICAvKiBAdnVlL2NvbXBvbmVudCAqL1xuKS5leHRlbmQoe1xuICBuYW1lOiAndi1hdmF0YXInLFxuXG4gIHByb3BzOiB7XG4gICAgbGVmdDogQm9vbGVhbixcbiAgICByaWdodDogQm9vbGVhbixcbiAgICBzaXplOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNDgsXG4gICAgfSxcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndi1hdmF0YXItLWxlZnQnOiB0aGlzLmxlZnQsXG4gICAgICAgICd2LWF2YXRhci0tcmlnaHQnOiB0aGlzLnJpZ2h0LFxuICAgICAgICAuLi50aGlzLnJvdW5kZWRDbGFzc2VzLFxuICAgICAgfVxuICAgIH0sXG4gICAgc3R5bGVzICgpOiBvYmplY3Qge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBjb252ZXJ0VG9Vbml0KHRoaXMuc2l6ZSksXG4gICAgICAgIG1pbldpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMuc2l6ZSksXG4gICAgICAgIHdpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMuc2l6ZSksXG4gICAgICAgIC4uLnRoaXMubWVhc3VyYWJsZVN0eWxlcyxcbiAgICAgIH1cbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgc3RhdGljQ2xhc3M6ICd2LWF2YXRhcicsXG4gICAgICBjbGFzczogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVycyxcbiAgICB9XG5cbiAgICByZXR1cm4gaCgnZGl2JywgdGhpcy5zZXRCYWNrZ3JvdW5kQ29sb3IodGhpcy5jb2xvciwgZGF0YSksIGdldFNsb3QodGhpcykpXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///250\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return attachedRoot; });\n/**\n * Returns:\n * - 'null' if the node is not attached to the DOM\n * - the root node (HTMLDocument | ShadowRoot) otherwise\n */\nfunction attachedRoot(node) {\n /* istanbul ignore next */\n if (typeof node.getRootNode !== 'function') {\n // Shadow DOM not supported (IE11), lets find the root of this node\n while (node.parentNode) node = node.parentNode; // The root parent is the document if the node is attached to the DOM\n\n if (node !== document) return null;\n return document;\n }\n var root = node.getRootNode(); // The composed root node is the document if the node is attached to the DOM\n\n if (root !== document && root.getRootNode({\n composed: true\n }) !== document) return null;\n return root;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vc3JjL3V0aWwvZG9tLnRzP2Q0YzYiXSwibmFtZXMiOlsiYXR0YWNoZWRSb290Iiwibm9kZSIsImdldFJvb3ROb2RlIiwicGFyZW50Tm9kZSIsImRvY3VtZW50Iiwicm9vdCIsImNvbXBvc2VkIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBOzs7O0FBSUc7QUFDRyxTQUFVQSxZQUFWQSxDQUF3QkMsSUFBeEIsRUFBa0M7RUFDdEM7RUFDQSxJQUFJLE9BQU9BLElBQUksQ0FBQ0MsV0FBWixLQUE0QixVQUFoQyxFQUE0QztJQUMxQztJQUNBLE9BQU9ELElBQUksQ0FBQ0UsVUFBWixFQUF3QkYsSUFBSSxHQUFHQSxJQUFJLENBQUNFLFVBQVosQ0FGa0IsQ0FJMUM7O0lBQ0EsSUFBSUYsSUFBSSxLQUFLRyxRQUFiLEVBQXVCLE9BQU8sSUFBUDtJQUV2QixPQUFPQSxRQUFQO0VBQ0Q7RUFFRCxJQUFNQyxJQUFJLEdBQUdKLElBQUksQ0FBQ0MsV0FBTCxFQUFiLENBWnNDLENBY3RDOztFQUNBLElBQUlHLElBQUksS0FBS0QsUUFBVCxJQUFxQkMsSUFBSSxDQUFDSCxXQUFMLENBQWlCO0lBQUVJLFFBQVEsRUFBRTtFQUFaLENBQWpCLE1BQXlDRixRQUFsRSxFQUE0RSxPQUFPLElBQVA7RUFFNUUsT0FBT0MsSUFBUDtBQUNEIiwiZmlsZSI6IjI1MS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmV0dXJuczpcbiAqICAtICdudWxsJyBpZiB0aGUgbm9kZSBpcyBub3QgYXR0YWNoZWQgdG8gdGhlIERPTVxuICogIC0gdGhlIHJvb3Qgbm9kZSAoSFRNTERvY3VtZW50IHwgU2hhZG93Um9vdCkgb3RoZXJ3aXNlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhdHRhY2hlZFJvb3QgKG5vZGU6IE5vZGUpOiBudWxsIHwgSFRNTERvY3VtZW50IHwgU2hhZG93Um9vdCB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIGlmICh0eXBlb2Ygbm9kZS5nZXRSb290Tm9kZSAhPT0gJ2Z1bmN0aW9uJykge1xuICAgIC8vIFNoYWRvdyBET00gbm90IHN1cHBvcnRlZCAoSUUxMSksIGxldHMgZmluZCB0aGUgcm9vdCBvZiB0aGlzIG5vZGVcbiAgICB3aGlsZSAobm9kZS5wYXJlbnROb2RlKSBub2RlID0gbm9kZS5wYXJlbnROb2RlXG5cbiAgICAvLyBUaGUgcm9vdCBwYXJlbnQgaXMgdGhlIGRvY3VtZW50IGlmIHRoZSBub2RlIGlzIGF0dGFjaGVkIHRvIHRoZSBET01cbiAgICBpZiAobm9kZSAhPT0gZG9jdW1lbnQpIHJldHVybiBudWxsXG5cbiAgICByZXR1cm4gZG9jdW1lbnRcbiAgfVxuXG4gIGNvbnN0IHJvb3QgPSBub2RlLmdldFJvb3ROb2RlKClcblxuICAvLyBUaGUgY29tcG9zZWQgcm9vdCBub2RlIGlzIHRoZSBkb2N1bWVudCBpZiB0aGUgbm9kZSBpcyBhdHRhY2hlZCB0byB0aGUgRE9NXG4gIGlmIChyb290ICE9PSBkb2N1bWVudCAmJiByb290LmdldFJvb3ROb2RlKHsgY29tcG9zZWQ6IHRydWUgfSkgIT09IGRvY3VtZW50KSByZXR1cm4gbnVsbFxuXG4gIHJldHVybiByb290IGFzIEhUTUxEb2N1bWVudCB8IFNoYWRvd1Jvb3Rcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///251\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);\n/* harmony import */ var core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_description_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51);\n/* harmony import */ var core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_iterator_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(47);\n/* harmony import */ var core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_from_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(37);\n/* harmony import */ var core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_slice_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(26);\n/* harmony import */ var core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_function_name_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(12);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(13);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(8);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(23);\n/* harmony import */ var core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_exec_js__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var core_js_modules_es_regexp_to_string_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(36);\n/* harmony import */ var core_js_modules_es_regexp_to_string_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_regexp_to_string_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(33);\n/* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_14__);\n/* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(38);\n/* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_15__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(206);\n/* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var core_js_modules_es_array_flat_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(209);\n/* harmony import */ var core_js_modules_es_array_flat_js__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_flat_js__WEBPACK_IMPORTED_MODULE_18__);\n/* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(168);\n/* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_19__);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(210);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_js__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_unscopables_flat_js__WEBPACK_IMPORTED_MODULE_20__);\n/* harmony import */ var _src_components_VList_VList_sass__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(474);\n/* harmony import */ var _src_components_VList_VList_sass__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(_src_components_VList_VList_sass__WEBPACK_IMPORTED_MODULE_21__);\n/* harmony import */ var _VSheet_VSheet__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(52);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(0);\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }\n\n\n\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_16__[/* default */ "a"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n// Styles\n // Components\n\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (_VSheet_VSheet__WEBPACK_IMPORTED_MODULE_22__[/* default */ "a"].extend().extend({\n name: \'v-list\',\n provide: function provide() {\n return {\n isInList: true,\n list: this\n };\n },\n inject: {\n isInMenu: {\n default: false\n },\n isInNav: {\n default: false\n }\n },\n props: {\n dense: Boolean,\n disabled: Boolean,\n expand: Boolean,\n flat: Boolean,\n nav: Boolean,\n rounded: Boolean,\n subheader: Boolean,\n threeLine: Boolean,\n twoLine: Boolean\n },\n data: function data() {\n return {\n groups: []\n };\n },\n computed: {\n classes: function classes() {\n return _objectSpread(_objectSpread({}, _VSheet_VSheet__WEBPACK_IMPORTED_MODULE_22__[/* default */ "a"].options.computed.classes.call(this)), {}, {\n \'v-list--dense\': this.dense,\n \'v-list--disabled\': this.disabled,\n \'v-list--flat\': this.flat,\n \'v-list--nav\': this.nav,\n \'v-list--rounded\': this.rounded,\n \'v-list--subheader\': this.subheader,\n \'v-list--two-line\': this.twoLine,\n \'v-list--three-line\': this.threeLine\n });\n }\n },\n methods: {\n register: function register(content) {\n this.groups.push(content);\n },\n unregister: function unregister(content) {\n var index = this.groups.findIndex(function (g) {\n return g._uid === content._uid;\n });\n if (index > -1) this.groups.splice(index, 1);\n },\n listClick: function listClick(uid) {\n if (this.expand) return;\n var _iterator = _createForOfIteratorHelper(this.groups),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var group = _step.value;\n group.toggle(uid);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n },\n render: function render(h) {\n var data = {\n staticClass: \'v-list\',\n class: this.classes,\n style: this.styles,\n attrs: _objectSpread({\n role: this.isInNav || this.isInMenu ? undefined : \'list\'\n }, this.attrs$),\n on: this.listeners$\n };\n return h(this.tag, this.setBackgroundColor(this.color, data), Object(_util_helpers__WEBPACK_IMPORTED_MODULE_23__[/* getSlot */ "s"])(this));\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkxpc3QvVkxpc3QudHM/MzE1YSJdLCJuYW1lcyI6WyJWU2hlZXQiLCJleHRlbmQiLCJuYW1lIiwicHJvdmlkZSIsImlzSW5MaXN0IiwibGlzdCIsImluamVjdCIsImlzSW5NZW51IiwiZGVmYXVsdCIsImlzSW5OYXYiLCJwcm9wcyIsImRlbnNlIiwiQm9vbGVhbiIsImRpc2FibGVkIiwiZXhwYW5kIiwiZmxhdCIsIm5hdiIsInJvdW5kZWQiLCJzdWJoZWFkZXIiLCJ0aHJlZUxpbmUiLCJ0d29MaW5lIiwiZGF0YSIsImdyb3VwcyIsImNvbXB1dGVkIiwiY2xhc3NlcyIsIl9vYmplY3RTcHJlYWQiLCJvcHRpb25zIiwiY2FsbCIsIm1ldGhvZHMiLCJyZWdpc3RlciIsImNvbnRlbnQiLCJwdXNoIiwidW5yZWdpc3RlciIsImluZGV4IiwiZmluZEluZGV4IiwiZyIsIl91aWQiLCJzcGxpY2UiLCJsaXN0Q2xpY2siLCJ1aWQiLCJfaXRlcmF0b3IiLCJfY3JlYXRlRm9yT2ZJdGVyYXRvckhlbHBlciIsIl9zdGVwIiwicyIsIm4iLCJkb25lIiwiZ3JvdXAiLCJ2YWx1ZSIsInRvZ2dsZSIsImVyciIsImUiLCJmIiwicmVuZGVyIiwiaCIsInN0YXRpY0NsYXNzIiwiY2xhc3MiLCJzdHlsZSIsInN0eWxlcyIsImF0dHJzIiwicm9sZSIsInVuZGVmaW5lZCIsImF0dHJzJCIsIm9uIiwibGlzdGVuZXJzJCIsInRhZyIsInNldEJhY2tncm91bmRDb2xvciIsImNvbG9yIiwiZ2V0U2xvdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtDQUlBOztBQUNBO0FBQ0E7QUFZQTs7QUFDZUEsd0hBQU0sQ0FBQ0MsTUFBUCxHQUF5QkEsTUFBekIsQ0FBZ0M7RUFDN0NDLElBQUksRUFBRSxRQUR1QztFQUc3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NEM7TUFEN0MsR0FFRixLQUFLQyxNQUFBLENBTkM7TUFRWEMsRUFBRSxFQUFFLEtBQUtDO0lBUkUsQ0FBYjtJQVdBLE9BQU9WLENBQUMsQ0FBQyxLQUFLVyxHQUFOLEVBQVcsS0FBS0Msa0JBQUwsQ0FBd0IsS0FBS0MsS0FBN0IsRUFBb0M3QyxJQUFwQyxDQUFYLEVBQXNEOEMsc0VBQU8sQ0FBQyxJQUFELENBQTdELENBQVI7RUFDRDtBQWxGNEMsQ0FBaEMsQ0FBZiIsImZpbGUiOiIyNTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTdHlsZXNcbmltcG9ydCAnLi9WTGlzdC5zYXNzJ1xuaW1wb3J0IFZMaXN0R3JvdXAgZnJvbSAnLi9WTGlzdEdyb3VwJ1xuXG4vLyBDb21wb25lbnRzXG5pbXBvcnQgVlNoZWV0IGZyb20gJy4uL1ZTaGVldC9WU2hlZXQnXG5pbXBvcnQgeyBnZXRTbG90IH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVk5vZGUgfSBmcm9tICd2dWUnXG5cbnR5cGUgVkxpc3RHcm91cEluc3RhbmNlID0gSW5zdGFuY2VUeXBlPHR5cGVvZiBWTGlzdEdyb3VwPlxuXG5pbnRlcmZhY2Ugb3B0aW9ucyBleHRlbmRzIEluc3RhbmNlVHlwZTx0eXBlb2YgVlNoZWV0PiB7XG4gIGlzSW5NZW51OiBib29sZWFuXG4gIGlzSW5OYXY6IGJvb2xlYW5cbn1cblxuLyogQHZ1ZS9jb21wb25lbnQgKi9cbmV4cG9ydCBkZWZhdWx0IFZTaGVldC5leHRlbmQ8b3B0aW9ucz4oKS5leHRlbmQoe1xuICBuYW1lOiAndi1saXN0JyxcblxuICBwcm92aWRlICgpOiBvYmplY3Qge1xuICAgIHJldHVybiB7XG4gICAgICBpc0luTGlzdDogdHJ1ZSxcbiAgICAgIGxpc3Q6IHRoaXMsXG4gICAgfVxuICB9LFxuXG4gIGluamVjdDoge1xuICAgIGlzSW5NZW51OiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB9LFxuICAgIGlzSW5OYXY6IHtcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgIH0sXG4gIH0sXG5cbiAgcHJvcHM6IHtcbiAgICBkZW5zZTogQm9vbGVhbixcbiAgICBkaXNhYmxlZDogQm9vbGVhbixcbiAgICBleHBhbmQ6IEJvb2xlYW4sXG4gICAgZmxhdDogQm9vbGVhbixcbiAgICBuYXY6IEJvb2xlYW4sXG4gICAgcm91bmRlZDogQm9vbGVhbixcbiAgICBzdWJoZWFkZXI6IEJvb2xlYW4sXG4gICAgdGhyZWVMaW5lOiBCb29sZWFuLFxuICAgIHR3b0xpbmU6IEJvb2xlYW4sXG4gIH0sXG5cbiAgZGF0YTogKCkgPT4gKHtcbiAgICBncm91cHM6IFtdIGFzIFZMaXN0R3JvdXBJbnN0YW5jZVtdLFxuICB9KSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5WU2hlZXQub3B0aW9ucy5jb21wdXRlZC5jbGFzc2VzLmNhbGwodGhpcyksXG4gICAgICAgICd2LWxpc3QtLWRlbnNlJzogdGhpcy5kZW5zZSxcbiAgICAgICAgJ3YtbGlzdC0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAndi1saXN0LS1mbGF0JzogdGhpcy5mbGF0LFxuICAgICAgICAndi1saXN0LS1uYXYnOiB0aGlzLm5hdixcbiAgICAgICAgJ3YtbGlzdC0tcm91bmRlZCc6IHRoaXMucm91bmRlZCxcbiAgICAgICAgJ3YtbGlzdC0tc3ViaGVhZGVyJzogdGhpcy5zdWJoZWFkZXIsXG4gICAgICAgICd2LWxpc3QtLXR3by1saW5lJzogdGhpcy50d29MaW5lLFxuICAgICAgICAndi1saXN0LS10aHJlZS1saW5lJzogdGhpcy50aHJlZUxpbmUsXG4gICAgICB9XG4gICAgfSxcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgcmVnaXN0ZXIgKGNvbnRlbnQ6IFZMaXN0R3JvdXBJbnN0YW5jZSkge1xuICAgICAgdGhpcy5ncm91cHMucHVzaChjb250ZW50KVxuICAgIH0sXG4gICAgdW5yZWdpc3RlciAoY29udGVudDogVkxpc3RHcm91cEluc3RhbmNlKSB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMuZ3JvdXBzLmZpbmRJbmRleChnID0+IGcuX3VpZCA9PT0gY29udGVudC5fdWlkKVxuXG4gICAgICBpZiAoaW5kZXggPiAtMSkgdGhpcy5ncm91cHMuc3BsaWNlKGluZGV4LCAxKVxuICAgIH0sXG4gICAgbGlzdENsaWNrICh1aWQ6IG51bWJlcikge1xuICAgICAgaWYgKHRoaXMuZXhwYW5kKSByZXR1cm5cblxuICAgICAgZm9yIChjb25zdCBncm91cCBvZiB0aGlzLmdyb3Vwcykge1xuICAgICAgICBncm91cC50b2dnbGUodWlkKVxuICAgICAgfVxuICAgIH0sXG4gIH0sXG5cbiAgcmVuZGVyIChoKTogVk5vZGUge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3YtbGlzdCcsXG4gICAgICBjbGFzczogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgYXR0cnM6IHtcbiAgICAgICAgcm9sZTogdGhpcy5pc0luTmF2IHx8IHRoaXMuaXNJbk1lbnUgPyB1bmRlZmluZWQgOiAnbGlzdCcsXG4gICAgICAgIC4uLnRoaXMuYXR0cnMkLFxuICAgICAgfSxcbiAgICAgIG9uOiB0aGlzLmxpc3RlbmVycyQsXG4gICAgfVxuXG4gICAgcmV0dXJuIGgodGhpcy50YWcsIHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKHRoaXMuY29sb3IsIGRhdGEpLCBnZXRTbG90KHRoaXMpKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///252\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2);\n\n\n// Types\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (vue__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"].extend({\n name: 'v-list-item-action',\n functional: true,\n render: function render(h, _ref) {\n var data = _ref.data,\n _ref$children = _ref.children,\n children = _ref$children === void 0 ? [] : _ref$children;\n data.staticClass = data.staticClass ? \"v-list-item__action \".concat(data.staticClass) : 'v-list-item__action';\n var filteredChild = children.filter(function (VNode) {\n return VNode.isComment === false && VNode.text !== ' ';\n });\n if (filteredChild.length > 1) data.staticClass += ' v-list-item__action--stack';\n return h('div', data, children);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkxpc3QvVkxpc3RJdGVtQWN0aW9uLnRzPzhkMjQiXSwibmFtZXMiOlsiVnVlIiwiZXh0ZW5kIiwibmFtZSIsImZ1bmN0aW9uYWwiLCJyZW5kZXIiLCJoIiwiX3JlZiIsImRhdGEiLCJfcmVmJGNoaWxkcmVuIiwiY2hpbGRyZW4iLCJzdGF0aWNDbGFzcyIsImNvbmNhdCIsImZpbHRlcmVkQ2hpbGQiLCJmaWx0ZXIiLCJWTm9kZSIsImlzQ29tbWVudCIsInRleHQiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBRUE7O0FBQ2VBLDRHQUFHLENBQUNDLE1BQUosQ0FBVztFQUN4QkMsSUFBSSxFQUFFLG9CQURrQjtFQUd4QkMsVUFBVSxFQUFFLElBSFk7RUFLeEJDLE1BQU0sV0FBQUEsT0FBRUMsQ0FBRixFQUFBQyxJQUFBLEVBQTRCO0lBQUEsSUFBckJDLElBQUYsR0FBQUQsSUFBQSxDQUFFQyxJQUFGO01BQUFDLGFBQUEsR0FBQUYsSUFBQSxDQUFRRyxRQUFRO01BQVJBLFFBQVEsR0FBQUQsYUFBQSxjQUFHLEtBQUFBLGFBQUE7SUFDNUJELElBQUksQ0FBQ0csV0FBTCxHQUFtQkgsSUFBSSxDQUFDRyxXQUFMLDBCQUFBQyxNQUFBLENBQTBDSixJQUFJLENBQUNHLFdBQVcsSUFBSyxxQkFBbEY7SUFDQSxJQUFNRSxhQUFhLEdBQUdILFFBQVEsQ0FBQ0ksTUFBVCxDQUFnQixVQUFBQyxLQUFLLEVBQUc7TUFDNUMsT0FBT0EsS0FBSyxDQUFDQyxTQUFOLEtBQW9CLEtBQXBCLElBQTZCRCxLQUFLLENBQUNFLElBQU4sS0FBZSxHQUFuRDtJQUNELENBRnFCLENBQXRCO0lBR0EsSUFBSUosYUFBYSxDQUFDSyxNQUFkLEdBQXVCLENBQTNCLEVBQThCVixJQUFJLENBQUNHLFdBQUwsSUFBb0IsNkJBQXBCO0lBRTlCLE9BQU9MLENBQUMsQ0FBQyxLQUFELEVBQVFFLElBQVIsRUFBY0UsUUFBZCxDQUFSO0VBQ0Q7QUFidUIsQ0FBWCxDQUFmIiwiZmlsZSI6IjI1My5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFR5cGVzXG5pbXBvcnQgVnVlLCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgVnVlLmV4dGVuZCh7XG4gIG5hbWU6ICd2LWxpc3QtaXRlbS1hY3Rpb24nLFxuXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgcmVuZGVyIChoLCB7IGRhdGEsIGNoaWxkcmVuID0gW10gfSk6IFZOb2RlIHtcbiAgICBkYXRhLnN0YXRpY0NsYXNzID0gZGF0YS5zdGF0aWNDbGFzcyA/IGB2LWxpc3QtaXRlbV9fYWN0aW9uICR7ZGF0YS5zdGF0aWNDbGFzc31gIDogJ3YtbGlzdC1pdGVtX19hY3Rpb24nXG4gICAgY29uc3QgZmlsdGVyZWRDaGlsZCA9IGNoaWxkcmVuLmZpbHRlcihWTm9kZSA9PiB7XG4gICAgICByZXR1cm4gVk5vZGUuaXNDb21tZW50ID09PSBmYWxzZSAmJiBWTm9kZS50ZXh0ICE9PSAnICdcbiAgICB9KVxuICAgIGlmIChmaWx0ZXJlZENoaWxkLmxlbmd0aCA+IDEpIGRhdGEuc3RhdGljQ2xhc3MgKz0gJyB2LWxpc3QtaXRlbV9fYWN0aW9uLS1zdGFjaydcblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBjaGlsZHJlbilcbiAgfSxcbn0pXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///253\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_array_flat_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(209);\n/* harmony import */ var core_js_modules_es_array_flat_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_flat_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(210);\n/* harmony import */ var core_js_modules_es_array_unscopables_flat_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_unscopables_flat_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(28);\n/* harmony import */ var core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_number_constructor_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var _src_components_VCard_VCard_sass__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(488);\n/* harmony import */ var _src_components_VCard_VCard_sass__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_src_components_VCard_VCard_sass__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var _VSheet__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(138);\n/* harmony import */ var _mixins_loadable__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(212);\n/* harmony import */ var _mixins_routable__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(73);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(5);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(0);\n\n\n\n\n\n\n\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n\n\n\n// Styles\n // Extensions\n\n // Mixins\n\n\n // Helpers\n\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_15__[/* default */ "a"])(_mixins_loadable__WEBPACK_IMPORTED_MODULE_13__[/* default */ "a"], _mixins_routable__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"], _VSheet__WEBPACK_IMPORTED_MODULE_12__[/* default */ "a"]).extend({\n name: \'v-card\',\n props: {\n flat: Boolean,\n hover: Boolean,\n img: String,\n link: Boolean,\n loaderHeight: {\n type: [Number, String],\n default: 4\n },\n raised: Boolean\n },\n computed: {\n classes: function classes() {\n return _objectSpread(_objectSpread({\n \'v-card\': true\n }, _mixins_routable__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"].options.computed.classes.call(this)), {}, {\n \'v-card--flat\': this.flat,\n \'v-card--hover\': this.hover,\n \'v-card--link\': this.isClickable,\n \'v-card--loading\': this.loading,\n \'v-card--disabled\': this.disabled,\n \'v-card--raised\': this.raised\n }, _VSheet__WEBPACK_IMPORTED_MODULE_12__[/* default */ "a"].options.computed.classes.call(this));\n },\n styles: function styles() {\n var style = _objectSpread({}, _VSheet__WEBPACK_IMPORTED_MODULE_12__[/* default */ "a"].options.computed.styles.call(this));\n if (this.img) {\n style.background = "url(\\"".concat(this.img, "\\") center center / cover no-repeat");\n }\n return style;\n }\n },\n methods: {\n genProgress: function genProgress() {\n var render = _mixins_loadable__WEBPACK_IMPORTED_MODULE_13__[/* default */ "a"].options.methods.genProgress.call(this);\n if (!render) return null;\n return this.$createElement(\'div\', {\n staticClass: \'v-card__progress\',\n key: \'progress\'\n }, [render]);\n }\n },\n render: function render(h) {\n var _this$generateRouteLi = this.generateRouteLink(),\n tag = _this$generateRouteLi.tag,\n data = _this$generateRouteLi.data;\n data.style = this.styles;\n if (this.isClickable) {\n data.attrs = data.attrs || {};\n data.attrs.tabindex = 0;\n }\n return h(tag, this.setBackgroundColor(this.color, data), [this.genProgress(), Object(_util_helpers__WEBPACK_IMPORTED_MODULE_16__[/* getSlot */ "s"])(this)]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkNhcmQvVkNhcmQudHM/NDNlZCJdLCJuYW1lcyI6WyJtaXhpbnMiLCJMb2FkYWJsZSIsIlJvdXRhYmxlIiwiVlNoZWV0IiwiZXh0ZW5kIiwibmFtZSIsInByb3BzIiwiZmxhdCIsIkJvb2xlYW4iLCJob3ZlciIsImltZyIsIlN0cmluZyIsImxpbmsiLCJsb2FkZXJIZWlnaHQiLCJ0eXBlIiwiTnVtYmVyIiwiZGVmYXVsdCIsInJhaXNlZCIsImNvbXB1dGVkIiwiY2xhc3NlcyIsIl9vYmplY3RTcHJlYWQiLCJvcHRpb25zIiwiY2FsbCIsImlzQ2xpY2thYmxlIiwibG9hZGluZyIsImRpc2FibGVkIiwic3R5bGVzIiwic3R5bGUiLCJiYWNrZ3JvdW5kIiwiY29uY2F0IiwibWV0aG9kcyIsImdlblByb2dyZXNzIiwicmVuZGVyIiwiJGNyZWF0ZUVsZW1lbnQiLCJzdGF0aWNDbGFzcyIsImtleSIsImgiLCJfdGhpcyRnZW5lcmF0ZVJvdXRlTGkiLCJnZW5lcmF0ZVJvdXRlTGluayIsInRhZyIsImRhdGEiLCJhdHRycyIsInRhYmluZGV4Iiwic2V0QmFja2dyb3VuZENvbG9yIiwiY29sb3IiLCJnZXRTbG90Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0NBR0E7O0NBR0E7O0FBQ0E7Q0FHQTs7QUFDQTtBQUNBO0FBS0E7O0FBQ2VBLDhIQUFNLENBQ25CQyxpRUFEbUIsRUFFbkJDLGlFQUZtQixFQUduQkMsd0RBSG1CLENBQU4sQ0FJYkMsTUFKYSxDQUlOO0VBQ1BDLElBQUksRUFBRSxRQURDO0VBR1BDLEtBQUssRUFBRTtJQUNMQyxJQUFJLEVBQUVDLE9BREQ7SUFFTEMsS0FBSyxFQUFFRCxPQUZGO0lBR0xFLEdBQUcsRUFBRUMsTUFIQTtJQUlMQyxJQUFJLEVBQUVKLE9BSkQ7SUFLTEssWUFBWSxFQUFFO01BQ1pDLElBQUksRUFBRSxDQUFDQyxNQUFELEVBQVNKLE1BQVQsQ0FETTtNQUVaSyxPQUFPLEVBQUU7SUFGRyxDQUxUO0lBU0xDLE1BQU0sRUFBRVQ7RUFUSCxDQUhBO0VBZVBVLFFBQVEsRUFBRTtJQUNSQyxPQUFPLFdBQUFBLFFBQUE7TUFDTCxPQUFBQyxhQUFBLENBQUFBLGFBQUE7UUFDRSxVQUFVO01BREwsR0FFRmxCLGlFQUFRLENBQUNtQixPQUFULENBQWlCSCxRQUFqQixDQUEwQkMsT0FBMUIsQ0FBa0NHLElBQWxDLENBQXVDLElBQXZDLENBRkU7UUFHTCxnQkFBZ0IsS0FBS2YsSUFIaEI7UUFJTCxpQkFBaUIsS0FBS0UsS0FKakI7UUFLTCxnQkFBZ0IsS0FBS2MsV0FMaEI7UUFNTCxtQkFBbUIsS0FBS0MsT0FObkI7UUFPTCxvQkFBb0IsS0FBS0MsUUFQcEI7UUFRTCxrQkFBa0IsS0FBS1I7TUFSbEIsR0FTRmQsd0RBQU0sQ0FBQ2tCLE9BQVAsQ0FBZUgsUUFBZixDQUF3QkMsT0FBeEIsQ0FBZ0NHLElBQWhDLENBQXFDLElBQXJDO0lBRU4sQ0FiTztJQWNSSSxNQUFNLFdBQUFBLE9BQUE7TUFDSixJQUFNQyxLQUFLLEdBQUFQLGFBQUEsS0FDTmpCLHdEQUFNLENBQUNrQixPQUFQLENBQWVILFFBQWYsQ0FBd0JRLE1BQXhCLENBQStCSixJQUEvQixDQUFvQyxJQUFwQyxFQURMO01BSUEsSUFBSSxLQUFLWixHQUFULEVBQWM7UUFDWmlCLEtBQUssQ0FBQ0MsVUFBTixZQUFBQyxNQUFBLENBQTJCLEtBQUtuQixHQUFHLHdDQUFuQztNQUNEO01BRUQsT0FBT2lCLEtBQVA7SUFDRDtFQXhCTyxDQWZIO0VBMENQRyxPQUFPLEVBQUU7SUFDUEMsV0FBVyxXQUFBQSxZQUFBO01BQ1QsSUFBTUMsTUFBTSxHQUFHL0IsaUVBQVEsQ0FBQ29CLE9BQVQsQ0FBaUJTLE9BQWpCLENBQXlCQyxXQUF6QixDQUFxQ1QsSUFBckMsQ0FBMEMsSUFBMUMsQ0FBZjtNQUVBLElBQUksQ0FBQ1UsTUFBTCxFQUFhLE9BQU8sSUFBUDtNQUViLE9BQU8sS0FBS0MsY0FBTCxDQUFvQixLQUFwQixFQUEyQjtRQUNoQ0MsV0FBVyxFQUFFLGtCQURtQjtRQUVoQ0MsR0FBRyxFQUFFO01BRjJCLENBQTNCLEVBR0osQ0FBQ0gsTUFBRCxDQUhJLENBQVA7SUFJRDtFQVZNLENBMUNGO0VBdURQQSxNQUFNLFdBQUFBLE9BQUVJLENBQUYsRUFBRztJQUNQLElBQUFDLHFCQUFBLEdBQXNCLEtBQUtDLGlCQUFMLEVBQXRCO01BQVFDLEdBQUYsR0FBQUYscUJBQUEsQ0FBRUUsR0FBRjtNQUFPQyxJQUFBLEdBQUFILHFCQUFBLENBQUFHLElBQUE7SUFFYkEsSUFBSSxDQUFDYixLQUFMLEdBQWEsS0FBS0QsTUFBbEI7SUFFQSxJQUFJLEtBQUtILFdBQVQsRUFBc0I7TUFDcEJpQixJQUFJLENBQUNDLEtBQUwsR0FBYUQsSUFBSSxDQUFDQyxLQUFMLElBQWMsRUFBM0I7TUFDQUQsSUFBSSxDQUFDQyxLQUFMLENBQVdDLFFBQVgsR0FBc0IsQ0FBdEI7SUFDRDtJQUVELE9BQU9OLENBQUMsQ0FBQ0csR0FBRCxFQUFNLEtBQUtJLGtCQUFMLENBQXdCLEtBQUtDLEtBQTdCLEVBQW9DSixJQUFwQyxDQUFOLEVBQWlELENBQ3ZELEtBQUtULFdBQUwsRUFEdUQsRUFFdkRjLHNFQUFPLENBQUMsSUFBRCxDQUZnRCxDQUFqRCxDQUFSO0VBSUQ7QUFyRU0sQ0FKTSxDQUFmIiwiZmlsZSI6IjI1NC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFN0eWxlc1xuaW1wb3J0ICcuL1ZDYXJkLnNhc3MnXG5cbi8vIEV4dGVuc2lvbnNcbmltcG9ydCBWU2hlZXQgZnJvbSAnLi4vVlNoZWV0J1xuXG4vLyBNaXhpbnNcbmltcG9ydCBMb2FkYWJsZSBmcm9tICcuLi8uLi9taXhpbnMvbG9hZGFibGUnXG5pbXBvcnQgUm91dGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL3JvdXRhYmxlJ1xuXG4vLyBIZWxwZXJzXG5pbXBvcnQgbWl4aW5zIGZyb20gJy4uLy4uL3V0aWwvbWl4aW5zJ1xuaW1wb3J0IHsgZ2V0U2xvdCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcblxuLy8gVHlwZXNcbmltcG9ydCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgbWl4aW5zKFxuICBMb2FkYWJsZSxcbiAgUm91dGFibGUsXG4gIFZTaGVldFxuKS5leHRlbmQoe1xuICBuYW1lOiAndi1jYXJkJyxcblxuICBwcm9wczoge1xuICAgIGZsYXQ6IEJvb2xlYW4sXG4gICAgaG92ZXI6IEJvb2xlYW4sXG4gICAgaW1nOiBTdHJpbmcsXG4gICAgbGluazogQm9vbGVhbixcbiAgICBsb2FkZXJIZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiA0LFxuICAgIH0sXG4gICAgcmFpc2VkOiBCb29sZWFuLFxuICB9LFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2xhc3NlcyAoKTogb2JqZWN0IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICd2LWNhcmQnOiB0cnVlLFxuICAgICAgICAuLi5Sb3V0YWJsZS5vcHRpb25zLmNvbXB1dGVkLmNsYXNzZXMuY2FsbCh0aGlzKSxcbiAgICAgICAgJ3YtY2FyZC0tZmxhdCc6IHRoaXMuZmxhdCxcbiAgICAgICAgJ3YtY2FyZC0taG92ZXInOiB0aGlzLmhvdmVyLFxuICAgICAgICAndi1jYXJkLS1saW5rJzogdGhpcy5pc0NsaWNrYWJsZSxcbiAgICAgICAgJ3YtY2FyZC0tbG9hZGluZyc6IHRoaXMubG9hZGluZyxcbiAgICAgICAgJ3YtY2FyZC0tZGlzYWJsZWQnOiB0aGlzLmRpc2FibGVkLFxuICAgICAgICAndi1jYXJkLS1yYWlzZWQnOiB0aGlzLnJhaXNlZCxcbiAgICAgICAgLi4uVlNoZWV0Lm9wdGlvbnMuY29tcHV0ZWQuY2xhc3Nlcy5jYWxsKHRoaXMpLFxuICAgICAgfVxuICAgIH0sXG4gICAgc3R5bGVzICgpOiBvYmplY3Qge1xuICAgICAgY29uc3Qgc3R5bGU6IERpY3Rpb25hcnk8c3RyaW5nPiA9IHtcbiAgICAgICAgLi4uVlNoZWV0Lm9wdGlvbnMuY29tcHV0ZWQuc3R5bGVzLmNhbGwodGhpcyksXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmltZykge1xuICAgICAgICBzdHlsZS5iYWNrZ3JvdW5kID0gYHVybChcIiR7dGhpcy5pbWd9XCIpIGNlbnRlciBjZW50ZXIgLyBjb3ZlciBuby1yZXBlYXRgXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzdHlsZVxuICAgIH0sXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblByb2dyZXNzICgpIHtcbiAgICAgIGNvbnN0IHJlbmRlciA9IExvYWRhYmxlLm9wdGlvbnMubWV0aG9kcy5nZW5Qcm9ncmVzcy5jYWxsKHRoaXMpXG5cbiAgICAgIGlmICghcmVuZGVyKSByZXR1cm4gbnVsbFxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtY2FyZF9fcHJvZ3Jlc3MnLFxuICAgICAgICBrZXk6ICdwcm9ncmVzcycsXG4gICAgICB9LCBbcmVuZGVyXSlcbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICBjb25zdCB7IHRhZywgZGF0YSB9ID0gdGhpcy5nZW5lcmF0ZVJvdXRlTGluaygpXG5cbiAgICBkYXRhLnN0eWxlID0gdGhpcy5zdHlsZXNcblxuICAgIGlmICh0aGlzLmlzQ2xpY2thYmxlKSB7XG4gICAgICBkYXRhLmF0dHJzID0gZGF0YS5hdHRycyB8fCB7fVxuICAgICAgZGF0YS5hdHRycy50YWJpbmRleCA9IDBcbiAgICB9XG5cbiAgICByZXR1cm4gaCh0YWcsIHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKHRoaXMuY29sb3IsIGRhdGEpLCBbXG4gICAgICB0aGlzLmdlblByb2dyZXNzKCksXG4gICAgICBnZXRTbG90KHRoaXMpLFxuICAgIF0pXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///254\n')},,,,function(module,exports,__webpack_require__){eval("var Clipboard = __webpack_require__(413) // FIXME: workaround for browserify\n\nvar VueClipboardConfig = {\n autoSetContainer: false,\n appendToBody: true // This fixes IE, see #50\n}\n\nvar VueClipboard = {\n install: function (Vue) {\n var globalPrototype = Vue.version.slice(0, 2) === '3.' ? Vue.config.globalProperties : Vue.prototype\n globalPrototype.$clipboardConfig = VueClipboardConfig\n globalPrototype.$copyText = function (text, container) {\n return new Promise(function (resolve, reject) {\n var fakeElement = document.createElement('button')\n var clipboard = new Clipboard(fakeElement, {\n text: function () { return text },\n action: function () { return 'copy' },\n container: typeof container === 'object' ? container : document.body\n })\n clipboard.on('success', function (e) {\n clipboard.destroy()\n resolve(e)\n })\n clipboard.on('error', function (e) {\n clipboard.destroy()\n reject(e)\n })\n if (VueClipboardConfig.appendToBody) document.body.appendChild(fakeElement)\n fakeElement.click()\n if (VueClipboardConfig.appendToBody) document.body.removeChild(fakeElement)\n })\n }\n\n Vue.directive('clipboard', {\n bind: function (el, binding, vnode) {\n if (binding.arg === 'success') {\n el._vClipboard_success = binding.value\n } else if (binding.arg === 'error') {\n el._vClipboard_error = binding.value\n } else {\n var clipboard = new Clipboard(el, {\n text: function () { return binding.value },\n action: function () { return binding.arg === 'cut' ? 'cut' : 'copy' },\n container: VueClipboardConfig.autoSetContainer ? el : undefined\n })\n clipboard.on('success', function (e) {\n var callback = el._vClipboard_success\n callback && callback(e)\n })\n clipboard.on('error', function (e) {\n var callback = el._vClipboard_error\n callback && callback(e)\n })\n el._vClipboard = clipboard\n }\n },\n update: function (el, binding) {\n if (binding.arg === 'success') {\n el._vClipboard_success = binding.value\n } else if (binding.arg === 'error') {\n el._vClipboard_error = binding.value\n } else {\n el._vClipboard.text = function () { return binding.value }\n el._vClipboard.action = function () { return binding.arg === 'cut' ? 'cut' : 'copy' }\n }\n },\n unbind: function (el, binding) {\n // FIXME: investigate why $element._vClipboard was missing\n if (!el._vClipboard) return\n if (binding.arg === 'success') {\n delete el._vClipboard_success\n } else if (binding.arg === 'error') {\n delete el._vClipboard_error\n } else {\n el._vClipboard.destroy()\n delete el._vClipboard\n }\n }\n })\n },\n config: VueClipboardConfig\n}\n\nif (true) {\n module.exports = VueClipboard\n} else {}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWNsaXBib2FyZDIvdnVlLWNsaXBib2FyZC5qcz80ZWI1Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQixtQkFBTyxDQUFDLEdBQWlDOztBQUV6RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGNBQWM7QUFDM0MsK0JBQStCLGdCQUFnQjtBQUMvQztBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVDtBQUNBLCtCQUErQix1QkFBdUI7QUFDdEQsaUNBQWlDLGdEQUFnRDtBQUNqRjtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsU0FBUztBQUNULDZDQUE2QztBQUM3QywrQ0FBK0M7QUFDL0M7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7QUFDQTs7QUFFQSxJQUFJLElBQTJCO0FBQy9CO0FBQ0EsQ0FBQyxNQUFNLEVBSU4iLCJmaWxlIjoiMjU4LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIENsaXBib2FyZCA9IHJlcXVpcmUoJ2NsaXBib2FyZC9kaXN0L2NsaXBib2FyZC5taW4uanMnKSAvLyBGSVhNRTogd29ya2Fyb3VuZCBmb3IgYnJvd3NlcmlmeVxuXG52YXIgVnVlQ2xpcGJvYXJkQ29uZmlnID0ge1xuICBhdXRvU2V0Q29udGFpbmVyOiBmYWxzZSxcbiAgYXBwZW5kVG9Cb2R5OiB0cnVlIC8vIFRoaXMgZml4ZXMgSUUsIHNlZSAjNTBcbn1cblxudmFyIFZ1ZUNsaXBib2FyZCA9IHtcbiAgaW5zdGFsbDogZnVuY3Rpb24gKFZ1ZSkge1xuICAgIHZhciBnbG9iYWxQcm90b3R5cGUgPSBWdWUudmVyc2lvbi5zbGljZSgwLCAyKSA9PT0gJzMuJyA/IFZ1ZS5jb25maWcuZ2xvYmFsUHJvcGVydGllcyA6IFZ1ZS5wcm90b3R5cGVcbiAgICBnbG9iYWxQcm90b3R5cGUuJGNsaXBib2FyZENvbmZpZyA9IFZ1ZUNsaXBib2FyZENvbmZpZ1xuICAgIGdsb2JhbFByb3RvdHlwZS4kY29weVRleHQgPSBmdW5jdGlvbiAodGV4dCwgY29udGFpbmVyKSB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICB2YXIgZmFrZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKVxuICAgICAgICB2YXIgY2xpcGJvYXJkID0gbmV3IENsaXBib2FyZChmYWtlRWxlbWVudCwge1xuICAgICAgICAgIHRleHQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRleHQgfSxcbiAgICAgICAgICBhY3Rpb246IGZ1bmN0aW9uICgpIHsgcmV0dXJuICdjb3B5JyB9LFxuICAgICAgICAgIGNvbnRhaW5lcjogdHlwZW9mIGNvbnRhaW5lciA9PT0gJ29iamVjdCcgPyBjb250YWluZXIgOiBkb2N1bWVudC5ib2R5XG4gICAgICAgIH0pXG4gICAgICAgIGNsaXBib2FyZC5vbignc3VjY2VzcycsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgY2xpcGJvYXJkLmRlc3Ryb3koKVxuICAgICAgICAgIHJlc29sdmUoZSlcbiAgICAgICAgfSlcbiAgICAgICAgY2xpcGJvYXJkLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgY2xpcGJvYXJkLmRlc3Ryb3koKVxuICAgICAgICAgIHJlamVjdChlKVxuICAgICAgICB9KVxuICAgICAgICBpZiAoVnVlQ2xpcGJvYXJkQ29uZmlnLmFwcGVuZFRvQm9keSkgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmYWtlRWxlbWVudClcbiAgICAgICAgZmFrZUVsZW1lbnQuY2xpY2soKVxuICAgICAgICBpZiAoVnVlQ2xpcGJvYXJkQ29uZmlnLmFwcGVuZFRvQm9keSkgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChmYWtlRWxlbWVudClcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgVnVlLmRpcmVjdGl2ZSgnY2xpcGJvYXJkJywge1xuICAgICAgYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xuICAgICAgICBpZiAoYmluZGluZy5hcmcgPT09ICdzdWNjZXNzJykge1xuICAgICAgICAgIGVsLl92Q2xpcGJvYXJkX3N1Y2Nlc3MgPSBiaW5kaW5nLnZhbHVlXG4gICAgICAgIH0gZWxzZSBpZiAoYmluZGluZy5hcmcgPT09ICdlcnJvcicpIHtcbiAgICAgICAgICBlbC5fdkNsaXBib2FyZF9lcnJvciA9IGJpbmRpbmcudmFsdWVcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB2YXIgY2xpcGJvYXJkID0gbmV3IENsaXBib2FyZChlbCwge1xuICAgICAgICAgICAgdGV4dDogZnVuY3Rpb24gKCkgeyByZXR1cm4gYmluZGluZy52YWx1ZSB9LFxuICAgICAgICAgICAgYWN0aW9uOiBmdW5jdGlvbiAoKSB7IHJldHVybiBiaW5kaW5nLmFyZyA9PT0gJ2N1dCcgPyAnY3V0JyA6ICdjb3B5JyB9LFxuICAgICAgICAgICAgY29udGFpbmVyOiBWdWVDbGlwYm9hcmRDb25maWcuYXV0b1NldENvbnRhaW5lciA/IGVsIDogdW5kZWZpbmVkXG4gICAgICAgICAgfSlcbiAgICAgICAgICBjbGlwYm9hcmQub24oJ3N1Y2Nlc3MnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgdmFyIGNhbGxiYWNrID0gZWwuX3ZDbGlwYm9hcmRfc3VjY2Vzc1xuICAgICAgICAgICAgY2FsbGJhY2sgJiYgY2FsbGJhY2soZSlcbiAgICAgICAgICB9KVxuICAgICAgICAgIGNsaXBib2FyZC5vbignZXJyb3InLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgdmFyIGNhbGxiYWNrID0gZWwuX3ZDbGlwYm9hcmRfZXJyb3JcbiAgICAgICAgICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKGUpXG4gICAgICAgICAgfSlcbiAgICAgICAgICBlbC5fdkNsaXBib2FyZCA9IGNsaXBib2FyZFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXBkYXRlOiBmdW5jdGlvbiAoZWwsIGJpbmRpbmcpIHtcbiAgICAgICAgaWYgKGJpbmRpbmcuYXJnID09PSAnc3VjY2VzcycpIHtcbiAgICAgICAgICBlbC5fdkNsaXBib2FyZF9zdWNjZXNzID0gYmluZGluZy52YWx1ZVxuICAgICAgICB9IGVsc2UgaWYgKGJpbmRpbmcuYXJnID09PSAnZXJyb3InKSB7XG4gICAgICAgICAgZWwuX3ZDbGlwYm9hcmRfZXJyb3IgPSBiaW5kaW5nLnZhbHVlXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZWwuX3ZDbGlwYm9hcmQudGV4dCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGJpbmRpbmcudmFsdWUgfVxuICAgICAgICAgIGVsLl92Q2xpcGJvYXJkLmFjdGlvbiA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGJpbmRpbmcuYXJnID09PSAnY3V0JyA/ICdjdXQnIDogJ2NvcHknIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHVuYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nKSB7XG4gICAgICAgIC8vIEZJWE1FOiBpbnZlc3RpZ2F0ZSB3aHkgJGVsZW1lbnQuX3ZDbGlwYm9hcmQgd2FzIG1pc3NpbmdcbiAgICAgICAgaWYgKCFlbC5fdkNsaXBib2FyZCkgcmV0dXJuXG4gICAgICAgIGlmIChiaW5kaW5nLmFyZyA9PT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICAgICAgZGVsZXRlIGVsLl92Q2xpcGJvYXJkX3N1Y2Nlc3NcbiAgICAgICAgfSBlbHNlIGlmIChiaW5kaW5nLmFyZyA9PT0gJ2Vycm9yJykge1xuICAgICAgICAgIGRlbGV0ZSBlbC5fdkNsaXBib2FyZF9lcnJvclxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGVsLl92Q2xpcGJvYXJkLmRlc3Ryb3koKVxuICAgICAgICAgIGRlbGV0ZSBlbC5fdkNsaXBib2FyZFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcbiAgfSxcbiAgY29uZmlnOiBWdWVDbGlwYm9hcmRDb25maWdcbn1cblxuaWYgKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jykge1xuICBtb2R1bGUuZXhwb3J0cyA9IFZ1ZUNsaXBib2FyZFxufSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKFtdLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIFZ1ZUNsaXBib2FyZFxuICB9KVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///258\n")},function(module,exports,__webpack_require__){"use strict";eval("/*!\n * vue-client-only v0.0.0-semantic-release\n * (c) 2021-present egoist <0x142857@gmail.com>\n * Released under the MIT License.\n */\n\n\nvar index = {\n name: 'ClientOnly',\n functional: true,\n props: {\n placeholder: String,\n placeholderTag: {\n type: String,\n default: 'div'\n }\n },\n render: function render(h, ref) {\n var parent = ref.parent;\n var slots = ref.slots;\n var props = ref.props;\n\n var ref$1 = slots();\n var defaultSlot = ref$1.default; if ( defaultSlot === void 0 ) defaultSlot = [];\n var placeholderSlot = ref$1.placeholder;\n\n if (parent._isMounted) {\n return defaultSlot\n }\n\n parent.$once('hook:mounted', function () {\n parent.$forceUpdate();\n });\n\n if (props.placeholderTag && (props.placeholder || placeholderSlot)) {\n return h(\n props.placeholderTag,\n {\n class: ['client-only-placeholder']\n },\n props.placeholder || placeholderSlot\n )\n }\n\n // Return a placeholder element for each child in the default slot\n // Or if no children return a single placeholder\n return defaultSlot.length > 0 ? defaultSlot.map(function () { return h(false); }) : h(false)\n }\n};\n\nmodule.exports = index;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWNsaWVudC1vbmx5L2Rpc3QvdnVlLWNsaWVudC1vbmx5LmNvbW1vbi5qcz84ZTI2Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDYTs7QUFFYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0M7QUFDcEM7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxpRUFBaUUsaUJBQWlCLEVBQUU7QUFDcEY7QUFDQTs7QUFFQSIsImZpbGUiOiIyNTkuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIHZ1ZS1jbGllbnQtb25seSB2MC4wLjAtc2VtYW50aWMtcmVsZWFzZVxuICogKGMpIDIwMjEtcHJlc2VudCBlZ29pc3QgPDB4MTQyODU3QGdtYWlsLmNvbT5cbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS5cbiAqL1xuJ3VzZSBzdHJpY3QnO1xuXG52YXIgaW5kZXggPSB7XG4gIG5hbWU6ICdDbGllbnRPbmx5JyxcbiAgZnVuY3Rpb25hbDogdHJ1ZSxcbiAgcHJvcHM6IHtcbiAgICBwbGFjZWhvbGRlcjogU3RyaW5nLFxuICAgIHBsYWNlaG9sZGVyVGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnZGl2J1xuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIoaCwgcmVmKSB7XG4gICAgdmFyIHBhcmVudCA9IHJlZi5wYXJlbnQ7XG4gICAgdmFyIHNsb3RzID0gcmVmLnNsb3RzO1xuICAgIHZhciBwcm9wcyA9IHJlZi5wcm9wcztcblxuICAgIHZhciByZWYkMSA9IHNsb3RzKCk7XG4gICAgdmFyIGRlZmF1bHRTbG90ID0gcmVmJDEuZGVmYXVsdDsgaWYgKCBkZWZhdWx0U2xvdCA9PT0gdm9pZCAwICkgZGVmYXVsdFNsb3QgPSBbXTtcbiAgICB2YXIgcGxhY2Vob2xkZXJTbG90ID0gcmVmJDEucGxhY2Vob2xkZXI7XG5cbiAgICBpZiAocGFyZW50Ll9pc01vdW50ZWQpIHtcbiAgICAgIHJldHVybiBkZWZhdWx0U2xvdFxuICAgIH1cblxuICAgIHBhcmVudC4kb25jZSgnaG9vazptb3VudGVkJywgZnVuY3Rpb24gKCkge1xuICAgICAgcGFyZW50LiRmb3JjZVVwZGF0ZSgpO1xuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLnBsYWNlaG9sZGVyVGFnICYmIChwcm9wcy5wbGFjZWhvbGRlciB8fCBwbGFjZWhvbGRlclNsb3QpKSB7XG4gICAgICByZXR1cm4gaChcbiAgICAgICAgcHJvcHMucGxhY2Vob2xkZXJUYWcsXG4gICAgICAgIHtcbiAgICAgICAgICBjbGFzczogWydjbGllbnQtb25seS1wbGFjZWhvbGRlciddXG4gICAgICAgIH0sXG4gICAgICAgIHByb3BzLnBsYWNlaG9sZGVyIHx8IHBsYWNlaG9sZGVyU2xvdFxuICAgICAgKVxuICAgIH1cblxuICAgIC8vIFJldHVybiBhIHBsYWNlaG9sZGVyIGVsZW1lbnQgZm9yIGVhY2ggY2hpbGQgaW4gdGhlIGRlZmF1bHQgc2xvdFxuICAgIC8vIE9yIGlmIG5vIGNoaWxkcmVuIHJldHVybiBhIHNpbmdsZSBwbGFjZWhvbGRlclxuICAgIHJldHVybiBkZWZhdWx0U2xvdC5sZW5ndGggPiAwID8gZGVmYXVsdFNsb3QubWFwKGZ1bmN0aW9uICgpIHsgcmV0dXJuIGgoZmFsc2UpOyB9KSA6IGgoZmFsc2UpXG4gIH1cbn07XG5cbm1vZHVsZS5leHBvcnRzID0gaW5kZXg7XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///259\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_symbol_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);\n/* harmony import */ var core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8);\n/* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(29);\n/* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(86);\n/* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(206);\n/* harmony import */ var core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_index_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(3);\n/* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var _src_components_VWindow_VWindow_sass__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(458);\n/* harmony import */ var _src_components_VWindow_VWindow_sass__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_src_components_VWindow_VWindow_sass__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var _directives_touch__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(194);\n/* harmony import */ var _VBtn__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(118);\n/* harmony import */ var _VIcon__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(85);\n/* harmony import */ var _VItemGroup_VItemGroup__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(80);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(0);\n\n\n\n\n\n\n\n\n\n\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n// Styles\n // Directives\n\n // Components\n\n\n\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (_VItemGroup_VItemGroup__WEBPACK_IMPORTED_MODULE_15__[/* BaseItemGroup */ \"a\"].extend({\n name: 'v-window',\n directives: {\n Touch: _directives_touch__WEBPACK_IMPORTED_MODULE_12__[/* default */ \"a\"]\n },\n provide: function provide() {\n return {\n windowGroup: this\n };\n },\n props: {\n activeClass: {\n type: String,\n default: 'v-window-item--active'\n },\n continuous: Boolean,\n mandatory: {\n type: Boolean,\n default: true\n },\n nextIcon: {\n type: [Boolean, String],\n default: '$next'\n },\n prevIcon: {\n type: [Boolean, String],\n default: '$prev'\n },\n reverse: Boolean,\n showArrows: Boolean,\n showArrowsOnHover: Boolean,\n touch: Object,\n touchless: Boolean,\n value: {\n required: false\n },\n vertical: Boolean\n },\n data: function data() {\n return {\n changedByDelimiters: false,\n internalHeight: undefined,\n transitionHeight: undefined,\n transitionCount: 0,\n isBooted: false,\n isReverse: false\n };\n },\n computed: {\n isActive: function isActive() {\n return this.transitionCount > 0;\n },\n classes: function classes() {\n return _objectSpread(_objectSpread({}, _VItemGroup_VItemGroup__WEBPACK_IMPORTED_MODULE_15__[/* BaseItemGroup */ \"a\"].options.computed.classes.call(this)), {}, {\n 'v-window--show-arrows-on-hover': this.showArrowsOnHover\n });\n },\n computedTransition: function computedTransition() {\n if (!this.isBooted) return '';\n var axis = this.vertical ? 'y' : 'x';\n var reverse = this.internalReverse ? !this.isReverse : this.isReverse;\n var direction = reverse ? '-reverse' : '';\n return \"v-window-\".concat(axis).concat(direction, \"-transition\");\n },\n hasActiveItems: function hasActiveItems() {\n return Boolean(this.items.find(function (item) {\n return !item.disabled;\n }));\n },\n hasNext: function hasNext() {\n return this.continuous || this.internalIndex < this.items.length - 1;\n },\n hasPrev: function hasPrev() {\n return this.continuous || this.internalIndex > 0;\n },\n internalIndex: function internalIndex() {\n var _this = this;\n return this.items.findIndex(function (item, i) {\n return _this.internalValue === _this.getValue(item, i);\n });\n },\n internalReverse: function internalReverse() {\n return this.$vuetify.rtl ? !this.reverse : this.reverse;\n }\n },\n watch: {\n internalIndex: function internalIndex(val, oldVal) {\n this.isReverse = this.updateReverse(val, oldVal);\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n window.requestAnimationFrame(function () {\n return _this2.isBooted = true;\n });\n },\n methods: {\n genDefaultSlot: function genDefaultSlot() {\n return Object(_util_helpers__WEBPACK_IMPORTED_MODULE_16__[/* getSlot */ \"s\"])(this);\n },\n genContainer: function genContainer() {\n var children = [this.genDefaultSlot()];\n if (this.showArrows) {\n children.push(this.genControlIcons());\n }\n return this.$createElement('div', {\n staticClass: 'v-window__container',\n class: {\n 'v-window__container--is-active': this.isActive\n },\n style: {\n height: this.internalHeight || this.transitionHeight\n }\n }, children);\n },\n genIcon: function genIcon(direction, icon, _click) {\n var _this3 = this;\n var _a, _b, _c;\n var on = {\n click: function click(e) {\n e.stopPropagation();\n _this3.changedByDelimiters = true;\n _click();\n }\n };\n var attrs = {\n 'aria-label': this.$vuetify.lang.t(\"$vuetify.carousel.\".concat(direction))\n };\n var children = (_c = (_b = (_a = this.$scopedSlots)[direction]) === null || _b === void 0 ? void 0 : _b.call(_a, {\n on: on,\n attrs: attrs\n })) !== null && _c !== void 0 ? _c : [this.$createElement(_VBtn__WEBPACK_IMPORTED_MODULE_13__[/* default */ \"a\"], {\n props: {\n icon: true\n },\n attrs: attrs,\n on: on\n }, [this.$createElement(_VIcon__WEBPACK_IMPORTED_MODULE_14__[/* default */ \"a\"], {\n props: {\n large: true\n }\n }, icon)])];\n return this.$createElement('div', {\n staticClass: \"v-window__\".concat(direction)\n }, children);\n },\n genControlIcons: function genControlIcons() {\n var icons = [];\n var prevIcon = this.$vuetify.rtl ? this.nextIcon : this.prevIcon;\n /* istanbul ignore else */\n\n if (this.hasPrev && prevIcon && typeof prevIcon === 'string') {\n var icon = this.genIcon('prev', prevIcon, this.prev);\n icon && icons.push(icon);\n }\n var nextIcon = this.$vuetify.rtl ? this.prevIcon : this.nextIcon;\n /* istanbul ignore else */\n\n if (this.hasNext && nextIcon && typeof nextIcon === 'string') {\n var _icon = this.genIcon('next', nextIcon, this.next);\n _icon && icons.push(_icon);\n }\n return icons;\n },\n getNextIndex: function getNextIndex(index) {\n var nextIndex = (index + 1) % this.items.length;\n var item = this.items[nextIndex];\n if (item.disabled) return this.getNextIndex(nextIndex);\n return nextIndex;\n },\n getPrevIndex: function getPrevIndex(index) {\n var prevIndex = (index + this.items.length - 1) % this.items.length;\n var item = this.items[prevIndex];\n if (item.disabled) return this.getPrevIndex(prevIndex);\n return prevIndex;\n },\n next: function next() {\n /* istanbul ignore if */\n if (!this.hasActiveItems || !this.hasNext) return;\n var nextIndex = this.getNextIndex(this.internalIndex);\n var item = this.items[nextIndex];\n this.internalValue = this.getValue(item, nextIndex);\n },\n prev: function prev() {\n /* istanbul ignore if */\n if (!this.hasActiveItems || !this.hasPrev) return;\n var lastIndex = this.getPrevIndex(this.internalIndex);\n var item = this.items[lastIndex];\n this.internalValue = this.getValue(item, lastIndex);\n },\n updateReverse: function updateReverse(val, oldVal) {\n var itemsLength = this.items.length;\n var lastIndex = itemsLength - 1;\n if (itemsLength <= 2) return val < oldVal;\n if (val === lastIndex && oldVal === 0) {\n return true;\n } else if (val === 0 && oldVal === lastIndex) {\n return false;\n } else {\n return val < oldVal;\n }\n }\n },\n render: function render(h) {\n var _this4 = this;\n var data = {\n staticClass: 'v-window',\n class: this.classes,\n directives: []\n };\n if (!this.touchless) {\n var value = this.touch || {\n left: function left() {\n _this4.$vuetify.rtl ? _this4.prev() : _this4.next();\n },\n right: function right() {\n _this4.$vuetify.rtl ? _this4.next() : _this4.prev();\n },\n end: function end(e) {\n e.stopPropagation();\n },\n start: function start(e) {\n e.stopPropagation();\n }\n };\n data.directives.push({\n name: 'touch',\n value: value\n });\n }\n return h('div', data, [this.genContainer()]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVldpbmRvdy9WV2luZG93LnRzP2Y4YzAiXSwibmFtZXMiOlsiQmFzZUl0ZW1Hcm91cCIsImV4dGVuZCIsIm5hbWUiLCJkaXJlY3RpdmVzIiwiVG91Y2giLCJwcm92aWRlIiwid2luZG93R3JvdXAiLCJwcm9wcyIsImFjdGl2ZUNsYXNzIiwidHlwZSIsIlN0cmluZyIsImRlZmF1bHQiLCJjb250aW51b3VzIiwiQm9vbGVhbiIsIm1hbmRhdG9yeSIsIm5leHRJY29uIiwicHJldkljb24iLCJyZXZlcnNlIiwic2hvd0Fycm93cyIsInNob3dBcnJvd3NPbkhvdmVyIiwidG91Y2giLCJPYmplY3QiLCJ0b3VjaGxlc3MiLCJ2YWx1ZSIsInJlcXVpcmVkIiwidmVydGljYWwiLCJkYXRhIiwiY2hhbmdlZEJ5RGVsaW1pdGVycyIsImludGVybmFsSGVpZ2h0IiwidW5kZWZpbmVkIiwidHJhbnNpdGlvbkhlaWdodCIsInRyYW5zaXRpb25Db3VudCIsImlzQm9vdGVkIiwiaXNSZXZlcnNlIiwiY29tcHV0ZWQiLCJpc0FjdGl2ZSIsImNsYXNzZXMiLCJfb2JqZWN0U3ByZWFkIiwib3B0aW9ucyIsImNhbGwiLCJjb21wdXRlZFRyYW5zaXRpb24iLCJheGlzIiwiaW50ZXJuYWxSZXZlcnNlIiwiZGlyZWN0aW9uIiwiY29uY2F0IiwiaGFzQWN0aXZlSXRlbXMiLCJpdGVtcyIsImZpbmQiLCJpdGVtIiwiZGlzYWJsZWQiLCJoYXNOZXh0IiwiaW50ZXJuYWxJbmRleCIsImxlbmd0aCIsImhhc1ByZXYiLCJfdGhpcyIsImZpbmRJbmRleCIsImkiLCJpbnRlcm5hbFZhbHVlIiwiZ2V0VmFsdWUiLCIkdnVldGlmeSIsInJ0bCIsIndhdGNoIiwidmFsIiwib2xkVmFsIiwidXBkYXRlUmV2ZXJzZSIsIm1vdW50ZWQiLCJfdGhpczIiLCJ3aW5kb3ciLCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJtZXRob2RzIiwiZ2VuRGVmYXVsdFNsb3QiLCJnZXRTbG90IiwiZ2VuQ29udGFpbmVyIiwiY2hpbGRyZW4iLCJwdXNoIiwiZ2VuQ29udHJvbEljb25zIiwiJGNyZWF0ZUVsZW1lbnQiLCJzdGF0aWNDbGFzcyIsImNsYXNzIiwic3R5bGUiLCJoZWlnaHQiLCJnZW5JY29uIiwiaWNvbiIsImNsaWNrIiwiX3RoaXMzIiwib24iLCJlIiwic3RvcFByb3BhZ2F0aW9uIiwiYXR0cnMiLCJsYW5nIiwidCIsIl9jIiwiX2IiLCJfYSIsIiRzY29wZWRTbG90cyIsIlZCdG4iLCJWSWNvbiIsImxhcmdlIiwiaWNvbnMiLCJwcmV2IiwibmV4dCIsImdldE5leHRJbmRleCIsImluZGV4IiwibmV4dEluZGV4IiwiZ2V0UHJldkluZGV4IiwicHJldkluZGV4IiwibGFzdEluZGV4IiwiaXRlbXNMZW5ndGgiLCJyZW5kZXIiLCJoIiwiX3RoaXM0IiwibGVmdCIsInJpZ2h0IiwiZW5kIiwic3RhcnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Q0FRQTs7Q0FHQTs7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBOztBQUNlQSxzSUFBYSxDQUFDQyxNQUFkLENBQXFCO0VBQ2xDQyxJQUFJLEVBQUUsVUFENEI7RUFHbENDLFVBQVUsRUFBRTtJQUFFQyxLQUFBLEVBQUFBLGtFQUFLQTtFQUFQLENBSHNCO0VBS2xDQyxPQUFPLFdBQUFBLFFBQUE7SUFDTCxPQUFPO01BQ0xDLFdBQVcsRUFBRTtJQURSLENBQVA7RUFHRCxDQVRpQztFQVdsQ0MsS0FBSyxFQUFFO0lBQ0xDLFdBQVcsRUFBRTtNQUNYQyxJQUFJLEVBQUVDLE1BREs7TUFFWEMsT0FBTyxFQUFFO0lBRkUsQ0FEUjtJQUtMQyxVQUFVLEVBQUVDLE9BTFA7SUFNTEMsU0FBUyxFQUFFO01BQ1RMLElBQUksRUFBRUksT0FERztNQUVURixPQUFPLEVBQUU7SUFGQSxDQU5OO0lBVUxJLFFBQVEsRUFBRTtNQUNSTixJQUFJLEVBQUUsQ0FBQ0ksT0FB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UUFFbkJxQixLQUFBLEVBQUFBO01BRm1CLENBQXJCO0lBSUQ7SUFFRCxPQUFPc0YsQ0FBQyxDQUFDLEtBQUQsRUFBUW5GLElBQVIsRUFBYyxDQUFDLEtBQUs4QyxZQUFMLEVBQUQsQ0FBZCxDQUFSO0VBQ0Q7QUEzUWlDLENBQXJCLENBQWYiLCJmaWxlIjoiMjYxLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gU3R5bGVzXG5pbXBvcnQgJy4vVldpbmRvdy5zYXNzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVk5vZGUsIFZOb2RlRGlyZWN0aXZlIH0gZnJvbSAndnVlL3R5cGVzL3Zub2RlJ1xuaW1wb3J0IHsgUHJvcFR5cGUgfSBmcm9tICd2dWUnXG5pbXBvcnQgeyBUb3VjaEhhbmRsZXJzIH0gZnJvbSAndnVldGlmeS90eXBlcydcblxuLy8gRGlyZWN0aXZlc1xuaW1wb3J0IFRvdWNoIGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvdG91Y2gnXG5cbi8vIENvbXBvbmVudHNcbmltcG9ydCBWQnRuIGZyb20gJy4uL1ZCdG4nXG5pbXBvcnQgVkljb24gZnJvbSAnLi4vVkljb24nXG5pbXBvcnQgeyBCYXNlSXRlbUdyb3VwIH0gZnJvbSAnLi4vVkl0ZW1Hcm91cC9WSXRlbUdyb3VwJ1xuaW1wb3J0IHsgZ2V0U2xvdCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcblxuLyogQHZ1ZS9jb21wb25lbnQgKi9cbmV4cG9ydCBkZWZhdWx0IEJhc2VJdGVtR3JvdXAuZXh0ZW5kKHtcbiAgbmFtZTogJ3Ytd2luZG93JyxcblxuICBkaXJlY3RpdmVzOiB7IFRvdWNoIH0sXG5cbiAgcHJvdmlkZSAoKTogb2JqZWN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgd2luZG93R3JvdXA6IHRoaXMsXG4gICAgfVxuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlQ2xhc3M6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICd2LXdpbmRvdy1pdGVtLS1hY3RpdmUnLFxuICAgIH0sXG4gICAgY29udGludW91czogQm9vbGVhbixcbiAgICBtYW5kYXRvcnk6IHtcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICBkZWZhdWx0OiB0cnVlLFxuICAgIH0sXG4gICAgbmV4dEljb246IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogJyRuZXh0JyxcbiAgICB9LFxuICAgIHByZXZJY29uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICckcHJldicsXG4gICAgfSxcbiAgICByZXZlcnNlOiBCb29sZWFuLFxuICAgIHNob3dBcnJvd3M6IEJvb2xlYW4sXG4gICAgc2hvd0Fycm93c09uSG92ZXI6IEJvb2xlYW4sXG4gICAgdG91Y2g6IE9iamVjdCBhcyBQcm9wVHlwZTxUb3VjaEhhbmRsZXJzPixcbiAgICB0b3VjaGxlc3M6IEJvb2xlYW4sXG4gICAgdmFsdWU6IHtcbiAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICB9LFxuICAgIHZlcnRpY2FsOiBCb29sZWFuLFxuICB9LFxuXG4gIGRhdGEgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBjaGFuZ2VkQnlEZWxpbWl0ZXJzOiBmYWxzZSxcbiAgICAgIGludGVybmFsSGVpZ2h0OiB1bmRlZmluZWQgYXMgdW5kZWZpbmVkIHwgc3RyaW5nLCAvLyBUaGlzIGNhbiBiZSBmaXhlZCBieSBjaGlsZCBjbGFzcy5cbiAgICAgIHRyYW5zaXRpb25IZWlnaHQ6IHVuZGVmaW5lZCBhcyB1bmRlZmluZWQgfCBzdHJpbmcsIC8vIEludGVybWVkaWF0ZSBoZWlnaHQgZHVyaW5nIHRyYW5zaXRpb24uXG4gICAgICB0cmFuc2l0aW9uQ291bnQ6IDAsIC8vIE51bWJlciBvZiB3aW5kb3dzIGluIHRyYW5zaXRpb24gc3RhdGUuXG4gICAgICBpc0Jvb3RlZDogZmFsc2UsXG4gICAgICBpc1JldmVyc2U6IGZhbHNlLFxuICAgIH1cbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGlzQWN0aXZlICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zaXRpb25Db3VudCA+IDBcbiAgICB9LFxuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5CYXNlSXRlbUdyb3VwLm9wdGlvbnMuY29tcHV0ZWQuY2xhc3Nlcy5jYWxsKHRoaXMpLFxuICAgICAgICAndi13aW5kb3ctLXNob3ctYXJyb3dzLW9uLWhvdmVyJzogdGhpcy5zaG93QXJyb3dzT25Ib3ZlcixcbiAgICAgIH1cbiAgICB9LFxuICAgIGNvbXB1dGVkVHJhbnNpdGlvbiAoKTogc3RyaW5nIHtcbiAgICAgIGlmICghdGhpcy5pc0Jvb3RlZCkgcmV0dXJuICcnXG5cbiAgICAgIGNvbnN0IGF4aXMgPSB0aGlzLnZlcnRpY2FsID8gJ3knIDogJ3gnXG4gICAgICBjb25zdCByZXZlcnNlID0gdGhpcy5pbnRlcm5hbFJldmVyc2UgPyAhdGhpcy5pc1JldmVyc2UgOiB0aGlzLmlzUmV2ZXJzZVxuICAgICAgY29uc3QgZGlyZWN0aW9uID0gcmV2ZXJzZSA/ICctcmV2ZXJzZScgOiAnJ1xuXG4gICAgICByZXR1cm4gYHYtd2luZG93LSR7YXhpc30ke2RpcmVjdGlvbn0tdHJhbnNpdGlvbmBcbiAgICB9LFxuICAgIGhhc0FjdGl2ZUl0ZW1zICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBCb29sZWFuKFxuICAgICAgICB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiAhaXRlbS5kaXNhYmxlZClcbiAgICAgIClcbiAgICB9LFxuICAgIGhhc05leHQgKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuY29udGludW91cyB8fCB0aGlzLmludGVybmFsSW5kZXggPCB0aGlzLml0ZW1zLmxlbmd0aCAtIDFcbiAgICB9LFxuICAgIGhhc1ByZXYgKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuY29udGludW91cyB8fCB0aGlzLmludGVybmFsSW5kZXggPiAwXG4gICAgfSxcbiAgICBpbnRlcm5hbEluZGV4ICgpOiBudW1iZXIge1xuICAgICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZEluZGV4KChpdGVtLCBpKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmludGVybmFsVmFsdWUgPT09IHRoaXMuZ2V0VmFsdWUoaXRlbSwgaSlcbiAgICAgIH0pXG4gICAgfSxcbiAgICBpbnRlcm5hbFJldmVyc2UgKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuJHZ1ZXRpZnkucnRsID8gIXRoaXMucmV2ZXJzZSA6IHRoaXMucmV2ZXJzZVxuICAgIH0sXG4gIH0sXG5cbiAgd2F0Y2g6IHtcbiAgICBpbnRlcm5hbEluZGV4ICh2YWwsIG9sZFZhbCkge1xuICAgICAgdGhpcy5pc1JldmVyc2UgPSB0aGlzLnVwZGF0ZVJldmVyc2UodmFsLCBvbGRWYWwpXG4gICAgfSxcbiAgfSxcblxuICBtb3VudGVkICgpIHtcbiAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+ICh0aGlzLmlzQm9vdGVkID0gdHJ1ZSkpXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlbkRlZmF1bHRTbG90ICgpIHtcbiAgICAgIHJldHVybiBnZXRTbG90KHRoaXMpXG4gICAgfSxcbiAgICBnZW5Db250YWluZXIgKCk6IFZOb2RlIHtcbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gW3RoaXMuZ2VuRGVmYXVsdFNsb3QoKV1cblxuICAgICAgaWYgKHRoaXMuc2hvd0Fycm93cykge1xuICAgICAgICBjaGlsZHJlbi5wdXNoKHRoaXMuZ2VuQ29udHJvbEljb25zKCkpXG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi13aW5kb3dfX2NvbnRhaW5lcicsXG4gICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgJ3Ytd2luZG93X19jb250YWluZXItLWlzLWFjdGl2ZSc6IHRoaXMuaXNBY3RpdmUsXG4gICAgICAgIH0sXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgaGVpZ2h0OiB0aGlzLmludGVybmFsSGVpZ2h0IHx8IHRoaXMudHJhbnNpdGlvbkhlaWdodCxcbiAgICAgICAgfSxcbiAgICAgIH0sIGNoaWxkcmVuKVxuICAgIH0sXG4gICAgZ2VuSWNvbiAoXG4gICAgICBkaXJlY3Rpb246ICdwcmV2JyB8ICduZXh0JyxcbiAgICAgIGljb246IHN0cmluZyxcbiAgICAgIGNsaWNrOiAoKSA9PiB2b2lkXG4gICAgKSB7XG4gICAgICBjb25zdCBvbiA9IHtcbiAgICAgICAgY2xpY2s6IChlOiBFdmVudCkgPT4ge1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgICB0aGlzLmNoYW5nZWRCeURlbGltaXRlcnMgPSB0cnVlXG4gICAgICAgICAgY2xpY2soKVxuICAgICAgICB9LFxuICAgICAgfVxuICAgICAgY29uc3QgYXR0cnMgPSB7XG4gICAgICAgICdhcmlhLWxhYmVsJzogdGhpcy4kdnVldGlmeS5sYW5nLnQoYCR2dWV0aWZ5LmNhcm91c2VsLiR7ZGlyZWN0aW9ufWApLFxuICAgICAgfVxuICAgICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLiRzY29wZWRTbG90c1tkaXJlY3Rpb25dPy4oe1xuICAgICAgICBvbixcbiAgICAgICAgYXR0cnMsXG4gICAgICB9KSA/PyBbdGhpcy4kY3JlYXRlRWxlbWVudChWQnRuLCB7XG4gICAgICAgIHByb3BzOiB7IGljb246IHRydWUgfSxcbiAgICAgICAgYXR0cnMsXG4gICAgICAgIG9uLFxuICAgICAgfSwgW1xuICAgICAgICB0aGlzLiRjcmVhdGVFbGVtZW50KFZJY29uLCB7XG4gICAgICAgICAgcHJvcHM6IHsgbGFyZ2U6IHRydWUgfSxcbiAgICAgICAgfSwgaWNvbiksXG4gICAgICBdKV1cblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6IGB2LXdpbmRvd19fJHtkaXJlY3Rpb259YCxcbiAgICAgIH0sIGNoaWxkcmVuKVxuICAgIH0sXG4gICAgZ2VuQ29udHJvbEljb25zICgpIHtcbiAgICAgIGNvbnN0IGljb25zID0gW11cblxuICAgICAgY29uc3QgcHJldkljb24gPSB0aGlzLiR2dWV0aWZ5LnJ0bFxuICAgICAgICA/IHRoaXMubmV4dEljb25cbiAgICAgICAgOiB0aGlzLnByZXZJY29uXG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuaGFzUHJldiAmJlxuICAgICAgICBwcmV2SWNvbiAmJlxuICAgICAgICB0eXBlb2YgcHJldkljb24gPT09ICdzdHJpbmcnXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgaWNvbiA9IHRoaXMuZ2VuSWNvbigncHJldicsIHByZXZJY29uLCB0aGlzLnByZXYpXG4gICAgICAgIGljb24gJiYgaWNvbnMucHVzaChpY29uKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBuZXh0SWNvbiA9IHRoaXMuJHZ1ZXRpZnkucnRsXG4gICAgICAgID8gdGhpcy5wcmV2SWNvblxuICAgICAgICA6IHRoaXMubmV4dEljb25cblxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5oYXNOZXh0ICYmXG4gICAgICAgIG5leHRJY29uICYmXG4gICAgICAgIHR5cGVvZiBuZXh0SWNvbiA9PT0gJ3N0cmluZydcbiAgICAgICkge1xuICAgICAgICBjb25zdCBpY29uID0gdGhpcy5nZW5JY29uKCduZXh0JywgbmV4dEljb24sIHRoaXMubmV4dClcbiAgICAgICAgaWNvbiAmJiBpY29ucy5wdXNoKGljb24pXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBpY29uc1xuICAgIH0sXG4gICAgZ2V0TmV4dEluZGV4IChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgIGNvbnN0IG5leHRJbmRleCA9IChpbmRleCArIDEpICUgdGhpcy5pdGVtcy5sZW5ndGhcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zW25leHRJbmRleF1cblxuICAgICAgaWYgKGl0ZW0uZGlzYWJsZWQpIHJldHVybiB0aGlzLmdldE5leHRJbmRleChuZXh0SW5kZXgpXG5cbiAgICAgIHJldHVybiBuZXh0SW5kZXhcbiAgICB9LFxuICAgIGdldFByZXZJbmRleCAoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICBjb25zdCBwcmV2SW5kZXggPSAoaW5kZXggKyB0aGlzLml0ZW1zLmxlbmd0aCAtIDEpICUgdGhpcy5pdGVtcy5sZW5ndGhcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zW3ByZXZJbmRleF1cblxuICAgICAgaWYgKGl0ZW0uZGlzYWJsZWQpIHJldHVybiB0aGlzLmdldFByZXZJbmRleChwcmV2SW5kZXgpXG5cbiAgICAgIHJldHVybiBwcmV2SW5kZXhcbiAgICB9LFxuICAgIG5leHQgKCkge1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICBpZiAoIXRoaXMuaGFzQWN0aXZlSXRlbXMgfHwgIXRoaXMuaGFzTmV4dCkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IG5leHRJbmRleCA9IHRoaXMuZ2V0TmV4dEluZGV4KHRoaXMuaW50ZXJuYWxJbmRleClcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zW25leHRJbmRleF1cblxuICAgICAgdGhpcy5pbnRlcm5hbFZhbHVlID0gdGhpcy5nZXRWYWx1ZShpdGVtLCBuZXh0SW5kZXgpXG4gICAgfSxcbiAgICBwcmV2ICgpIHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgaWYgKCF0aGlzLmhhc0FjdGl2ZUl0ZW1zIHx8ICF0aGlzLmhhc1ByZXYpIHJldHVyblxuXG4gICAgICBjb25zdCBsYXN0SW5kZXggPSB0aGlzLmdldFByZXZJbmRleCh0aGlzLmludGVybmFsSW5kZXgpXG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5pdGVtc1tsYXN0SW5kZXhdXG5cbiAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IHRoaXMuZ2V0VmFsdWUoaXRlbSwgbGFzdEluZGV4KVxuICAgIH0sXG4gICAgdXBkYXRlUmV2ZXJzZSAodmFsOiBudW1iZXIsIG9sZFZhbDogbnVtYmVyKSB7XG4gICAgICBjb25zdCBpdGVtc0xlbmd0aCA9IHRoaXMuaXRlbXMubGVuZ3RoXG4gICAgICBjb25zdCBsYXN0SW5kZXggPSBpdGVtc0xlbmd0aCAtIDFcblxuICAgICAgaWYgKGl0ZW1zTGVuZ3RoIDw9IDIpIHJldHVybiB2YWwgPCBvbGRWYWxcblxuICAgICAgaWYgKHZhbCA9PT0gbGFzdEluZGV4ICYmIG9sZFZhbCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfSBlbHNlIGlmICh2YWwgPT09IDAgJiYgb2xkVmFsID09PSBsYXN0SW5kZXgpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsIDwgb2xkVmFsXG4gICAgICB9XG4gICAgfSxcbiAgfSxcblxuICByZW5kZXIgKGgpOiBWTm9kZSB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndi13aW5kb3cnLFxuICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGRpcmVjdGl2ZXM6IFtdIGFzIFZOb2RlRGlyZWN0aXZlW10sXG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnRvdWNobGVzcykge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLnRvdWNoIHx8IHtcbiAgICAgICAgbGVmdDogKCkgPT4ge1xuICAgICAgICAgIHRoaXMuJHZ1ZXRpZnkucnRsID8gdGhpcy5wcmV2KCkgOiB0aGlzLm5leHQoKVxuICAgICAgICB9LFxuICAgICAgICByaWdodDogKCkgPT4ge1xuICAgICAgICAgIHRoaXMuJHZ1ZXRpZnkucnRsID8gdGhpcy5uZXh0KCkgOiB0aGlzLnByZXYoKVxuICAgICAgICB9LFxuICAgICAgICBlbmQ6IChlOiBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICB9LFxuICAgICAgICBzdGFydDogKGU6IFRvdWNoRXZlbnQpID0+IHtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgIH0sXG4gICAgICB9XG5cbiAgICAgIGRhdGEuZGlyZWN0aXZlcy5wdXNoKHtcbiAgICAgICAgbmFtZTogJ3RvdWNoJyxcbiAgICAgICAgdmFsdWUsXG4gICAgICB9KVxuICAgIH1cblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbdGhpcy5nZW5Db250YWluZXIoKV0pXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///261\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/*!\n * vue-i18n v8.28.2 \n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\n/* */\n\n/**\n * constants\n */\n\nvar numberFormatKeys = [\n 'compactDisplay',\n 'currency',\n 'currencyDisplay',\n 'currencySign',\n 'localeMatcher',\n 'notation',\n 'numberingSystem',\n 'signDisplay',\n 'style',\n 'unit',\n 'unitDisplay',\n 'useGrouping',\n 'minimumIntegerDigits',\n 'minimumFractionDigits',\n 'maximumFractionDigits',\n 'minimumSignificantDigits',\n 'maximumSignificantDigits'\n];\n\nvar dateTimeFormatKeys = [\n 'dateStyle',\n 'timeStyle',\n 'calendar',\n 'localeMatcher',\n \"hour12\",\n \"hourCycle\",\n \"timeZone\",\n \"formatMatcher\",\n 'weekday',\n 'era',\n 'year',\n 'month',\n 'day',\n 'hour',\n 'minute',\n 'second',\n 'timeZoneName' ];\n\n/**\n * utilities\n */\n\nfunction warn (msg, err) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.warn(err.stack);\n }\n }\n}\n\nfunction error (msg, err) {\n if (typeof console !== 'undefined') {\n console.error('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.error(err.stack);\n }\n }\n}\n\nvar isArray = Array.isArray;\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isBoolean (val) {\n return typeof val === 'boolean'\n}\n\nfunction isString (val) {\n return typeof val === 'string'\n}\n\nvar toString = Object.prototype.toString;\nvar OBJECT_STRING = '[object Object]';\nfunction isPlainObject (obj) {\n return toString.call(obj) === OBJECT_STRING\n}\n\nfunction isNull (val) {\n return val === null || val === undefined\n}\n\nfunction isFunction (val) {\n return typeof val === 'function'\n}\n\nfunction parseArgs () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var locale = null;\n var params = null;\n if (args.length === 1) {\n if (isObject(args[0]) || isArray(args[0])) {\n params = args[0];\n } else if (typeof args[0] === 'string') {\n locale = args[0];\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n locale = args[0];\n }\n /* istanbul ignore if */\n if (isObject(args[1]) || isArray(args[1])) {\n params = args[1];\n }\n }\n\n return { locale: locale, params: params }\n}\n\nfunction looseClone (obj) {\n return JSON.parse(JSON.stringify(obj))\n}\n\nfunction remove (arr, item) {\n if (arr.delete(item)) {\n return arr\n }\n}\n\nfunction arrayFrom (arr) {\n var ret = [];\n arr.forEach(function (a) { return ret.push(a); });\n return ret\n}\n\nfunction includes (arr, item) {\n return !!~arr.indexOf(item)\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\nfunction merge (target) {\n var arguments$1 = arguments;\n\n var output = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments$1[i];\n if (source !== undefined && source !== null) {\n var key = (void 0);\n for (key in source) {\n if (hasOwn(source, key)) {\n if (isObject(source[key])) {\n output[key] = merge(output[key], source[key]);\n } else {\n output[key] = source[key];\n }\n }\n }\n }\n }\n return output\n}\n\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = isArray(a);\n var isArrayB = isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Sanitizes html special characters from input strings. For mitigating risk of XSS attacks.\n * @param rawText The raw input from the user that should be escaped.\n */\nfunction escapeHtml(rawText) {\n return rawText\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n}\n\n/**\n * Escapes html tags and special symbols from all provided params which were returned from parseArgs().params.\n * This method performs an in-place operation on the params object.\n *\n * @param {any} params Parameters as provided from `parseArgs().params`.\n * May be either an array of strings or a string->any map.\n *\n * @returns The manipulated `params` object.\n */\nfunction escapeParams(params) {\n if(params != null) {\n Object.keys(params).forEach(function (key) {\n if(typeof(params[key]) == 'string') {\n params[key] = escapeHtml(params[key]);\n }\n });\n }\n return params\n}\n\n/* */\n\nfunction extend (Vue) {\n if (!Vue.prototype.hasOwnProperty('$i18n')) {\n // $FlowFixMe\n Object.defineProperty(Vue.prototype, '$i18n', {\n get: function get () { return this._i18n }\n });\n }\n\n Vue.prototype.$t = function (key) {\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n\n var i18n = this.$i18n;\n return i18n._t.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this ].concat( values ))\n };\n\n Vue.prototype.$tc = function (key, choice) {\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n\n var i18n = this.$i18n;\n return i18n._tc.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this, choice ].concat( values ))\n };\n\n Vue.prototype.$te = function (key, locale) {\n var i18n = this.$i18n;\n return i18n._te(key, i18n.locale, i18n._getMessages(), locale)\n };\n\n Vue.prototype.$d = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).d.apply(ref, [ value ].concat( args ))\n };\n\n Vue.prototype.$n = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).n.apply(ref, [ value ].concat( args ))\n };\n}\n\n/* */\n\n/**\n * Mixin\n * \n * If `bridge` mode, empty mixin is returned,\n * else regulary mixin implementation is returned.\n */\nfunction defineMixin (bridge) {\n if ( bridge === void 0 ) bridge = false;\n\n function mounted () {\n if (this !== this.$root && this.$options.__INTLIFY_META__ && this.$el) {\n this.$el.setAttribute('data-intlify', this.$options.__INTLIFY_META__);\n }\n }\n\n return bridge\n ? { mounted: mounted } // delegate `vue-i18n-bridge` mixin implementation\n : { // regulary \n beforeCreate: function beforeCreate () {\n var options = this.$options;\n options.i18n = options.i18n || ((options.__i18nBridge || options.__i18n) ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n if ((options.__i18nBridge || options.__i18n)) {\n try {\n var localeMessages = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n var _i18n = options.__i18nBridge || options.__i18n;\n _i18n.forEach(function (resource) {\n localeMessages = merge(localeMessages, JSON.parse(resource));\n });\n Object.keys(localeMessages).forEach(function (locale) {\n options.i18n.mergeLocaleMessage(locale, localeMessages[locale]);\n });\n } catch (e) {\n if (false) {}\n }\n }\n this._i18n = options.i18n;\n this._i18nWatcher = this._i18n.watchI18nData();\n } else if (isPlainObject(options.i18n)) {\n var rootI18n = this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n\n ? this.$root.$i18n\n : null;\n // component local i18n\n if (rootI18n) {\n options.i18n.root = this.$root;\n options.i18n.formatter = rootI18n.formatter;\n options.i18n.fallbackLocale = rootI18n.fallbackLocale;\n options.i18n.formatFallbackMessages = rootI18n.formatFallbackMessages;\n options.i18n.silentTranslationWarn = rootI18n.silentTranslationWarn;\n options.i18n.silentFallbackWarn = rootI18n.silentFallbackWarn;\n options.i18n.pluralizationRules = rootI18n.pluralizationRules;\n options.i18n.preserveDirectiveContent = rootI18n.preserveDirectiveContent;\n }\n\n // init locale messages via custom blocks\n if ((options.__i18nBridge || options.__i18n)) {\n try {\n var localeMessages$1 = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n var _i18n$1 = options.__i18nBridge || options.__i18n;\n _i18n$1.forEach(function (resource) {\n localeMessages$1 = merge(localeMessages$1, JSON.parse(resource));\n });\n options.i18n.messages = localeMessages$1;\n } catch (e) {\n if (false) {}\n }\n }\n\n var ref = options.i18n;\n var sharedMessages = ref.sharedMessages;\n if (sharedMessages && isPlainObject(sharedMessages)) {\n options.i18n.messages = merge(options.i18n.messages, sharedMessages);\n }\n\n this._i18n = new VueI18n(options.i18n);\n this._i18nWatcher = this._i18n.watchI18nData();\n\n if (options.i18n.sync === undefined || !!options.i18n.sync) {\n this._localeWatcher = this.$i18n.watchLocale();\n }\n\n if (rootI18n) {\n rootI18n.onComponentInstanceCreated(this._i18n);\n }\n } else {\n if (false) {}\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n // root i18n\n this._i18n = this.$root.$i18n;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n // parent i18n\n this._i18n = options.parent.$i18n;\n }\n },\n\n beforeMount: function beforeMount () {\n var options = this.$options;\n options.i18n = options.i18n || ((options.__i18nBridge || options.__i18n) ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (isPlainObject(options.i18n)) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else {\n if (false) {}\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n }\n },\n\n mounted: mounted,\n\n beforeDestroy: function beforeDestroy () {\n if (!this._i18n) { return }\n\n var self = this;\n this.$nextTick(function () {\n if (self._subscribing) {\n self._i18n.unsubscribeDataChanging(self);\n delete self._subscribing;\n }\n\n if (self._i18nWatcher) {\n self._i18nWatcher();\n self._i18n.destroyVM();\n delete self._i18nWatcher;\n }\n\n if (self._localeWatcher) {\n self._localeWatcher();\n delete self._localeWatcher;\n }\n });\n }\n }\n}\n\n/* */\n\nvar interpolationComponent = {\n name: 'i18n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n path: {\n type: String,\n required: true\n },\n locale: {\n type: String\n },\n places: {\n type: [Array, Object]\n }\n },\n render: function render (h, ref) {\n var data = ref.data;\n var parent = ref.parent;\n var props = ref.props;\n var slots = ref.slots;\n\n var $i18n = parent.$i18n;\n if (!$i18n) {\n if (false) {}\n return\n }\n\n var path = props.path;\n var locale = props.locale;\n var places = props.places;\n var params = slots();\n var children = $i18n.i(\n path,\n locale,\n onlyHasDefaultPlace(params) || places\n ? useLegacyPlaces(params.default, places)\n : params\n );\n\n var tag = (!!props.tag && props.tag !== true) || props.tag === false ? props.tag : 'span';\n return tag ? h(tag, data, children) : children\n }\n};\n\nfunction onlyHasDefaultPlace (params) {\n var prop;\n for (prop in params) {\n if (prop !== 'default') { return false }\n }\n return Boolean(prop)\n}\n\nfunction useLegacyPlaces (children, places) {\n var params = places ? createParamsFromPlaces(places) : {};\n\n if (!children) { return params }\n\n // Filter empty text nodes\n children = children.filter(function (child) {\n return child.tag || child.text.trim() !== ''\n });\n\n var everyPlace = children.every(vnodeHasPlaceAttribute);\n if (false) {}\n\n return children.reduce(\n everyPlace ? assignChildPlace : assignChildIndex,\n params\n )\n}\n\nfunction createParamsFromPlaces (places) {\n if (false) {}\n\n return Array.isArray(places)\n ? places.reduce(assignChildIndex, {})\n : Object.assign({}, places)\n}\n\nfunction assignChildPlace (params, child) {\n if (child.data && child.data.attrs && child.data.attrs.place) {\n params[child.data.attrs.place] = child;\n }\n return params\n}\n\nfunction assignChildIndex (params, child, index) {\n params[index] = child;\n return params\n}\n\nfunction vnodeHasPlaceAttribute (vnode) {\n return Boolean(vnode.data && vnode.data.attrs && vnode.data.attrs.place)\n}\n\n/* */\n\nvar numberComponent = {\n name: 'i18n-n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n value: {\n type: Number,\n required: true\n },\n format: {\n type: [String, Object]\n },\n locale: {\n type: String\n }\n },\n render: function render (h, ref) {\n var props = ref.props;\n var parent = ref.parent;\n var data = ref.data;\n\n var i18n = parent.$i18n;\n\n if (!i18n) {\n if (false) {}\n return null\n }\n\n var key = null;\n var options = null;\n\n if (isString(props.format)) {\n key = props.format;\n } else if (isObject(props.format)) {\n if (props.format.key) {\n key = props.format.key;\n }\n\n // Filter out number format options only\n options = Object.keys(props.format).reduce(function (acc, prop) {\n var obj;\n\n if (includes(numberFormatKeys, prop)) {\n return Object.assign({}, acc, ( obj = {}, obj[prop] = props.format[prop], obj ))\n }\n return acc\n }, null);\n }\n\n var locale = props.locale || i18n.locale;\n var parts = i18n._ntp(props.value, locale, key, options);\n\n var values = parts.map(function (part, index) {\n var obj;\n\n var slot = data.scopedSlots && data.scopedSlots[part.type];\n return slot ? slot(( obj = {}, obj[part.type] = part.value, obj.index = index, obj.parts = parts, obj )) : part.value\n });\n\n var tag = (!!props.tag && props.tag !== true) || props.tag === false ? props.tag : 'span';\n return tag\n ? h(tag, {\n attrs: data.attrs,\n 'class': data['class'],\n staticClass: data.staticClass\n }, values)\n : values\n }\n};\n\n/* */\n\nfunction bind (el, binding, vnode) {\n if (!assert(el, vnode)) { return }\n\n t(el, binding, vnode);\n}\n\nfunction update (el, binding, vnode, oldVNode) {\n if (!assert(el, vnode)) { return }\n\n var i18n = vnode.context.$i18n;\n if (localeEqual(el, vnode) &&\n (looseEqual(binding.value, binding.oldValue) &&\n looseEqual(el._localeMessage, i18n.getLocaleMessage(i18n.locale)))) { return }\n\n t(el, binding, vnode);\n}\n\nfunction unbind (el, binding, vnode, oldVNode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return\n }\n\n var i18n = vnode.context.$i18n || {};\n if (!binding.modifiers.preserve && !i18n.preserveDirectiveContent) {\n el.textContent = '';\n }\n el._vt = undefined;\n delete el['_vt'];\n el._locale = undefined;\n delete el['_locale'];\n el._localeMessage = undefined;\n delete el['_localeMessage'];\n}\n\nfunction assert (el, vnode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return false\n }\n\n if (!vm.$i18n) {\n warn('VueI18n instance does not exists in Vue instance');\n return false\n }\n\n return true\n}\n\nfunction localeEqual (el, vnode) {\n var vm = vnode.context;\n return el._locale === vm.$i18n.locale\n}\n\nfunction t (el, binding, vnode) {\n var ref$1, ref$2;\n\n var value = binding.value;\n\n var ref = parseValue(value);\n var path = ref.path;\n var locale = ref.locale;\n var args = ref.args;\n var choice = ref.choice;\n if (!path && !locale && !args) {\n warn('value type not supported');\n return\n }\n\n if (!path) {\n warn('`path` is required in v-t directive');\n return\n }\n\n var vm = vnode.context;\n if (choice != null) {\n el._vt = el.textContent = (ref$1 = vm.$i18n).tc.apply(ref$1, [ path, choice ].concat( makeParams(locale, args) ));\n } else {\n el._vt = el.textContent = (ref$2 = vm.$i18n).t.apply(ref$2, [ path ].concat( makeParams(locale, args) ));\n }\n el._locale = vm.$i18n.locale;\n el._localeMessage = vm.$i18n.getLocaleMessage(vm.$i18n.locale);\n}\n\nfunction parseValue (value) {\n var path;\n var locale;\n var args;\n var choice;\n\n if (isString(value)) {\n path = value;\n } else if (isPlainObject(value)) {\n path = value.path;\n locale = value.locale;\n args = value.args;\n choice = value.choice;\n }\n\n return { path: path, locale: locale, args: args, choice: choice }\n}\n\nfunction makeParams (locale, args) {\n var params = [];\n\n locale && params.push(locale);\n if (args && (Array.isArray(args) || isPlainObject(args))) {\n params.push(args);\n }\n\n return params\n}\n\nvar Vue;\n\nfunction install (_Vue, options) {\n if ( options === void 0 ) options = { bridge: false };\n\n /* istanbul ignore if */\n if (false) {}\n install.installed = true;\n\n Vue = _Vue;\n\n var version = (Vue.version && Number(Vue.version.split('.')[0])) || -1;\n /* istanbul ignore if */\n if (false) {}\n\n extend(Vue);\n Vue.mixin(defineMixin(options.bridge));\n Vue.directive('t', { bind: bind, update: update, unbind: unbind });\n Vue.component(interpolationComponent.name, interpolationComponent);\n Vue.component(numberComponent.name, numberComponent);\n\n // use simple mergeStrategies to prevent i18n instance lose '__proto__'\n var strats = Vue.config.optionMergeStrategies;\n strats.i18n = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n };\n}\n\n/* */\n\nvar BaseFormatter = function BaseFormatter () {\n this._caches = Object.create(null);\n};\n\nBaseFormatter.prototype.interpolate = function interpolate (message, values) {\n if (!values) {\n return [message]\n }\n var tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message);\n this._caches[message] = tokens;\n }\n return compile(tokens, values)\n};\n\n\n\nvar RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nvar RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\n\nfunction parse (format) {\n var tokens = [];\n var position = 0;\n\n var text = '';\n while (position < format.length) {\n var char = format[position++];\n if (char === '{') {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n\n text = '';\n var sub = '';\n char = format[position++];\n while (char !== undefined && char !== '}') {\n sub += char;\n char = format[position++];\n }\n var isClosed = char === '}';\n\n var type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type: type });\n } else if (char === '%') {\n // when found rails i18n syntax, skip text capture\n if (format[(position)] !== '{') {\n text += char;\n }\n } else {\n text += char;\n }\n }\n\n text && tokens.push({ type: 'text', value: text });\n\n return tokens\n}\n\nfunction compile (tokens, values) {\n var compiled = [];\n var index = 0;\n\n var mode = Array.isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') { return compiled }\n\n while (index < tokens.length) {\n var token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break\n case 'named':\n if (mode === 'named') {\n compiled.push((values)[token.value]);\n } else {\n if (false) {}\n }\n break\n case 'unknown':\n if (false) {}\n break\n }\n index++;\n }\n\n return compiled\n}\n\n/* */\n\n/**\n * Path parser\n * - Inspired:\n * Vue.js Path parser\n */\n\n// actions\nvar APPEND = 0;\nvar PUSH = 1;\nvar INC_SUB_PATH_DEPTH = 2;\nvar PUSH_SUB_PATH = 3;\n\n// states\nvar BEFORE_PATH = 0;\nvar IN_PATH = 1;\nvar BEFORE_IDENT = 2;\nvar IN_IDENT = 3;\nvar IN_SUB_PATH = 4;\nvar IN_SINGLE_QUOTE = 5;\nvar IN_DOUBLE_QUOTE = 6;\nvar AFTER_PATH = 7;\nvar ERROR = 8;\n\nvar pathStateMachine = [];\n\npathStateMachine[BEFORE_PATH] = {\n 'ws': [BEFORE_PATH],\n 'ident': [IN_IDENT, APPEND],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[IN_PATH] = {\n 'ws': [IN_PATH],\n '.': [BEFORE_IDENT],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[BEFORE_IDENT] = {\n 'ws': [BEFORE_IDENT],\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND]\n};\n\npathStateMachine[IN_IDENT] = {\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND],\n 'ws': [IN_PATH, PUSH],\n '.': [BEFORE_IDENT, PUSH],\n '[': [IN_SUB_PATH, PUSH],\n 'eof': [AFTER_PATH, PUSH]\n};\n\npathStateMachine[IN_SUB_PATH] = {\n \"'\": [IN_SINGLE_QUOTE, APPEND],\n '\"': [IN_DOUBLE_QUOTE, APPEND],\n '[': [IN_SUB_PATH, INC_SUB_PATH_DEPTH],\n ']': [IN_PATH, PUSH_SUB_PATH],\n 'eof': ERROR,\n 'else': [IN_SUB_PATH, APPEND]\n};\n\npathStateMachine[IN_SINGLE_QUOTE] = {\n \"'\": [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_SINGLE_QUOTE, APPEND]\n};\n\npathStateMachine[IN_DOUBLE_QUOTE] = {\n '\"': [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_DOUBLE_QUOTE, APPEND]\n};\n\n/**\n * Check if an expression is a literal value.\n */\n\nvar literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\nfunction isLiteral (exp) {\n return literalValueRE.test(exp)\n}\n\n/**\n * Strip quotes from a string\n */\n\nfunction stripQuotes (str) {\n var a = str.charCodeAt(0);\n var b = str.charCodeAt(str.length - 1);\n return a === b && (a === 0x22 || a === 0x27)\n ? str.slice(1, -1)\n : str\n}\n\n/**\n * Determine the type of a character in a keypath.\n */\n\nfunction getPathCharType (ch) {\n if (ch === undefined || ch === null) { return 'eof' }\n\n var code = ch.charCodeAt(0);\n\n switch (code) {\n case 0x5B: // [\n case 0x5D: // ]\n case 0x2E: // .\n case 0x22: // \"\n case 0x27: // '\n return ch\n\n case 0x5F: // _\n case 0x24: // $\n case 0x2D: // -\n return 'ident'\n\n case 0x09: // Tab\n case 0x0A: // Newline\n case 0x0D: // Return\n case 0xA0: // No-break space\n case 0xFEFF: // Byte Order Mark\n case 0x2028: // Line Separator\n case 0x2029: // Paragraph Separator\n return 'ws'\n }\n\n return 'ident'\n}\n\n/**\n * Format a subPath, return its plain form if it is\n * a literal string or number. Otherwise prepend the\n * dynamic indicator (*).\n */\n\nfunction formatSubPath (path) {\n var trimmed = path.trim();\n // invalid leading 0\n if (path.charAt(0) === '0' && isNaN(path)) { return false }\n\n return isLiteral(trimmed) ? stripQuotes(trimmed) : '*' + trimmed\n}\n\n/**\n * Parse a string path into an array of segments\n */\n\nfunction parse$1 (path) {\n var keys = [];\n var index = -1;\n var mode = BEFORE_PATH;\n var subPathDepth = 0;\n var c;\n var key;\n var newChar;\n var type;\n var transition;\n var action;\n var typeMap;\n var actions = [];\n\n actions[PUSH] = function () {\n if (key !== undefined) {\n keys.push(key);\n key = undefined;\n }\n };\n\n actions[APPEND] = function () {\n if (key === undefined) {\n key = newChar;\n } else {\n key += newChar;\n }\n };\n\n actions[INC_SUB_PATH_DEPTH] = function () {\n actions[APPEND]();\n subPathDepth++;\n };\n\n actions[PUSH_SUB_PATH] = function () {\n if (subPathDepth > 0) {\n subPathDepth--;\n mode = IN_SUB_PATH;\n actions[APPEND]();\n } else {\n subPathDepth = 0;\n if (key === undefined) { return false }\n key = formatSubPath(key);\n if (key === false) {\n return false\n } else {\n actions[PUSH]();\n }\n }\n };\n\n function maybeUnescapeQuote () {\n var nextChar = path[index + 1];\n if ((mode === IN_SINGLE_QUOTE && nextChar === \"'\") ||\n (mode === IN_DOUBLE_QUOTE && nextChar === '\"')) {\n index++;\n newChar = '\\\\' + nextChar;\n actions[APPEND]();\n return true\n }\n }\n\n while (mode !== null) {\n index++;\n c = path[index];\n\n if (c === '\\\\' && maybeUnescapeQuote()) {\n continue\n }\n\n type = getPathCharType(c);\n typeMap = pathStateMachine[mode];\n transition = typeMap[type] || typeMap['else'] || ERROR;\n\n if (transition === ERROR) {\n return // parse error\n }\n\n mode = transition[0];\n action = actions[transition[1]];\n if (action) {\n newChar = transition[2];\n newChar = newChar === undefined\n ? c\n : newChar;\n if (action() === false) {\n return\n }\n }\n\n if (mode === AFTER_PATH) {\n return keys\n }\n }\n}\n\n\n\n\n\nvar I18nPath = function I18nPath () {\n this._cache = Object.create(null);\n};\n\n/**\n * External parse that check for a cache hit first\n */\nI18nPath.prototype.parsePath = function parsePath (path) {\n var hit = this._cache[path];\n if (!hit) {\n hit = parse$1(path);\n if (hit) {\n this._cache[path] = hit;\n }\n }\n return hit || []\n};\n\n/**\n * Get path value from path string\n */\nI18nPath.prototype.getPathValue = function getPathValue (obj, path) {\n if (!isObject(obj)) { return null }\n\n var paths = this.parsePath(path);\n if (paths.length === 0) {\n return null\n } else {\n var length = paths.length;\n var last = obj;\n var i = 0;\n while (i < length) {\n var value = last[paths[i]];\n if (value === undefined || value === null) {\n return null\n }\n last = value;\n i++;\n }\n\n return last\n }\n};\n\n/* */\n\n\n\nvar htmlTagMatcher = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\nvar linkKeyMatcher = /(?:@(?:\\.[a-zA-Z]+)?:(?:[\\w\\-_|./]+|\\([\\w\\-_:|./]+\\)))/g;\nvar linkKeyPrefixMatcher = /^@(?:\\.([a-zA-Z]+))?:/;\nvar bracketsMatcher = /[()]/g;\nvar defaultModifiers = {\n 'upper': function (str) { return str.toLocaleUpperCase(); },\n 'lower': function (str) { return str.toLocaleLowerCase(); },\n 'capitalize': function (str) { return (\"\" + (str.charAt(0).toLocaleUpperCase()) + (str.substr(1))); }\n};\n\nvar defaultFormatter = new BaseFormatter();\n\nvar VueI18n = function VueI18n (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #290\n /* istanbul ignore if */\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n var locale = options.locale || 'en-US';\n var fallbackLocale = options.fallbackLocale === false\n ? false\n : options.fallbackLocale || 'en-US';\n var messages = options.messages || {};\n var dateTimeFormats = options.dateTimeFormats || options.datetimeFormats || {};\n var numberFormats = options.numberFormats || {};\n\n this._vm = null;\n this._formatter = options.formatter || defaultFormatter;\n this._modifiers = options.modifiers || {};\n this._missing = options.missing || null;\n this._root = options.root || null;\n this._sync = options.sync === undefined ? true : !!options.sync;\n this._fallbackRoot = options.fallbackRoot === undefined\n ? true\n : !!options.fallbackRoot;\n this._fallbackRootWithEmptyString = options.fallbackRootWithEmptyString === undefined\n ? true\n : !!options.fallbackRootWithEmptyString;\n this._formatFallbackMessages = options.formatFallbackMessages === undefined\n ? false\n : !!options.formatFallbackMessages;\n this._silentTranslationWarn = options.silentTranslationWarn === undefined\n ? false\n : options.silentTranslationWarn;\n this._silentFallbackWarn = options.silentFallbackWarn === undefined\n ? false\n : !!options.silentFallbackWarn;\n this._dateTimeFormatters = {};\n this._numberFormatters = {};\n this._path = new I18nPath();\n this._dataListeners = new Set();\n this._componentInstanceCreatedListener = options.componentInstanceCreatedListener || null;\n this._preserveDirectiveContent = options.preserveDirectiveContent === undefined\n ? false\n : !!options.preserveDirectiveContent;\n this.pluralizationRules = options.pluralizationRules || {};\n this._warnHtmlInMessage = options.warnHtmlInMessage || 'off';\n this._postTranslation = options.postTranslation || null;\n this._escapeParameterHtml = options.escapeParameterHtml || false;\n\n if ('__VUE_I18N_BRIDGE__' in options) {\n this.__VUE_I18N_BRIDGE__ = options.__VUE_I18N_BRIDGE__;\n }\n\n /**\n * @param choice {number} a choice index given by the input to $tc: `$tc('path.to.rule', choiceIndex)`\n * @param choicesLength {number} an overall amount of available choices\n * @returns a final choice index\n */\n this.getChoiceIndex = function (choice, choicesLength) {\n var thisPrototype = Object.getPrototypeOf(this$1);\n if (thisPrototype && thisPrototype.getChoiceIndex) {\n var prototypeGetChoiceIndex = (thisPrototype.getChoiceIndex);\n return (prototypeGetChoiceIndex).call(this$1, choice, choicesLength)\n }\n\n // Default (old) getChoiceIndex implementation - english-compatible\n var defaultImpl = function (_choice, _choicesLength) {\n _choice = Math.abs(_choice);\n\n if (_choicesLength === 2) {\n return _choice\n ? _choice > 1\n ? 1\n : 0\n : 1\n }\n\n return _choice ? Math.min(_choice, 2) : 0\n };\n\n if (this$1.locale in this$1.pluralizationRules) {\n return this$1.pluralizationRules[this$1.locale].apply(this$1, [choice, choicesLength])\n } else {\n return defaultImpl(choice, choicesLength)\n }\n };\n\n\n this._exist = function (message, key) {\n if (!message || !key) { return false }\n if (!isNull(this$1._path.getPathValue(message, key))) { return true }\n // fallback for flat key\n if (message[key]) { return true }\n return false\n };\n\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n\n this._initVM({\n locale: locale,\n fallbackLocale: fallbackLocale,\n messages: messages,\n dateTimeFormats: dateTimeFormats,\n numberFormats: numberFormats\n });\n};\n\nvar prototypeAccessors = { vm: { configurable: true },messages: { configurable: true },dateTimeFormats: { configurable: true },numberFormats: { configurable: true },availableLocales: { configurable: true },locale: { configurable: true },fallbackLocale: { configurable: true },formatFallbackMessages: { configurable: true },missing: { configurable: true },formatter: { configurable: true },silentTranslationWarn: { configurable: true },silentFallbackWarn: { configurable: true },preserveDirectiveContent: { configurable: true },warnHtmlInMessage: { configurable: true },postTranslation: { configurable: true },sync: { configurable: true } };\n\nVueI18n.prototype._checkLocaleMessage = function _checkLocaleMessage (locale, level, message) {\n var paths = [];\n\n var fn = function (level, locale, message, paths) {\n if (isPlainObject(message)) {\n Object.keys(message).forEach(function (key) {\n var val = message[key];\n if (isPlainObject(val)) {\n paths.push(key);\n paths.push('.');\n fn(level, locale, val, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push(key);\n fn(level, locale, val, paths);\n paths.pop();\n }\n });\n } else if (isArray(message)) {\n message.forEach(function (item, index) {\n if (isPlainObject(item)) {\n paths.push((\"[\" + index + \"]\"));\n paths.push('.');\n fn(level, locale, item, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push((\"[\" + index + \"]\"));\n fn(level, locale, item, paths);\n paths.pop();\n }\n });\n } else if (isString(message)) {\n var ret = htmlTagMatcher.test(message);\n if (ret) {\n var msg = \"Detected HTML in message '\" + message + \"' of keypath '\" + (paths.join('')) + \"' at '\" + locale + \"'. Consider component interpolation with '' to avoid XSS. See https://bit.ly/2ZqJzkp\";\n if (level === 'warn') {\n warn(msg);\n } else if (level === 'error') {\n error(msg);\n }\n }\n }\n };\n\n fn(level, locale, message, paths);\n};\n\nVueI18n.prototype._initVM = function _initVM (data) {\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n this._vm = new Vue({ data: data, __VUE18N__INSTANCE__: true });\n Vue.config.silent = silent;\n};\n\nVueI18n.prototype.destroyVM = function destroyVM () {\n this._vm.$destroy();\n};\n\nVueI18n.prototype.subscribeDataChanging = function subscribeDataChanging (vm) {\n this._dataListeners.add(vm);\n};\n\nVueI18n.prototype.unsubscribeDataChanging = function unsubscribeDataChanging (vm) {\n remove(this._dataListeners, vm);\n};\n\nVueI18n.prototype.watchI18nData = function watchI18nData () {\n var this$1 = this;\n return this._vm.$watch('$data', function () {\n var listeners = arrayFrom(this$1._dataListeners);\n var i = listeners.length;\n while(i--) {\n Vue.nextTick(function () {\n listeners[i] && listeners[i].$forceUpdate();\n });\n }\n }, { deep: true })\n};\n\nVueI18n.prototype.watchLocale = function watchLocale (composer) {\n if (!composer) {\n /* istanbul ignore if */\n if (!this._sync || !this._root) { return null }\n var target = this._vm;\n return this._root.$i18n.vm.$watch('locale', function (val) {\n target.$set(target, 'locale', val);\n target.$forceUpdate();\n }, { immediate: true })\n } else {\n // deal with vue-i18n-bridge\n if (!this.__VUE_I18N_BRIDGE__) { return null }\n var self = this;\n var target$1 = this._vm;\n return this.vm.$watch('locale', function (val) {\n target$1.$set(target$1, 'locale', val);\n if (self.__VUE_I18N_BRIDGE__ && composer) {\n composer.locale.value = val;\n }\n target$1.$forceUpdate();\n }, { immediate: true })\n }\n};\n\nVueI18n.prototype.onComponentInstanceCreated = function onComponentInstanceCreated (newI18n) {\n if (this._componentInstanceCreatedListener) {\n this._componentInstanceCreatedListener(newI18n, this);\n }\n};\n\nprototypeAccessors.vm.get = function () { return this._vm };\n\nprototypeAccessors.messages.get = function () { return looseClone(this._getMessages()) };\nprototypeAccessors.dateTimeFormats.get = function () { return looseClone(this._getDateTimeFormats()) };\nprototypeAccessors.numberFormats.get = function () { return looseClone(this._getNumberFormats()) };\nprototypeAccessors.availableLocales.get = function () { return Object.keys(this.messages).sort() };\n\nprototypeAccessors.locale.get = function () { return this._vm.locale };\nprototypeAccessors.locale.set = function (locale) {\n this._vm.$set(this._vm, 'locale', locale);\n};\n\nprototypeAccessors.fallbackLocale.get = function () { return this._vm.fallbackLocale };\nprototypeAccessors.fallbackLocale.set = function (locale) {\n this._localeChainCache = {};\n this._vm.$set(this._vm, 'fallbackLocale', locale);\n};\n\nprototypeAccessors.formatFallbackMessages.get = function () { return this._formatFallbackMessages };\nprototypeAccessors.formatFallbackMessages.set = function (fallback) { this._formatFallbackMessages = fallback; };\n\nprototypeAccessors.missing.get = function () { return this._missing };\nprototypeAccessors.missing.set = function (handler) { this._missing = handler; };\n\nprototypeAccessors.formatter.get = function () { return this._formatter };\nprototypeAccessors.formatter.set = function (formatter) { this._formatter = formatter; };\n\nprototypeAccessors.silentTranslationWarn.get = function () { return this._silentTranslationWarn };\nprototypeAccessors.silentTranslationWarn.set = function (silent) { this._silentTranslationWarn = silent; };\n\nprototypeAccessors.silentFallbackWarn.get = function () { return this._silentFallbackWarn };\nprototypeAccessors.silentFallbackWarn.set = function (silent) { this._silentFallbackWarn = silent; };\n\nprototypeAccessors.preserveDirectiveContent.get = function () { return this._preserveDirectiveContent };\nprototypeAccessors.preserveDirectiveContent.set = function (preserve) { this._preserveDirectiveContent = preserve; };\n\nprototypeAccessors.warnHtmlInMessage.get = function () { return this._warnHtmlInMessage };\nprototypeAccessors.warnHtmlInMessage.set = function (level) {\n var this$1 = this;\n\n var orgLevel = this._warnHtmlInMessage;\n this._warnHtmlInMessage = level;\n if (orgLevel !== level && (level === 'warn' || level === 'error')) {\n var messages = this._getMessages();\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n};\n\nprototypeAccessors.postTranslation.get = function () { return this._postTranslation };\nprototypeAccessors.postTranslation.set = function (handler) { this._postTranslation = handler; };\n\nprototypeAccessors.sync.get = function () { return this._sync };\nprototypeAccessors.sync.set = function (val) { this._sync = val; };\n\nVueI18n.prototype._getMessages = function _getMessages () { return this._vm.messages };\nVueI18n.prototype._getDateTimeFormats = function _getDateTimeFormats () { return this._vm.dateTimeFormats };\nVueI18n.prototype._getNumberFormats = function _getNumberFormats () { return this._vm.numberFormats };\n\nVueI18n.prototype._warnDefault = function _warnDefault (locale, key, result, vm, values, interpolateMode) {\n if (!isNull(result)) { return result }\n if (this._missing) {\n var missingRet = this._missing.apply(null, [locale, key, vm, values]);\n if (isString(missingRet)) {\n return missingRet\n }\n } else {\n if (false) {}\n }\n\n if (this._formatFallbackMessages) {\n var parsedArgs = parseArgs.apply(void 0, values);\n return this._render(key, interpolateMode, parsedArgs.params, key)\n } else {\n return key\n }\n};\n\nVueI18n.prototype._isFallbackRoot = function _isFallbackRoot (val) {\n return (this._fallbackRootWithEmptyString? !val : isNull(val)) && !isNull(this._root) && this._fallbackRoot\n};\n\nVueI18n.prototype._isSilentFallbackWarn = function _isSilentFallbackWarn (key) {\n return this._silentFallbackWarn instanceof RegExp\n ? this._silentFallbackWarn.test(key)\n : this._silentFallbackWarn\n};\n\nVueI18n.prototype._isSilentFallback = function _isSilentFallback (locale, key) {\n return this._isSilentFallbackWarn(key) && (this._isFallbackRoot() || locale !== this.fallbackLocale)\n};\n\nVueI18n.prototype._isSilentTranslationWarn = function _isSilentTranslationWarn (key) {\n return this._silentTranslationWarn instanceof RegExp\n ? this._silentTranslationWarn.test(key)\n : this._silentTranslationWarn\n};\n\nVueI18n.prototype._interpolate = function _interpolate (\n locale,\n message,\n key,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n if (!message) { return null }\n\n var pathRet = this._path.getPathValue(message, key);\n if (isArray(pathRet) || isPlainObject(pathRet)) { return pathRet }\n\n var ret;\n if (isNull(pathRet)) {\n /* istanbul ignore else */\n if (isPlainObject(message)) {\n ret = message[key];\n if (!(isString(ret) || isFunction(ret))) {\n if (false) {}\n return null\n }\n } else {\n return null\n }\n } else {\n /* istanbul ignore else */\n if (isString(pathRet) || isFunction(pathRet)) {\n ret = pathRet;\n } else {\n if (false) {}\n return null\n }\n }\n\n // Check for the existence of links within the translated string\n if (isString(ret) && (ret.indexOf('@:') >= 0 || ret.indexOf('@.') >= 0)) {\n ret = this._link(locale, message, ret, host, 'raw', values, visitedLinkStack);\n }\n\n return this._render(ret, interpolateMode, values, key)\n};\n\nVueI18n.prototype._link = function _link (\n locale,\n message,\n str,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n var ret = str;\n\n // Match all the links within the local\n // We are going to replace each of\n // them with its translation\n var matches = ret.match(linkKeyMatcher);\n\n // eslint-disable-next-line no-autofix/prefer-const\n for (var idx in matches) {\n // ie compatible: filter custom array\n // prototype method\n if (!matches.hasOwnProperty(idx)) {\n continue\n }\n var link = matches[idx];\n var linkKeyPrefixMatches = link.match(linkKeyPrefixMatcher);\n var linkPrefix = linkKeyPrefixMatches[0];\n var formatterName = linkKeyPrefixMatches[1];\n\n // Remove the leading @:, @.case: and the brackets\n var linkPlaceholder = link.replace(linkPrefix, '').replace(bracketsMatcher, '');\n\n if (includes(visitedLinkStack, linkPlaceholder)) {\n if (false) {}\n return ret\n }\n visitedLinkStack.push(linkPlaceholder);\n\n // Translate the link\n var translated = this._interpolate(\n locale, message, linkPlaceholder, host,\n interpolateMode === 'raw' ? 'string' : interpolateMode,\n interpolateMode === 'raw' ? undefined : values,\n visitedLinkStack\n );\n\n if (this._isFallbackRoot(translated)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n var root = this._root.$i18n;\n translated = root._translate(\n root._getMessages(), root.locale, root.fallbackLocale,\n linkPlaceholder, host, interpolateMode, values\n );\n }\n translated = this._warnDefault(\n locale, linkPlaceholder, translated, host,\n isArray(values) ? values : [values],\n interpolateMode\n );\n\n if (this._modifiers.hasOwnProperty(formatterName)) {\n translated = this._modifiers[formatterName](translated);\n } else if (defaultModifiers.hasOwnProperty(formatterName)) {\n translated = defaultModifiers[formatterName](translated);\n }\n\n visitedLinkStack.pop();\n\n // Replace the link with the translated\n ret = !translated ? ret : ret.replace(link, translated);\n }\n\n return ret\n};\n\nVueI18n.prototype._createMessageContext = function _createMessageContext (values, formatter, path, interpolateMode) {\n var this$1 = this;\n\n var _list = isArray(values) ? values : [];\n var _named = isObject(values) ? values : {};\n var list = function (index) { return _list[index]; };\n var named = function (key) { return _named[key]; };\n var messages = this._getMessages();\n var locale = this.locale;\n\n return {\n list: list,\n named: named,\n values: values,\n formatter: formatter,\n path: path,\n messages: messages,\n locale: locale,\n linked: function (linkedKey) { return this$1._interpolate(locale, messages[locale] || {}, linkedKey, null, interpolateMode, undefined, [linkedKey]); }\n }\n};\n\nVueI18n.prototype._render = function _render (message, interpolateMode, values, path) {\n if (isFunction(message)) {\n return message(\n this._createMessageContext(values, this._formatter || defaultFormatter, path, interpolateMode)\n )\n }\n\n var ret = this._formatter.interpolate(message, values, path);\n\n // If the custom formatter refuses to work - apply the default one\n if (!ret) {\n ret = defaultFormatter.interpolate(message, values, path);\n }\n\n // if interpolateMode is **not** 'string' ('row'),\n // return the compiled data (e.g. ['foo', VNode, 'bar']) with formatter\n return interpolateMode === 'string' && !isString(ret) ? ret.join('') : ret\n};\n\nVueI18n.prototype._appendItemToChain = function _appendItemToChain (chain, item, blocks) {\n var follow = false;\n if (!includes(chain, item)) {\n follow = true;\n if (item) {\n follow = item[item.length - 1] !== '!';\n item = item.replace(/!/g, '');\n chain.push(item);\n if (blocks && blocks[item]) {\n follow = blocks[item];\n }\n }\n }\n return follow\n};\n\nVueI18n.prototype._appendLocaleToChain = function _appendLocaleToChain (chain, locale, blocks) {\n var follow;\n var tokens = locale.split('-');\n do {\n var item = tokens.join('-');\n follow = this._appendItemToChain(chain, item, blocks);\n tokens.splice(-1, 1);\n } while (tokens.length && (follow === true))\n return follow\n};\n\nVueI18n.prototype._appendBlockToChain = function _appendBlockToChain (chain, block, blocks) {\n var follow = true;\n for (var i = 0; (i < block.length) && (isBoolean(follow)); i++) {\n var locale = block[i];\n if (isString(locale)) {\n follow = this._appendLocaleToChain(chain, locale, blocks);\n }\n }\n return follow\n};\n\nVueI18n.prototype._getLocaleChain = function _getLocaleChain (start, fallbackLocale) {\n if (start === '') { return [] }\n\n if (!this._localeChainCache) {\n this._localeChainCache = {};\n }\n\n var chain = this._localeChainCache[start];\n if (!chain) {\n if (!fallbackLocale) {\n fallbackLocale = this.fallbackLocale;\n }\n chain = [];\n\n // first block defined by start\n var block = [start];\n\n // while any intervening block found\n while (isArray(block)) {\n block = this._appendBlockToChain(\n chain,\n block,\n fallbackLocale\n );\n }\n\n // last block defined by default\n var defaults;\n if (isArray(fallbackLocale)) {\n defaults = fallbackLocale;\n } else if (isObject(fallbackLocale)) {\n /* $FlowFixMe */\n if (fallbackLocale['default']) {\n defaults = fallbackLocale['default'];\n } else {\n defaults = null;\n }\n } else {\n defaults = fallbackLocale;\n }\n\n // convert defaults to array\n if (isString(defaults)) {\n block = [defaults];\n } else {\n block = defaults;\n }\n if (block) {\n this._appendBlockToChain(\n chain,\n block,\n null\n );\n }\n this._localeChainCache[start] = chain;\n }\n return chain\n};\n\nVueI18n.prototype._translate = function _translate (\n messages,\n locale,\n fallback,\n key,\n host,\n interpolateMode,\n args\n) {\n var chain = this._getLocaleChain(locale, fallback);\n var res;\n for (var i = 0; i < chain.length; i++) {\n var step = chain[i];\n res =\n this._interpolate(step, messages[step], key, host, interpolateMode, args, [key]);\n if (!isNull(res)) {\n if (step !== locale && \"production\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to translate the keypath '\" + key + \"' with '\" + step + \"' locale.\"));\n }\n return res\n }\n }\n return null\n};\n\nVueI18n.prototype._t = function _t (key, _locale, messages, host) {\n var ref;\n\n var values = [], len = arguments.length - 4;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 4 ];\n if (!key) { return '' }\n\n var parsedArgs = parseArgs.apply(void 0, values);\n if(this._escapeParameterHtml) {\n parsedArgs.params = escapeParams(parsedArgs.params);\n }\n\n var locale = parsedArgs.locale || _locale;\n\n var ret = this._translate(\n messages, locale, this.fallbackLocale, key,\n host, 'string', parsedArgs.params\n );\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return (ref = this._root).$t.apply(ref, [ key ].concat( values ))\n } else {\n ret = this._warnDefault(locale, key, ret, host, values, 'string');\n if (this._postTranslation && ret !== null && ret !== undefined) {\n ret = this._postTranslation(ret, key);\n }\n return ret\n }\n};\n\nVueI18n.prototype.t = function t (key) {\n var ref;\n\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n return (ref = this)._t.apply(ref, [ key, this.locale, this._getMessages(), null ].concat( values ))\n};\n\nVueI18n.prototype._i = function _i (key, locale, messages, host, values) {\n var ret =\n this._translate(messages, locale, this.fallbackLocale, key, host, 'raw', values);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.i(key, locale, values)\n } else {\n return this._warnDefault(locale, key, ret, host, [values], 'raw')\n }\n};\n\nVueI18n.prototype.i = function i (key, locale, values) {\n /* istanbul ignore if */\n if (!key) { return '' }\n\n if (!isString(locale)) {\n locale = this.locale;\n }\n\n return this._i(key, locale, this._getMessages(), null, values)\n};\n\nVueI18n.prototype._tc = function _tc (\n key,\n _locale,\n messages,\n host,\n choice\n) {\n var ref;\n\n var values = [], len = arguments.length - 5;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 5 ];\n if (!key) { return '' }\n if (choice === undefined) {\n choice = 1;\n }\n\n var predefined = { 'count': choice, 'n': choice };\n var parsedArgs = parseArgs.apply(void 0, values);\n parsedArgs.params = Object.assign(predefined, parsedArgs.params);\n values = parsedArgs.locale === null ? [parsedArgs.params] : [parsedArgs.locale, parsedArgs.params];\n return this.fetchChoice((ref = this)._t.apply(ref, [ key, _locale, messages, host ].concat( values )), choice)\n};\n\nVueI18n.prototype.fetchChoice = function fetchChoice (message, choice) {\n /* istanbul ignore if */\n if (!message || !isString(message)) { return null }\n var choices = message.split('|');\n\n choice = this.getChoiceIndex(choice, choices.length);\n if (!choices[choice]) { return message }\n return choices[choice].trim()\n};\n\nVueI18n.prototype.tc = function tc (key, choice) {\n var ref;\n\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n return (ref = this)._tc.apply(ref, [ key, this.locale, this._getMessages(), null, choice ].concat( values ))\n};\n\nVueI18n.prototype._te = function _te (key, locale, messages) {\n var args = [], len = arguments.length - 3;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 3 ];\n\n var _locale = parseArgs.apply(void 0, args).locale || locale;\n return this._exist(messages[_locale], key)\n};\n\nVueI18n.prototype.te = function te (key, locale) {\n return this._te(key, this.locale, this._getMessages(), locale)\n};\n\nVueI18n.prototype.getLocaleMessage = function getLocaleMessage (locale) {\n return looseClone(this._vm.messages[locale] || {})\n};\n\nVueI18n.prototype.setLocaleMessage = function setLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, message);\n};\n\nVueI18n.prototype.mergeLocaleMessage = function mergeLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, merge(\n typeof this._vm.messages[locale] !== 'undefined' && Object.keys(this._vm.messages[locale]).length\n ? Object.assign({}, this._vm.messages[locale])\n : {},\n message\n ));\n};\n\nVueI18n.prototype.getDateTimeFormat = function getDateTimeFormat (locale) {\n return looseClone(this._vm.dateTimeFormats[locale] || {})\n};\n\nVueI18n.prototype.setDateTimeFormat = function setDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, format);\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype.mergeDateTimeFormat = function mergeDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, merge(this._vm.dateTimeFormats[locale] || {}, format));\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype._clearDateTimeFormat = function _clearDateTimeFormat (locale, format) {\n // eslint-disable-next-line no-autofix/prefer-const\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._dateTimeFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._dateTimeFormatters[id];\n }\n};\n\nVueI18n.prototype._localizeDateTime = function _localizeDateTime (\n value,\n locale,\n fallback,\n dateTimeFormats,\n key,\n options\n) {\n var _locale = locale;\n var formats = dateTimeFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = dateTimeFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && \"production\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' datetime formats from '\" + current + \"' datetime formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n\n var formatter;\n if (options) {\n formatter = new Intl.DateTimeFormat(_locale, Object.assign({}, format, options));\n } else {\n var id = _locale + \"__\" + key;\n formatter = this._dateTimeFormatters[id];\n if (!formatter) {\n formatter = this._dateTimeFormatters[id] = new Intl.DateTimeFormat(_locale, format);\n }\n }\n\n return formatter.format(value)\n }\n};\n\nVueI18n.prototype._d = function _d (value, locale, key, options) {\n /* istanbul ignore if */\n if (false) {}\n\n if (!key) {\n var dtf = !options ? new Intl.DateTimeFormat(locale) : new Intl.DateTimeFormat(locale, options);\n return dtf.format(value)\n }\n\n var ret =\n this._localizeDateTime(value, locale, this.fallbackLocale, this._getDateTimeFormats(), key, options);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.d(value, key, locale)\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.d = function d (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n var options = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n }\n\n options = Object.keys(args[0]).reduce(function (acc, key) {\n var obj;\n\n if (includes(dateTimeFormatKeys, key)) {\n return Object.assign({}, acc, ( obj = {}, obj[key] = args[0][key], obj ))\n }\n return acc\n }, null);\n\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._d(value, locale, key, options)\n};\n\nVueI18n.prototype.getNumberFormat = function getNumberFormat (locale) {\n return looseClone(this._vm.numberFormats[locale] || {})\n};\n\nVueI18n.prototype.setNumberFormat = function setNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, format);\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype.mergeNumberFormat = function mergeNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, merge(this._vm.numberFormats[locale] || {}, format));\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype._clearNumberFormat = function _clearNumberFormat (locale, format) {\n // eslint-disable-next-line no-autofix/prefer-const\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._numberFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._numberFormatters[id];\n }\n};\n\nVueI18n.prototype._getNumberFormatter = function _getNumberFormatter (\n value,\n locale,\n fallback,\n numberFormats,\n key,\n options\n) {\n var _locale = locale;\n var formats = numberFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = numberFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && \"production\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' number formats from '\" + current + \"' number formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n\n var formatter;\n if (options) {\n // If options specified - create one time number formatter\n formatter = new Intl.NumberFormat(_locale, Object.assign({}, format, options));\n } else {\n var id = _locale + \"__\" + key;\n formatter = this._numberFormatters[id];\n if (!formatter) {\n formatter = this._numberFormatters[id] = new Intl.NumberFormat(_locale, format);\n }\n }\n return formatter\n }\n};\n\nVueI18n.prototype._n = function _n (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (false) {}\n return ''\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.format(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.format(value);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.n(value, Object.assign({}, { key: key, locale: locale }, options))\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.n = function n (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n var options = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n\n // Filter out number format options only\n options = Object.keys(args[0]).reduce(function (acc, key) {\n var obj;\n\n if (includes(numberFormatKeys, key)) {\n return Object.assign({}, acc, ( obj = {}, obj[key] = args[0][key], obj ))\n }\n return acc\n }, null);\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._n(value, locale, key, options)\n};\n\nVueI18n.prototype._ntp = function _ntp (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (false) {}\n return []\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.formatToParts(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.formatToParts(value);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n._ntp(value, locale, key, options)\n } else {\n return ret || []\n }\n};\n\nObject.defineProperties( VueI18n.prototype, prototypeAccessors );\n\nvar availabilities;\n// $FlowFixMe\nObject.defineProperty(VueI18n, 'availabilities', {\n get: function get () {\n if (!availabilities) {\n var intlDefined = typeof Intl !== 'undefined';\n availabilities = {\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\n };\n }\n\n return availabilities\n }\n});\n\nVueI18n.install = install;\nVueI18n.version = '8.28.2';\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (VueI18n);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWkxOG4vZGlzdC92dWUtaTE4bi5lc20uanM/YTkyNSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBLFVBQVU7QUFDVjs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsNEJBQTRCLG9CQUFvQixFQUFFO0FBQ2xEO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQSxpQkFBaUIsc0JBQXNCO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVztB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QkFBNEI7O0FBRW5EO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSwyQkFBMkI7O0FBRTNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVCxjQUFjLEtBQXFDLEVBQUUsRUFFMUM7QUFDWDtBQUNBO0FBQ0E7QUFDQSxZQUFZLEtBQXFDLEVBQUUsRUFFMUM7QUFDVDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSx3Q0FBd0M7O0FBRXhDOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsOENBQThDOztBQUU5QztBQUNB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QTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsaUVBQWlFO0FBQ2pFLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQyxFQUFFLEVBRTFDO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQWdILEVBQUUsRUFFckg7QUFDTDtBQUNBLHNCQUFzQjtBQUN0QixxREFBcUQsR0FBRywyQkFBMkI7QUFDbkYsR0FBRztBQUNIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsaUNBQWlDLGlCQUFpQjtBQUNsRDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQyxFQUFFLEVBRTFDO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQTRFLEVBQUUsRUFFakY7QUFDTDtBQUNBLHNCQUFzQjtBQUN0QjtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBOztBQUVlLGdFQUFPLEVBQUMiLCJmaWxlIjoiMjYzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiB2dWUtaTE4biB2OC4yOC4yIFxuICogKGMpIDIwMjIga2F6dXlhIGthd2FndWNoaVxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLlxuICovXG4vKiAgKi9cblxuLyoqXG4gKiBjb25zdGFudHNcbiAqL1xuXG52YXIgbnVtYmVyRm9ybWF0S2V5cyA9IFtcbiAgJ2NvbXBhY3REaXNwbGF5JyxcbiAgJ2N1cnJlbmN5JyxcbiAgJ2N1cnJlbmN5RGlzcGxheScsXG4gICdjdXJyZW5jeVNpZ24nLFxuICAnbG9jYWxlTWF0Y2hlcicsXG4gICdub3RhdGlvbicsXG4gICdudW1iZXJpbmdTeXN0ZW0nLFxuICAnc2lnbkRpc3BsYXknLFxuICAnc3R5bGUnLFxuICAndW5pdCcsXG4gICd1bml0RGlzcGxheScsXG4gICd1c2VHcm91cGluZycsXG4gICdtaW5pbXVtSW50ZWdlckRpZ2l0cycsXG4gICdtaW5pbXVtRnJhY3Rpb25EaWdpdHMnLFxuICAnbWF4aW11bUZyYWN0aW9uRGlnaXRzJyxcbiAgJ21pbmltdW1TaWduaWZpY2FudERpZ2l0cycsXG4gICdtYXhpbXVtU2lnbmlmaWNhbnREaWdpdHMnXG5dO1xuXG52YXIgZGF0ZVRpbWVGb3JtYXRLZXlzID0gW1xuICAnZGF0ZVN0eWxlJyxcbiAgJ3RpbWVTdHlsZScsXG4gICdjYWxlbmRhcicsXG4gICdsb2NhbGVNYXRjaGVyJyxcbiAgXCJob3VyMTJcIixcbiAgXCJob3VyQ3ljbGVcIixcbiAgXCJ0aW1lWm9uZVwiLFxuICBcImZvcm1hdE1hdGNoZXJcIixcbiAgJ3dlZWtkYXknLFxuICAnZXJhJyxcbiAgJ3llYXInLFxuICAnbW9udGgnLFxuICAnZGF5JyxcbiAgJ2hvdXInLFxuICAnbWludXRlJyxcbiAgJ3NlY29uZCcsXG4gICd0aW1lWm9uZU5hbWUnIF07XG5cbi8qKlxuICogdXRpbGl0aWVzXG4gKi9cblxuZnVuY3Rpb24gd2FybiAobXNnLCBlcnIpIHtcbiAgaWYgKHR5cGVvZiBjb25zb2xlICE9PSAndW5kZWZpbmVkJykge1xuICAgIGNvbnNvbGUud2FybignW3Z1ZS1pMThuXSAnICsgbXNnKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoZXJyKSB7XG4gICAgICBjb25zb2xlLndhcm4oZXJyLnN0YWNrKTtcbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gZXJyb3IgKG1zZywgZXJyKSB7XG4gIGlmICh0eXBlb2YgY29uc29sZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBjb25zb2xlLmVycm9yKCdbdnVlLWkxOG5dICcgKyBtc2cpO1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmIChlcnIpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyLnN0YWNrKTtcbiAgICB9XG4gIH1cbn1cblxudmFyIGlzQXJyYXkgPSBBcnJheS5pc0FycmF5O1xuXG5mdW5jdGlvbiBpc09iamVjdCAob2JqKSB7XG4gIHJldHVybiBvYmogIT09IG51bGwgJiYgdHlwZW9mIG9iaiA9PT0gJ29iamVjdCdcbn1cblxuZnVuY3Rpb24gaXNCb29sZWFuICh2YWwpIHtcbiAgcmV0dXJuIHR5cGVvZiB2YWwgPT09ICdib29sZWFuJ1xufVxuXG5mdW5jdGlvbiBpc1N0cmluZyAodmFsKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsID09PSAnc3RyaW5nJ1xufVxuXG52YXIgdG9TdHJpbmcgPSBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO1xudmFyIE9CSkVDVF9TVFJJTkcgPSAnW29iamVjdCBPYmplY3RdJztcbmZ1bmN0aW9uIGlzUGxhaW5PYmplY3QgKG9iaikge1xuICByZXR1cm4gdG9TdHJpbmcuY2FsbChvYmopID09PSBPQkpFQ1RfU1RSSU5HXG59XG5cbmZ1bmN0aW9uIGlzTnVsbCAodmFsKSB7XG4gIHJldHVybiB2YWwgPT09IG51bGwgfHwgdmFsID09PSB1bmRlZmluZWRcbn1cblxuZnVuY3Rpb24gaXNGdW5jdGlvbiAodmFsKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsID09PSAnZnVuY3Rpb24nXG59XG5cbmZ1bmN0aW9uIHBhcnNlQXJncyAoKSB7XG4gIHZhciBhcmdzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGg7XG4gIHdoaWxlICggbGVuLS0gKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuIF07XG5cbiAgdmFyIGxvY2FsZSA9IG51bGw7XG4gIHZhciBwYXJhbXMgPSBudWxsO1xuICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHtcbiAgICBpZiAoaXNPYmplY3QoYXJnc1swXSkgfHwgaXNBcnJheShhcmdzWzBdKSkge1xuICAgICAgcGFyYW1zID0gYXJnc1swXTtcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJykge1xuICAgICAgbG9jYWxlID0gYXJnc1swXTtcbiAgICB9XG4gIH0gZWxzZSBpZiAoYXJncy5sZW5ndGggPT09IDIpIHtcbiAgICBpZiAodHlwZW9mIGFyZ3NbMF0gPT09ICdzdHJpbmcnKSB7XG4gICAgICBsb2NhbGUgPSBhcmdzWzBdO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoaXNPYmplY3QoYXJnc1sxXSkgfHwgaXNBcnJheShhcmdzWzFdKSkge1xuICAgICAgcGFyYW1zID0gYXJnc1sxXTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4geyBsb2NhbGU6IGxvY2FsZSwgcGFyYW1zOiBwYXJhbXMgfVxufVxuXG5mdW5jdGlvbiBsb29zZUNsb25lIChvYmopIHtcbiAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkob2JqKSlcbn1cblxuZnVuY3Rpb24gcmVtb3ZlIChhcnIsIGl0ZW0pIHtcbiAgaWYgKGFyci5kZWxldGUoaXRlbSkpIHtcbiAgICByZXR1cm4gYXJyXG4gIH1cbn1cblxuZnVuY3Rpb24gYXJyYXlGcm9tIChhcnIpIHtcbiAgdmFyIHJldCA9IFtdO1xuICBhcnIuZm9yRWFjaChmdW5jdGlvbiAoYSkgeyByZXR1cm4gcmV0LnB1c2goYSk7IH0pO1xuICByZXR1cm4gcmV0XG59XG5cbmZ1bmN0aW9uIGluY2x1ZGVzIChhcnIsIGl0ZW0pIHtcbiAgcmV0dXJuICEhfmFyci5pbmRleE9mKGl0ZW0pXG59XG5cbnZhciBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7XG5mdW5jdGlvbiBoYXNPd24gKG9iaiwga2V5KSB7XG4gIHJldHVybiBoYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwga2V5KVxufVxuXG5mdW5jdGlvbiBtZXJnZSAodGFyZ2V0KSB7XG4gIHZhciBhcmd1bWVudHMkMSA9IGFyZ3VtZW50cztcblxuICB2YXIgb3V0cHV0ID0gT2JqZWN0KHRhcmdldCk7XG4gIGZvciAodmFyIGkgPSAxOyBpIDwgYXJndW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIHNvdXJjZSA9IGFyZ3VtZW50cyQxW2ldO1xuICAgIGlmIChzb3VyY2UgIT09IHVuZGVmaW5lZCAmJiBzb3VyY2UgIT09IG51bGwpIHtcbiAgICAgIHZhciBrZXkgPSAodm9pZCAwKTtcbiAgICAgIGZvciAoa2V5IGluIHNvdXJjZSkge1xuICAgICAgICBpZiAoaGFzT3duKHNvdXJjZSwga2V5KSkge1xuICAgICAgICAgIGlmIChpc09iamVjdChzb3VyY2Vba2V5XSkpIHtcbiAgICAgICAgICAgIG91dHB1dFtrZXldID0gbWVyZ2Uob3V0cHV0W2tleV0sIHNvdXJjZVtrZXldKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3V0cHV0W2tleV0gPSBzb3VyY2Vba2V5XTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIG91dHB1dFxufVxuXG5mdW5jdGlvbiBsb29zZUVxdWFsIChhLCBiKSB7XG4gIGlmIChhID09PSBiKSB7IHJldHVybiB0cnVlIH1cbiAgdmFyIGlzT2JqZWN0QSA9IGlzT2JqZWN0KGEpO1xuICB2YXIgaXNPYmplY3RCID0gaXNPYmplY3QoYik7XG4gIGlmIChpc09iamVjdEEgJiYgaXNPYmplY3RCKSB7XG4gICAgdHJ5IHtcbiAgICAgIHZhciBpc0FycmF5QSA9IGlzQXJyYXkoYSk7XG4gICAgICB2YXIgaXNBcnJheUIgPSBpc0FycmF5KGIpO1xuICAgICAgaWYgKGlzQXJyYXlBICYmIGlzQXJyYXlCKSB7XG4gICAgICAgIHJldHVybiBhLmxlbmd0aCA9PT0gYi5sZW5ndGggJiYgYS5ldmVyeShmdW5jdGlvbiAoZSwgaSkge1xuICAgICAgICAgIHJldHVybiBsb29zZUVxdWFsKGUsIGJbaV0pXG4gICAgICAgIH0pXG4gICAgICB9IGVsc2UgaWYgKCFpc0FycmF5QSAmJiAhaXNBcnJheUIpIHtcbiAgICAgICAgdmFyIGtleXNBID0gT2JqZWN0LmtleXMoYSk7XG4gICAgICAgIHZhciBrZXlzQiA9IE9iamVjdC5rZXlzKGIpO1xuICAgICAgICByZXR1cm4ga2V5c0EubGVuZ3RoID09PSBrZXlzQi5sZW5ndGggJiYga2V5c0EuZXZlcnkoZnVuY3Rpb24gKGtleSkge1xuICAgICAgICAgIHJldHVybiBsb29zZUVxdWFsKGFba2V5XSwgYltrZXldKVxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfSBlbHNlIGlmICghaXNPYmplY3RBICYmICFpc09iamVjdEIpIHtcbiAgICByZXR1cm4gU3RyaW5nKGEpID09PSBTdHJpbmcoYilcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxufVxuXG4vKipcbiAqIFNhbml0aXplcyBodG1sIHNwZWNpYWwgY2hhcmFjdGVycyBmcm9tIGlucHV0IHN0cmluZ3MuIEZvciBtaXRpZ2F0aW5nIHJpc2sgb2YgWFNTIGF0dGFja3MuXG4gKiBAcGFyYW0gcmF3VGV4dCBUaGUgcmF3IGlucHV0IGZyb20gdGhlIHVzZXIgdGhhdCBzaG91bGQgYmUgZXNjYXBlZC5cbiAqL1xuZnVuY3Rpb24gZXNjYXBlSHRtbChyYXdUZXh0KSB7XG4gIHJldHVybiByYXdUZXh0XG4gICAgLnJlcGxhY2UoLzwvZywgJyZsdDsnKVxuICAgIC5yZXBsYWNlKC8+L2csICcmZ3Q7JylcbiAgICAucmVwbGFjZSgvXCIvZywgJyZxdW90OycpXG4gICAgLnJlcGxhY2UoLycvZywgJyZhcG9zOycpXG59XG5cbi8qKlxuICogRXNjYXBlcyBodG1sIHRhZ3MgYW5kIHNwZWNpYWwgc3ltYm9scyBmcm9tIGFsbCBwcm92aWRlZCBwYXJhbXMgd2hpY2ggd2VyZSByZXR1cm5lZCBmcm9tIHBhcnNlQXJncygpLnBhcmFtcy5cbiAqIFRoaXMgbWV0aG9kIHBlcmZvcm1zIGFuIGluLXBsYWNlIG9wZXJhdGlvbiBvbiB0aGUgcGFyYW1zIG9iamVjdC5cbiAqXG4gKiBAcGFyYW0ge2FueX0gcGFyYW1zIFBhcmFtZXRlcnMgYXMgcHJvdmlkZWQgZnJvbSBgcGFyc2VBcmdzKCkucGFyYW1zYC5cbiAqICAgICAgICAgICAgICAgICAgICAgTWF5IGJlIGVpdGhlciBhbiBhcnJheSBvZiBzdHJpbmdzIG9yIGEgc3RyaW5nLT5hbnkgbWFwLlxuICpcbiAqIEByZXR1cm5zIFRoZSBtYW5pcHVsYXRlZCBgcGFyYW1zYCBvYmplY3QuXG4gKi9cbmZ1bmN0aW9uIGVzY2FwZVBhcmFtcyhwYXJhbXMpIHtcbiAgaWYocGFyYW1zICE9IG51bGwpIHtcbiAgICBPYmplY3Qua2V5cyhwYXJhbXMpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgaWYodHlwZW9mKHBhcmFtc1trZXldKSA9PSAnc3RyaW5nJykge1xuICAgICAgICBwYXJhbXNba2V5XSA9IGVzY2FwZUh0bWwocGFyYW1zW2tleV0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIHJldHVybiBwYXJhbXNcbn1cblxuLyogICovXG5cbmZ1bmN0aW9uIGV4dGVuZCAoVnVlKSB7XG4gIGlmICghVnVlLnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSgnJGkxOG4nKSkge1xuICAgIC8vICRGbG93Rml4TWVcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoVnVlLnByb3RvdHlwZSwgJyRpMThuJywge1xuICAgICAgZ2V0OiBmdW5jdGlvbiBnZXQgKCkgeyByZXR1cm4gdGhpcy5faTE4biB9XG4gICAgfSk7XG4gIH1cblxuICBWdWUucHJvdG90eXBlLiR0ID0gZnVuY3Rpb24gKGtleSkge1xuICAgIHZhciB2YWx1ZXMgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSB2YWx1ZXNbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAxIF07XG5cbiAgICB2YXIgaTE4biA9IHRoaXMuJGkxOG47XG4gICAgcmV0dXJuIGkxOG4uX3QuYXBwbHkoaTE4biwgWyBrZXksIGkxOG4ubG9jYWxlLCBpMThuLl9nZXRNZXNzYWdlcygpLCB0aGlzIF0uY29uY2F0KCB2YWx1ZXMgKSlcbiAgfTtcblxuICBWdWUucHJvdG90eXBlLiR0YyA9IGZ1bmN0aW9uIChrZXksIGNob2ljZSkge1xuICAgIHZhciB2YWx1ZXMgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDI7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSB2YWx1ZXNbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAyIF07XG5cbiAgICB2YXIgaTE4biA9IHRoaXMuJGkxOG47XG4gICAgcmV0dXJuIGkxOG4uX3RjLmFwcGx5KGkxOG4sIFsga2V5LCBpMThuLmxvY2FsZSwgaTE4bi5fZ2V0TWVzc2FnZXMoKSwgdGhpcywgY2hvaWNlIF0uY29uY2F0KCB2YWx1ZXMgKSlcbiAgfTtcblxuICBWdWUucHJvdG90eXBlLiR0ZSA9IGZ1bmN0aW9uIChrZXksIGxvY2FsZSkge1xuICAgIHZhciBpMThuID0gdGhpcy4kaTE4bjtcbiAgICByZXR1cm4gaTE4bi5fdGUoa2V5LCBpMThuLmxvY2FsZSwgaTE4bi5fZ2V0TWVzc2FnZXMoKSwgbG9jYWxlKVxuICB9O1xuXG4gIFZ1ZS5wcm90b3R5cGUuJGQgPSBmdW5jdGlvbiAodmFsdWUpIHtcbiAgICB2YXIgcmVmO1xuXG4gICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMSBdO1xuICAgIHJldHVybiAocmVmID0gdGhpcy4kaTE4bikuZC5hcHBseShyZWYsIFsgdmFsdWUgXS5jb25jYXQoIGFyZ3MgKSlcbiAgfTtcblxuICBWdWUucHJvdG90eXBlLiRuID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgdmFyIHJlZjtcblxuICAgIHZhciBhcmdzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSAxO1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgYXJnc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiArIDEgXTtcbiAgICByZXR1cm4gKHJlZiA9IHRoaXMuJGkxOG4pLm4uYXBwbHkocmVmLCBbIHZhbHVlIF0uY29uY2F0KCBhcmdzICkpXG4gIH07XG59XG5cbi8qICAqL1xuXG4vKipcbiAqIE1peGluXG4gKiBcbiAqIElmIGBicmlkZ2VgIG1vZGUsIGVtcHR5IG1peGluIGlzIHJldHVybmVkLFxuICogZWxzZSByZWd1bGFyeSBtaXhpbiBpbXBsZW1lbnRhdGlvbiBpcyByZXR1cm5lZC5cbiAqL1xuZnVuY3Rpb24gZGVmaW5lTWl4aW4gKGJyaWRnZSkge1xuICBpZiAoIGJyaWRnZSA9PT0gdm9pZCAwICkgYnJpZGdlID0gZmFsc2U7XG5cbiAgZnVuY3Rpb24gbW91bnRlZCAoKSB7XG4gICAgaWYgKHRoaXMgIT09IHRoaXMuJHJvb3QgJiYgdGhpcy4kb3B0aW9ucy5fX0lOVExJRllfTUVUQV9fICYmIHRoaXMuJGVsKSB7XG4gICAgICB0aGlzLiRlbC5zZXRBdHRyaWJ1dGUoJ2RhdGEtaW50bGlmeScsIHRoaXMuJG9wdGlvbnMuX19JTlRMSUZZX01FVEFfXyk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGJyaWRnZVxuICAgID8geyBtb3VudGVkOiBtb3VudGVkIH0gLy8gZGVsZWdhdGUgYHZ1ZS1pMThuLWJyaWRnZWAgbWl4aW4gaW1wbGVtZW50YXRpb25cbiAgICA6IHsgLy8gcmVndWxhcnkgXG4gICAgYmVmb3JlQ3JlYXRlOiBmdW5jdGlvbiBiZWZvcmVDcmVhdGUgKCkge1xuICAgICAgdmFyIG9wdGlvbnMgPSB0aGlzLiRvcHRpb25zO1xuICAgICAgb3B0aW9ucy5pMThuID0gb3B0aW9ucy5pMThuIHx8ICgob3B0aW9ucy5fX2kxOG5CcmlkZ2UgfHwgb3B0aW9ucy5fX2kxOG4pID8ge30gOiBudWxsKTtcblxuICAgICAgaWYgKG9wdGlvbnMuaTE4bikge1xuICAgICAgICBpZiAob3B0aW9ucy5pMThuIGluc3RhbmNlb2YgVnVlSTE4bikge1xuICAgICAgICAgIC8vIGluaXQgbG9jYWxlIG1lc3NhZ2VzIHZpYSBjdXN0b20gYmxvY2tzXG4gICAgICAgICAgaWYgKChvcHRpb25zLl9faTE4bkJyaWRnZSB8fCBvcHRpb25zLl9faTE4bikpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIHZhciBsb2NhbGVNZXNzYWdlcyA9IG9wdGlvbnMuaTE4biAmJiBvcHRpb25zLmkxOG4ubWVzc2FnZXMgPyBvcHRpb25zLmkxOG4ubWVzc2FnZXMgOiB7fTtcbiAgICAgICAgICAgICAgdmFyIF9pMThuID0gb3B0aW9ucy5fX2kxOG5CcmlkZ2UgfHwgb3B0aW9ucy5fX2kxOG47XG4gICAgICAgICAgICAgIF9pMThuLmZvckVhY2goZnVuY3Rpb24gKHJlc291cmNlKSB7XG4gICAgICAgICAgICAgICAgbG9jYWxlTWVzc2FnZXMgPSBtZXJnZShsb2NhbGVNZXNzYWdlcywgSlNPTi5wYXJzZShyZXNvdXJjZSkpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgT2JqZWN0LmtleXMobG9jYWxlTWVzc2FnZXMpLmZvckVhY2goZnVuY3Rpb24gKGxvY2FsZSkge1xuICAgICAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5tZXJnZUxvY2FsZU1lc3NhZ2UobG9jYWxlLCBsb2NhbGVNZXNzYWdlc1tsb2NhbGVdKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgZXJyb3IoXCJDYW5ub3QgcGFyc2UgbG9jYWxlIG1lc3NhZ2VzIHZpYSBjdXN0b20gYmxvY2tzLlwiLCBlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLl9pMThuID0gb3B0aW9ucy5pMThuO1xuICAgICAgICAgIHRoaXMuX2kxOG5XYXRjaGVyID0gdGhpcy5faTE4bi53YXRjaEkxOG5EYXRhKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNQbGFpbk9iamVjdChvcHRpb25zLmkxOG4pKSB7XG4gICAgICAgICAgdmFyIHJvb3RJMThuID0gdGhpcy4kcm9vdCAmJiB0aGlzLiRyb290LiRpMThuICYmIHRoaXMuJHJvb3QuJGkxOG4gaW5zdGFuY2VvZiBWdWVJMThuXG4gICAgICAgICAgICA/IHRoaXMuJHJvb3QuJGkxOG5cbiAgICAgICAgICAgIDogbnVsbDtcbiAgICAgICAgICAvLyBjb21wb25lbnQgbG9jYWwgaTE4blxuICAgICAgICAgIGlmIChyb290STE4bikge1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLnJvb3QgPSB0aGlzLiRyb290O1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLmZvcm1hdHRlciA9IHJvb3RJMThuLmZvcm1hdHRlcjtcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5mYWxsYmFja0xvY2FsZSA9IHJvb3RJMThuLmZhbGxiYWNrTG9jYWxlO1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLmZvcm1hdEZhbGxiYWNrTWVzc2FnZXMgPSByb290STE4bi5mb3JtYXRGYWxsYmFja01lc3NhZ2VzO1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLnNpbGVudFRyYW5zbGF0aW9uV2FybiA9IHJvb3RJMThuLnNpbGVudFRyYW5zbGF0aW9uV2FybjtcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5zaWxlbnRGYWxsYmFja1dhcm4gPSByb290STE4bi5zaWxlbnRGYWxsYmFja1dhcm47XG4gICAgICAgICAgICBvcHRpb25zLmkxOG4ucGx1cmFsaXphdGlvblJ1bGVzID0gcm9vdEkxOG4ucGx1cmFsaXphdGlvblJ1bGVzO1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLnByZXNlcnZlRGlyZWN0aXZlQ29udGVudCA9IHJvb3RJMThuLnByZXNlcnZlRGlyZWN0aXZlQ29udGVudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBpbml0IGxvY2FsZSBtZXNzYWdlcyB2aWEgY3VzdG9tIGJsb2Nrc1xuICAgICAgICAgIGlmICgob3B0aW9ucy5fX2kxOG5CcmlkZ2UgfHwgb3B0aW9ucy5fX2kxOG4pKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICB2YXIgbG9jYWxlTWVzc2FnZXMkMSA9IG9wdGlvbnMuaTE4biAmJiBvcHRpb25zLmkxOG4ubWVzc2FnZXMgPyBvcHRpb25zLmkxOG4ubWVzc2FnZXMgOiB7fTtcbiAgICAgICAgICAgICAgdmFyIF9pMThuJDEgPSBvcHRpb25zLl9faTE4bkJyaWRnZSB8fCBvcHRpb25zLl9faTE4bjtcbiAgICAgICAgICAgICAgX2kxOG4kMS5mb3JFYWNoKGZ1bmN0aW9uIChyZXNvdXJjZSkge1xuICAgICAgICAgICAgICAgIGxvY2FsZU1lc3NhZ2VzJDEgPSBtZXJnZShsb2NhbGVNZXNzYWdlcyQxLCBKU09OLnBhcnNlKHJlc291cmNlKSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBvcHRpb25zLmkxOG4ubWVzc2FnZXMgPSBsb2NhbGVNZXNzYWdlcyQxO1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIHdhcm4oXCJDYW5ub3QgcGFyc2UgbG9jYWxlIG1lc3NhZ2VzIHZpYSBjdXN0b20gYmxvY2tzLlwiLCBlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHZhciByZWYgPSBvcHRpb25zLmkxOG47XG4gICAgICAgICAgdmFyIHNoYXJlZE1lc3NhZ2VzID0gcmVmLnNoYXJlZE1lc3NhZ2VzO1xuICAgICAgICAgIGlmIChzaGFyZWRNZXNzYWdlcyAmJiBpc1BsYWluT2JqZWN0KHNoYXJlZE1lc3NhZ2VzKSkge1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLm1lc3NhZ2VzID0gbWVyZ2Uob3B0aW9ucy5pMThuLm1lc3NhZ2VzLCBzaGFyZWRNZXNzYWdlcyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5faTE4biA9IG5ldyBWdWVJMThuKG9wdGlvbnMuaTE4bik7XG4gICAgICAgICAgdGhpcy5faTE4bldhdGNoZXIgPSB0aGlzLl9pMThuLndhdGNoSTE4bkRhdGEoKTtcblxuICAgICAgICAgIGlmIChvcHRpb25zLmkxOG4uc3luYyA9PT0gdW5kZWZpbmVkIHx8ICEhb3B0aW9ucy5pMThuLnN5bmMpIHtcbiAgICAgICAgICAgIHRoaXMuX2xvY2FsZVdhdGNoZXIgPSB0aGlzLiRpMThuLndhdGNoTG9jYWxlKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHJvb3RJMThuKSB7XG4gICAgICAgICAgICByb290STE4bi5vbkNvbXBvbmVudEluc3RhbmNlQ3JlYXRlZCh0aGlzLl9pMThuKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4oXCJDYW5ub3QgYmUgaW50ZXJwcmV0ZWQgJ2kxOG4nIG9wdGlvbi5cIik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuJHJvb3QgJiYgdGhpcy4kcm9vdC4kaTE4biAmJiB0aGlzLiRyb290LiRpMThuIGluc3RhbmNlb2YgVnVlSTE4bikge1xuICAgICAgICAvLyByb290IGkxOG5cbiAgICAgICAgdGhpcy5faTE4biA9IHRoaXMuJHJvb3QuJGkxOG47XG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbnMucGFyZW50ICYmIG9wdGlvbnMucGFyZW50LiRpMThuICYmIG9wdGlvbnMucGFyZW50LiRpMThuIGluc3RhbmNlb2YgVnVlSTE4bikge1xuICAgICAgICAvLyBwYXJlbnQgaTE4blxuICAgICAgICB0aGlzLl9pMThuID0gb3B0aW9ucy5wYXJlbnQuJGkxOG47XG4gICAgICB9XG4gICAgfSxcblxuICAgIGJlZm9yZU1vdW50OiBmdW5jdGlvbiBiZWZvcmVNb3VudCAoKSB7XG4gICAgICB2YXIgb3B0aW9ucyA9IHRoaXMuJG9wdGlvbnM7XG4gICAgICBvcHRpb25zLmkxOG4gPSBvcHRpb25zLmkxOG4gfHwgKChvcHRpb25zLl9faTE4bkJyaWRnZSB8fCBvcHRpb25zLl9faTE4bikgPyB7fSA6IG51bGwpO1xuXG4gICAgICBpZiAob3B0aW9ucy5pMThuKSB7XG4gICAgICAgIGlmIChvcHRpb25zLmkxOG4gaW5zdGFuY2VvZiBWdWVJMThuKSB7XG4gICAgICAgICAgLy8gaW5pdCBsb2NhbGUgbWVzc2FnZXMgdmlhIGN1c3RvbSBibG9ja3NcbiAgICAgICAgICB0aGlzLl9pMThuLnN1YnNjcmliZURhdGFDaGFuZ2luZyh0aGlzKTtcbiAgICAgICAgICB0aGlzLl9zdWJzY3JpYmluZyA9IHRydWU7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNQbGFpbk9iamVjdChvcHRpb25zLmkxOG4pKSB7XG4gICAgICAgICAgdGhpcy5faTE4bi5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcodGhpcyk7XG4gICAgICAgICAgdGhpcy5fc3Vic2NyaWJpbmcgPSB0cnVlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuKFwiQ2Fubm90IGJlIGludGVycHJldGVkICdpMThuJyBvcHRpb24uXCIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLiRyb290ICYmIHRoaXMuJHJvb3QuJGkxOG4gJiYgdGhpcy4kcm9vdC4kaTE4biBpbnN0YW5jZW9mIFZ1ZUkxOG4pIHtcbiAgICAgICAgdGhpcy5faTE4bi5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcodGhpcyk7XG4gICAgICAgIHRoaXMuX3N1YnNjcmliaW5nID0gdHJ1ZTtcbiAgICAgIH0gZWxzZSBpZiAob3B0aW9ucy5wYXJlbnQgJiYgb3B0aW9ucy5wYXJlbnQuJGkxOG4gJiYgb3B0aW9ucy5wYXJlbnQuJGkxOG4gaW5zdGFuY2VvZiBWdWVJMThuKSB7XG4gICAgICAgIHRoaXMuX2kxOG4uc3Vic2NyaWJlRGF0YUNoYW5naW5nKHRoaXMpO1xuICAgICAgICB0aGlzLl9zdWJzY3JpYmluZyA9IHRydWU7XG4gICAgICB9XG4gICAgfSxcblxuICAgIG1vdW50ZWQ6IG1vdW50ZWQsXG5cbiAgICBiZWZvcmVEZXN0cm95OiBmdW5jdGlvbiBiZWZvcmVEZXN0cm95ICgpIHtcbiAgICAgIGlmICghdGhpcy5faTE4bikgeyByZXR1cm4gfVxuXG4gICAgICB2YXIgc2VsZiA9IHRoaXM7XG4gICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIGlmIChzZWxmLl9zdWJzY3JpYmluZykge1xuICAgICAgICAgIHNlbGYuX2kxOG4udW5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcoc2VsZik7XG4gICAgICAgICAgZGVsZXRlIHNlbGYuX3N1YnNjcmliaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNlbGYuX2kxOG5XYXRjaGVyKSB7XG4gICAgICAgICAgc2VsZi5faTE4bldhdGNoZXIoKTtcbiAgICAgICAgICBzZWxmLl9pMThuLmRlc3Ryb3lWTSgpO1xuICAgICAgICAgIGRlbGV0ZSBzZWxmLl9pMThuV2F0Y2hlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLl9sb2NhbGVXYXRjaGVyKSB7XG4gICAgICAgICAgc2VsZi5fbG9jYWxlV2F0Y2hlcigpO1xuICAgICAgICAgIGRlbGV0ZSBzZWxmLl9sb2NhbGVXYXRjaGVyO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyogICovXG5cbnZhciBpbnRlcnBvbGF0aW9uQ29tcG9uZW50ID0ge1xuICBuYW1lOiAnaTE4bicsXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG4gIHByb3BzOiB7XG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBCb29sZWFuLCBPYmplY3RdLFxuICAgICAgZGVmYXVsdDogJ3NwYW4nXG4gICAgfSxcbiAgICBwYXRoOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgbG9jYWxlOiB7XG4gICAgICB0eXBlOiBTdHJpbmdcbiAgICB9LFxuICAgIHBsYWNlczoge1xuICAgICAgdHlwZTogW0FycmF5LCBPYmplY3RdXG4gICAgfVxuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlciAoaCwgcmVmKSB7XG4gICAgdmFyIGRhdGEgPSByZWYuZGF0YTtcbiAgICB2YXIgcGFyZW50ID0gcmVmLnBhcmVudDtcbiAgICB2YXIgcHJvcHMgPSByZWYucHJvcHM7XG4gICAgdmFyIHNsb3RzID0gcmVmLnNsb3RzO1xuXG4gICAgdmFyICRpMThuID0gcGFyZW50LiRpMThuO1xuICAgIGlmICghJGkxOG4pIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4oJ0Nhbm5vdCBmaW5kIFZ1ZUkxOG4gaW5zdGFuY2UhJyk7XG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB2YXIgcGF0aCA9IHByb3BzLnBhdGg7XG4gICAgdmFyIGxvY2FsZSA9IHByb3BzLmxvY2FsZTtcbiAgICB2YXIgcGxhY2VzID0gcHJvcHMucGxhY2VzO1xuICAgIHZhciBwYXJhbXMgPSBzbG90cygpO1xuICAgIHZhciBjaGlsZHJlbiA9ICRpMThuLmkoXG4gICAgICBwYXRoLFxuICAgICAgbG9jYWxlLFxuICAgICAgb25seUhhc0RlZmF1bHRQbGFjZShwYXJhbXMpIHx8IHBsYWNlc1xuICAgICAgICA/IHVzZUxlZ2FjeVBsYWNlcyhwYXJhbXMuZGVmYXVsdCwgcGxhY2VzKVxuICAgICAgICA6IHBhcmFtc1xuICAgICk7XG5cbiAgICB2YXIgdGFnID0gKCEhcHJvcHMudGFnICYmIHByb3BzLnRhZyAhPT0gdHJ1ZSkgfHwgcHJvcHMudGFnID09PSBmYWxzZSA/IHByb3BzLnRhZyA6ICdzcGFuJztcbiAgICByZXR1cm4gdGFnID8gaCh0YWcsIGRhdGEsIGNoaWxkcmVuKSA6IGNoaWxkcmVuXG4gIH1cbn07XG5cbmZ1bmN0aW9uIG9ubHlIYXNEZWZhdWx0UGxhY2UgKHBhcmFtcykge1xuICB2YXIgcHJvcDtcbiAgZm9yIChwcm9wIGluIHBhcmFtcykge1xuICAgIGlmIChwcm9wICE9PSAnZGVmYXVsdCcpIHsgcmV0dXJuIGZhbHNlIH1cbiAgfVxuICByZXR1cm4gQm9vbGVhbihwcm9wKVxufVxuXG5mdW5jdGlvbiB1c2VMZWdhY3lQbGFjZXMgKGNoaWxkcmVuLCBwbGFjZXMpIHtcbiAgdmFyIHBhcmFtcyA9IHBsYWNlcyA/IGNyZWF0ZVBhcmFtc0Zyb21QbGFjZXMocGxhY2VzKSA6IHt9O1xuXG4gIGlmICghY2hpbGRyZW4pIHsgcmV0dXJuIHBhcmFtcyB9XG5cbiAgLy8gRmlsdGVyIGVtcHR5IHRleHQgbm9kZXNcbiAgY2hpbGRyZW4gPSBjaGlsZHJlbi5maWx0ZXIoZnVuY3Rpb24gKGNoaWxkKSB7XG4gICAgcmV0dXJuIGNoaWxkLnRhZyB8fCBjaGlsZC50ZXh0LnRyaW0oKSAhPT0gJydcbiAgfSk7XG5cbiAgdmFyIGV2ZXJ5UGxhY2UgPSBjaGlsZHJlbi5ldmVyeSh2bm9kZUhhc1BsYWNlQXR0cmlidXRlKTtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgZXZlcnlQbGFjZSkge1xuICAgIHdhcm4oJ2BwbGFjZWAgYXR0cmlidXRlIGlzIGRlcHJlY2F0ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uLiBQbGVhc2Ugc3dpdGNoIHRvIFZ1ZSBzbG90cy4nKTtcbiAgfVxuXG4gIHJldHVybiBjaGlsZHJlbi5yZWR1Y2UoXG4gICAgZXZlcnlQbGFjZSA/IGFzc2lnbkNoaWxkUGxhY2UgOiBhc3NpZ25DaGlsZEluZGV4LFxuICAgIHBhcmFtc1xuICApXG59XG5cbmZ1bmN0aW9uIGNyZWF0ZVBhcmFtc0Zyb21QbGFjZXMgKHBsYWNlcykge1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgIHdhcm4oJ2BwbGFjZXNgIHByb3AgaXMgZGVwcmVjYXRlZCBpbiBuZXh0IG1ham9yIHZlcnNpb24uIFBsZWFzZSBzd2l0Y2ggdG8gVnVlIHNsb3RzLicpO1xuICB9XG5cbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkocGxhY2VzKVxuICAgID8gcGxhY2VzLnJlZHVjZShhc3NpZ25DaGlsZEluZGV4LCB7fSlcbiAgICA6IE9iamVjdC5hc3NpZ24oe30sIHBsYWNlcylcbn1cblxuZnVuY3Rpb24gYXNzaWduQ2hpbGRQbGFjZSAocGFyYW1zLCBjaGlsZCkge1xuICBpZiAoY2hpbGQuZGF0YSAmJiBjaGlsZC5kYXRhLmF0dHJzICYmIGNoaWxkLmRhdGEuYXR0cnMucGxhY2UpIHtcbiAgICBwYXJhbXNbY2hpbGQuZGF0YS5hdHRycy5wbGFjZV0gPSBjaGlsZDtcbiAgfVxuICByZXR1cm4gcGFyYW1zXG59XG5cbmZ1bmN0aW9uIGFzc2lnbkNoaWxkSW5kZXggKHBhcmFtcywgY2hpbGQsIGluZGV4KSB7XG4gIHBhcmFtc1tpbmRleF0gPSBjaGlsZDtcbiAgcmV0dXJuIHBhcmFtc1xufVxuXG5mdW5jdGlvbiB2bm9kZUhhc1BsYWNlQXR0cmlidXRlICh2bm9kZSkge1xuICByZXR1cm4gQm9vbGVhbih2bm9kZS5kYXRhICYmIHZub2RlLmRhdGEuYXR0cnMgJiYgdm5vZGUuZGF0YS5hdHRycy5wbGFjZSlcbn1cblxuLyogICovXG5cbnZhciBudW1iZXJDb21wb25lbnQgPSB7XG4gIG5hbWU6ICdpMThuLW4nLFxuICBmdW5jdGlvbmFsOiB0cnVlLFxuICBwcm9wczoge1xuICAgIHRhZzoge1xuICAgICAgdHlwZTogW1N0cmluZywgQm9vbGVhbiwgT2JqZWN0XSxcbiAgICAgIGRlZmF1bHQ6ICdzcGFuJ1xuICAgIH0sXG4gICAgdmFsdWU6IHtcbiAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgfSxcbiAgICBmb3JtYXQ6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIE9iamVjdF1cbiAgICB9LFxuICAgIGxvY2FsZToge1xuICAgICAgdHlwZTogU3RyaW5nXG4gICAgfVxuICB9LFxuICByZW5kZXI6IGZ1bmN0aW9uIHJlbmRlciAoaCwgcmVmKSB7XG4gICAgdmFyIHByb3BzID0gcmVmLnByb3BzO1xuICAgIHZhciBwYXJlbnQgPSByZWYucGFyZW50O1xuICAgIHZhciBkYXRhID0gcmVmLmRhdGE7XG5cbiAgICB2YXIgaTE4biA9IHBhcmVudC4kaTE4bjtcblxuICAgIGlmICghaTE4bikge1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgd2FybignQ2Fubm90IGZpbmQgVnVlSTE4biBpbnN0YW5jZSEnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuXG4gICAgdmFyIGtleSA9IG51bGw7XG4gICAgdmFyIG9wdGlvbnMgPSBudWxsO1xuXG4gICAgaWYgKGlzU3RyaW5nKHByb3BzLmZvcm1hdCkpIHtcbiAgICAgIGtleSA9IHByb3BzLmZvcm1hdDtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KHByb3BzLmZvcm1hdCkpIHtcbiAgICAgIGlmIChwcm9wcy5mb3JtYXQua2V5KSB7XG4gICAgICAgIGtleSA9IHByb3BzLmZvcm1hdC5rZXk7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbHRlciBvdXQgbnVtYmVyIGZvcm1hdCBvcHRpb25zIG9ubHlcbiAgICAgIG9wdGlvbnMgPSBPYmplY3Qua2V5cyhwcm9wcy5mb3JtYXQpLnJlZHVjZShmdW5jdGlvbiAoYWNjLCBwcm9wKSB7XG4gICAgICAgIHZhciBvYmo7XG5cbiAgICAgICAgaWYgKGluY2x1ZGVzKG51bWJlckZvcm1hdEtleXMsIHByb3ApKSB7XG4gICAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGFjYywgKCBvYmogPSB7fSwgb2JqW3Byb3BdID0gcHJvcHMuZm9ybWF0W3Byb3BdLCBvYmogKSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYWNjXG4gICAgICB9LCBudWxsKTtcbiAgICB9XG5cbiAgICB2YXIgbG9jYWxlID0gcHJvcHMubG9jYWxlIHx8IGkxOG4ubG9jYWxlO1xuICAgIHZhciBwYXJ0cyA9IGkxOG4uX250cChwcm9wcy52YWx1ZSwgbG9jYWxlLCBrZXksIG9wdGlvbnMpO1xuXG4gICAgdmFyIHZhbHVlcyA9IHBhcnRzLm1hcChmdW5jdGlvbiAocGFydCwgaW5kZXgpIHtcbiAgICAgIHZhciBvYmo7XG5cbiAgICAgIHZhciBzbG90ID0gZGF0YS5zY29wZWRTbG90cyAmJiBkYXRhLnNjb3BlZFNsb3RzW3BhcnQudHlwZV07XG4gICAgICByZXR1cm4gc2xvdCA/IHNsb3QoKCBvYmogPSB7fSwgb2JqW3BhcnQudHlwZV0gPSBwYXJ0LnZhbHVlLCBvYmouaW5kZXggPSBpbmRleCwgb2JqLnBhcnRzID0gcGFydHMsIG9iaiApKSA6IHBhcnQudmFsdWVcbiAgICB9KTtcblxuICAgIHZhciB0YWcgPSAoISFwcm9wcy50YWcgJiYgcHJvcHMudGFnICE9PSB0cnVlKSB8fCBwcm9wcy50YWcgPT09IGZhbHNlID8gcHJvcHMudGFnIDogJ3NwYW4nO1xuICAgIHJldHVybiB0YWdcbiAgICAgID8gaCh0YWcsIHtcbiAgICAgICAgYXR0cnM6IGRhdGEuYXR0cnMsXG4gICAgICAgICdjbGFzcyc6IGRhdGFbJ2NsYXNzJ10sXG4gICAgICAgIHN0YXRpY0NsYXNzOiBkYXRhLnN0YXRpY0NsYXNzXG4gICAgICB9LCB2YWx1ZXMpXG4gICAgICA6IHZhbHVlc1xuICB9XG59O1xuXG4vKiAgKi9cblxuZnVuY3Rpb24gYmluZCAoZWwsIGJpbmRpbmcsIHZub2RlKSB7XG4gIGlmICghYXNzZXJ0KGVsLCB2bm9kZSkpIHsgcmV0dXJuIH1cblxuICB0KGVsLCBiaW5kaW5nLCB2bm9kZSk7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZSAoZWwsIGJpbmRpbmcsIHZub2RlLCBvbGRWTm9kZSkge1xuICBpZiAoIWFzc2VydChlbCwgdm5vZGUpKSB7IHJldHVybiB9XG5cbiAgdmFyIGkxOG4gPSB2bm9kZS5jb250ZXh0LiRpMThuO1xuICBpZiAobG9jYWxlRXF1YWwoZWwsIHZub2RlKSAmJlxuICAgIChsb29zZUVxdWFsKGJpbmRpbmcudmFsdWUsIGJpbmRpbmcub2xkVmFsdWUpICYmXG4gICAgIGxvb3NlRXF1YWwoZWwuX2xvY2FsZU1lc3NhZ2UsIGkxOG4uZ2V0TG9jYWxlTWVzc2FnZShpMThuLmxvY2FsZSkpKSkgeyByZXR1cm4gfVxuXG4gIHQoZWwsIGJpbmRpbmcsIHZub2RlKTtcbn1cblxuZnVuY3Rpb24gdW5iaW5kIChlbCwgYmluZGluZywgdm5vZGUsIG9sZFZOb2RlKSB7XG4gIHZhciB2bSA9IHZub2RlLmNvbnRleHQ7XG4gIGlmICghdm0pIHtcbiAgICB3YXJuKCdWdWUgaW5zdGFuY2UgZG9lcyBub3QgZXhpc3RzIGluIFZOb2RlIGNvbnRleHQnKTtcbiAgICByZXR1cm5cbiAgfVxuXG4gIHZhciBpMThuID0gdm5vZGUuY29udGV4dC4kaTE4biB8fCB7fTtcbiAgaWYgKCFiaW5kaW5nLm1vZGlmaWVycy5wcmVzZXJ2ZSAmJiAhaTE4bi5wcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQpIHtcbiAgICBlbC50ZXh0Q29udGVudCA9ICcnO1xuICB9XG4gIGVsLl92dCA9IHVuZGVmaW5lZDtcbiAgZGVsZXRlIGVsWydfdnQnXTtcbiAgZWwuX2xvY2FsZSA9IHVuZGVmaW5lZDtcbiAgZGVsZXRlIGVsWydfbG9jYWxlJ107XG4gIGVsLl9sb2NhbGVNZXNzYWdlID0gdW5kZWZpbmVkO1xuICBkZWxldGUgZWxbJ19sb2NhbGVNZXNzYWdlJ107XG59XG5cbmZ1bmN0aW9uIGFzc2VydCAoZWwsIHZub2RlKSB7XG4gIHZhciB2bSA9IHZub2RlLmNvbnRleHQ7XG4gIGlmICghdm0pIHtcbiAgICB3YXJuKCdWdWUgaW5zdGFuY2UgZG9lcyBub3QgZXhpc3RzIGluIFZOb2RlIGNvbnRleHQnKTtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIGlmICghdm0uJGkxOG4pIHtcbiAgICB3YXJuKCdWdWVJMThuIGluc3RhbmNlIGRvZXMgbm90IGV4aXN0cyBpbiBWdWUgaW5zdGFuY2UnKTtcbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHJldHVybiB0cnVlXG59XG5cbmZ1bmN0aW9uIGxvY2FsZUVxdWFsIChlbCwgdm5vZGUpIHtcbiAgdmFyIHZtID0gdm5vZGUuY29udGV4dDtcbiAgcmV0dXJuIGVsLl9sb2NhbGUgPT09IHZtLiRpMThuLmxvY2FsZVxufVxuXG5mdW5jdGlvbiB0IChlbCwgYmluZGluZywgdm5vZGUpIHtcbiAgdmFyIHJlZiQxLCByZWYkMjtcblxuICB2YXIgdmFsdWUgPSBiaW5kaW5nLnZhbHVlO1xuXG4gIHZhciByZWYgPSBwYXJzZVZhbHVlKHZhbHVlKTtcbiAgdmFyIHBhdGggPSByZWYucGF0aDtcbiAgdmFyIGxvY2FsZSA9IHJlZi5sb2NhbGU7XG4gIHZhciBhcmdzID0gcmVmLmFyZ3M7XG4gIHZhciBjaG9pY2UgPSByZWYuY2hvaWNlO1xuICBpZiAoIXBhdGggJiYgIWxvY2FsZSAmJiAhYXJncykge1xuICAgIHdhcm4oJ3ZhbHVlIHR5cGUgbm90IHN1cHBvcnRlZCcpO1xuICAgIHJldHVyblxuICB9XG5cbiAgaWYgKCFwYXRoKSB7XG4gICAgd2FybignYHBhdGhgIGlzIHJlcXVpcmVkIGluIHYtdCBkaXJlY3RpdmUnKTtcbiAgICByZXR1cm5cbiAgfVxuXG4gIHZhciB2bSA9IHZub2RlLmNvbnRleHQ7XG4gIGlmIChjaG9pY2UgIT0gbnVsbCkge1xuICAgIGVsLl92dCA9IGVsLnRleHRDb250ZW50ID0gKHJlZiQxID0gdm0uJGkxOG4pLnRjLmFwcGx5KHJlZiQxLCBbIHBhdGgsIGNob2ljZSBdLmNvbmNhdCggbWFrZVBhcmFtcyhsb2NhbGUsIGFyZ3MpICkpO1xuICB9IGVsc2Uge1xuICAgIGVsLl92dCA9IGVsLnRleHRDb250ZW50ID0gKHJlZiQyID0gdm0uJGkxOG4pLnQuYXBwbHkocmVmJDIsIFsgcGF0aCBdLmNvbmNhdCggbWFrZVBhcmFtcyhsb2NhbGUsIGFyZ3MpICkpO1xuICB9XG4gIGVsLl9sb2NhbGUgPSB2bS4kaTE4bi5sb2NhbGU7XG4gIGVsLl9sb2NhbGVNZXNzYWdlID0gdm0uJGkxOG4uZ2V0TG9jYWxlTWVzc2FnZSh2bS4kaTE4bi5sb2NhbGUpO1xufVxuXG5mdW5jdGlvbiBwYXJzZVZhbHVlICh2YWx1ZSkge1xuICB2YXIgcGF0aDtcbiAgdmFyIGxvY2FsZTtcbiAgdmFyIGFyZ3M7XG4gIHZhciBjaG9pY2U7XG5cbiAgaWYgKGlzU3RyaW5nKHZhbHVlKSkge1xuICAgIHBhdGggPSB2YWx1ZTtcbiAgfSBlbHNlIGlmIChpc1BsYWluT2JqZWN0KHZhbHVlKSkge1xuICAgIHBhdGggPSB2YWx1ZS5wYXRoO1xuICAgIGxvY2FsZSA9IHZhbHVlLmxvY2FsZTtcbiAgICBhcmdzID0gdmFsdWUuYXJncztcbiAgICBjaG9pY2UgPSB2YWx1ZS5jaG9pY2U7XG4gIH1cblxuICByZXR1cm4geyBwYXRoOiBwYXRoLCBsb2NhbGU6IGxvY2FsZSwgYXJnczogYXJncywgY2hvaWNlOiBjaG9pY2UgfVxufVxuXG5mdW5jdGlvbiBtYWtlUGFyYW1zIChsb2NhbGUsIGFyZ3MpIHtcbiAgdmFyIHBhcmFtcyA9IFtdO1xuXG4gIGxvY2FsZSAmJiBwYXJhbXMucHVzaChsb2NhbGUpO1xuICBpZiAoYXJncyAmJiAoQXJyYXkuaXNBcnJheShhcmdzKSB8fCBpc1BsYWluT2JqZWN0KGFyZ3MpKSkge1xuICAgIHBhcmFtcy5wdXNoKGFyZ3MpO1xuICB9XG5cbiAgcmV0dXJuIHBhcmFtc1xufVxuXG52YXIgVnVlO1xuXG5mdW5jdGlvbiBpbnN0YWxsIChfVnVlLCBvcHRpb25zKSB7XG4gIGlmICggb3B0aW9ucyA9PT0gdm9pZCAwICkgb3B0aW9ucyA9IHsgYnJpZGdlOiBmYWxzZSB9O1xuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiBpbnN0YWxsLmluc3RhbGxlZCAmJiBfVnVlID09PSBWdWUpIHtcbiAgICB3YXJuKCdhbHJlYWR5IGluc3RhbGxlZC4nKTtcbiAgICByZXR1cm5cbiAgfVxuICBpbnN0YWxsLmluc3RhbGxlZCA9IHRydWU7XG5cbiAgVnVlID0gX1Z1ZTtcblxuICB2YXIgdmVyc2lvbiA9IChWdWUudmVyc2lvbiAmJiBOdW1iZXIoVnVlLnZlcnNpb24uc3BsaXQoJy4nKVswXSkpIHx8IC0xO1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgdmVyc2lvbiA8IDIpIHtcbiAgICB3YXJuKChcInZ1ZS1pMThuIChcIiArIChpbnN0YWxsLnZlcnNpb24pICsgXCIpIG5lZWQgdG8gdXNlIFZ1ZSAyLjAgb3IgbGF0ZXIgKFZ1ZTogXCIgKyAoVnVlLnZlcnNpb24pICsgXCIpLlwiKSk7XG4gICAgcmV0dXJuXG4gIH1cblxuICBleHRlbmQoVnVlKTtcbiAgVnVlLm1peGluKGRlZmluZU1peGluKG9wdGlvbnMuYnJpZGdlKSk7XG4gIFZ1ZS5kaXJlY3RpdmUoJ3QnLCB7IGJpbmQ6IGJpbmQsIHVwZGF0ZTogdXBkYXRlLCB1bmJpbmQ6IHVuYmluZCB9KTtcbiAgVnVlLmNvbXBvbmVudChpbnRlcnBvbGF0aW9uQ29tcG9uZW50Lm5hbWUsIGludGVycG9sYXRpb25Db21wb25lbnQpO1xuICBWdWUuY29tcG9uZW50KG51bWJlckNvbXBvbmVudC5uYW1lLCBudW1iZXJDb21wb25lbnQpO1xuXG4gIC8vIHVzZSBzaW1wbGUgbWVyZ2VTdHJhdGVnaWVzIHRvIHByZXZlbnQgaTE4biBpbnN0YW5jZSBsb3NlICdfX3Byb3RvX18nXG4gIHZhciBzdHJhdHMgPSBWdWUuY29uZmlnLm9wdGlvbk1lcmdlU3RyYXRlZ2llcztcbiAgc3RyYXRzLmkxOG4gPSBmdW5jdGlvbiAocGFyZW50VmFsLCBjaGlsZFZhbCkge1xuICAgIHJldHVybiBjaGlsZFZhbCA9PT0gdW5kZWZpbmVkXG4gICAgICA/IHBhcmVudFZhbFxuICAgICAgOiBjaGlsZFZhbFxuICB9O1xufVxuXG4vKiAgKi9cblxudmFyIEJhc2VGb3JtYXR0ZXIgPSBmdW5jdGlvbiBCYXNlRm9ybWF0dGVyICgpIHtcbiAgdGhpcy5fY2FjaGVzID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbn07XG5cbkJhc2VGb3JtYXR0ZXIucHJvdG90eXBlLmludGVycG9sYXRlID0gZnVuY3Rpb24gaW50ZXJwb2xhdGUgKG1lc3NhZ2UsIHZhbHVlcykge1xuICBpZiAoIXZhbHVlcykge1xuICAgIHJldHVybiBbbWVzc2FnZV1cbiAgfVxuICB2YXIgdG9rZW5zID0gdGhpcy5fY2FjaGVzW21lc3NhZ2VdO1xuICBpZiAoIXRva2Vucykge1xuICAgIHRva2VucyA9IHBhcnNlKG1lc3NhZ2UpO1xuICAgIHRoaXMuX2NhY2hlc1ttZXNzYWdlXSA9IHRva2VucztcbiAgfVxuICByZXR1cm4gY29tcGlsZSh0b2tlbnMsIHZhbHVlcylcbn07XG5cblxuXG52YXIgUkVfVE9LRU5fTElTVF9WQUxVRSA9IC9eKD86XFxkKSsvO1xudmFyIFJFX1RPS0VOX05BTUVEX1ZBTFVFID0gL14oPzpcXHcpKy87XG5cbmZ1bmN0aW9uIHBhcnNlIChmb3JtYXQpIHtcbiAgdmFyIHRva2VucyA9IFtdO1xuICB2YXIgcG9zaXRpb24gPSAwO1xuXG4gIHZhciB0ZXh0ID0gJyc7XG4gIHdoaWxlIChwb3NpdGlvbiA8IGZvcm1hdC5sZW5ndGgpIHtcbiAgICB2YXIgY2hhciA9IGZvcm1hdFtwb3NpdGlvbisrXTtcbiAgICBpZiAoY2hhciA9PT0gJ3snKSB7XG4gICAgICBpZiAodGV4dCkge1xuICAgICAgICB0b2tlbnMucHVzaCh7IHR5cGU6ICd0ZXh0JywgdmFsdWU6IHRleHQgfSk7XG4gICAgICB9XG5cbiAgICAgIHRleHQgPSAnJztcbiAgICAgIHZhciBzdWIgPSAnJztcbiAgICAgIGNoYXIgPSBmb3JtYXRbcG9zaXRpb24rK107XG4gICAgICB3aGlsZSAoY2hhciAhPT0gdW5kZWZpbmVkICYmIGNoYXIgIT09ICd9Jykge1xuICAgICAgICBzdWIgKz0gY2hhcjtcbiAgICAgICAgY2hhciA9IGZvcm1hdFtwb3NpdGlvbisrXTtcbiAgICAgIH1cbiAgICAgIHZhciBpc0Nsb3NlZCA9IGNoYXIgPT09ICd9JztcblxuICAgICAgdmFyIHR5cGUgPSBSRV9UT0tFTl9MSVNUX1ZBTFVFLnRlc3Qoc3ViKVxuICAgICAgICA/ICdsaXN0J1xuICAgICAgICA6IGlzQ2xvc2VkICYmIFJFX1RPS0VOX05BTUVEX1ZBTFVFLnRlc3Qoc3ViKVxuICAgICAgICAgID8gJ25hbWVkJ1xuICAgICAgICAgIDogJ3Vua25vd24nO1xuICAgICAgdG9rZW5zLnB1c2goeyB2YWx1ZTogc3ViLCB0eXBlOiB0eXBlIH0pO1xuICAgIH0gZWxzZSBpZiAoY2hhciA9PT0gJyUnKSB7XG4gICAgICAvLyB3aGVuIGZvdW5kIHJhaWxzIGkxOG4gc3ludGF4LCBza2lwIHRleHQgY2FwdHVyZVxuICAgICAgaWYgKGZvcm1hdFsocG9zaXRpb24pXSAhPT0gJ3snKSB7XG4gICAgICAgIHRleHQgKz0gY2hhcjtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGV4dCArPSBjaGFyO1xuICAgIH1cbiAgfVxuXG4gIHRleHQgJiYgdG9rZW5zLnB1c2goeyB0eXBlOiAndGV4dCcsIHZhbHVlOiB0ZXh0IH0pO1xuXG4gIHJldHVybiB0b2tlbnNcbn1cblxuZnVuY3Rpb24gY29tcGlsZSAodG9rZW5zLCB2YWx1ZXMpIHtcbiAgdmFyIGNvbXBpbGVkID0gW107XG4gIHZhciBpbmRleCA9IDA7XG5cbiAgdmFyIG1vZGUgPSBBcnJheS5pc0FycmF5KHZhbHVlcylcbiAgICA/ICdsaXN0J1xuICAgIDogaXNPYmplY3QodmFsdWVzKVxuICAgICAgPyAnbmFtZWQnXG4gICAgICA6ICd1bmtub3duJztcbiAgaWYgKG1vZGUgPT09ICd1bmtub3duJykgeyByZXR1cm4gY29tcGlsZWQgfVxuXG4gIHdoaWxlIChpbmRleCA8IHRva2Vucy5sZW5ndGgpIHtcbiAgICB2YXIgdG9rZW4gPSB0b2tlbnNbaW5kZXhdO1xuICAgIHN3aXRjaCAodG9rZW4udHlwZSkge1xuICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgIGNvbXBpbGVkLnB1c2godG9rZW4udmFsdWUpO1xuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnbGlzdCc6XG4gICAgICAgIGNvbXBpbGVkLnB1c2godmFsdWVzW3BhcnNlSW50KHRva2VuLnZhbHVlLCAxMCldKTtcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ25hbWVkJzpcbiAgICAgICAgaWYgKG1vZGUgPT09ICduYW1lZCcpIHtcbiAgICAgICAgICBjb21waWxlZC5wdXNoKCh2YWx1ZXMpW3Rva2VuLnZhbHVlXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgIHdhcm4oKFwiVHlwZSBvZiB0b2tlbiAnXCIgKyAodG9rZW4udHlwZSkgKyBcIicgYW5kIGZvcm1hdCBvZiB2YWx1ZSAnXCIgKyBtb2RlICsgXCInIGRvbid0IG1hdGNoIVwiKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICd1bmtub3duJzpcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICB3YXJuKFwiRGV0ZWN0ICd1bmtub3duJyB0eXBlIG9mIHRva2VuIVwiKTtcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgIH1cbiAgICBpbmRleCsrO1xuICB9XG5cbiAgcmV0dXJuIGNvbXBpbGVkXG59XG5cbi8qICAqL1xuXG4vKipcbiAqICBQYXRoIHBhcnNlclxuICogIC0gSW5zcGlyZWQ6XG4gKiAgICBWdWUuanMgUGF0aCBwYXJzZXJcbiAqL1xuXG4vLyBhY3Rpb25zXG52YXIgQVBQRU5EID0gMDtcbnZhciBQVVNIID0gMTtcbnZhciBJTkNfU1VCX1BBVEhfREVQVEggPSAyO1xudmFyIFBVU0hfU1VCX1BBVEggPSAzO1xuXG4vLyBzdGF0ZXNcbnZhciBCRUZPUkVfUEFUSCA9IDA7XG52YXIgSU5fUEFUSCA9IDE7XG52YXIgQkVGT1JFX0lERU5UID0gMjtcbnZhciBJTl9JREVOVCA9IDM7XG52YXIgSU5fU1VCX1BBVEggPSA0O1xudmFyIElOX1NJTkdMRV9RVU9URSA9IDU7XG52YXIgSU5fRE9VQkxFX1FVT1RFID0gNjtcbnZhciBBRlRFUl9QQVRIID0gNztcbnZhciBFUlJPUiA9IDg7XG5cbnZhciBwYXRoU3RhdGVNYWNoaW5lID0gW107XG5cbnBhdGhTdGF0ZU1hY2hpbmVbQkVGT1JFX1BBVEhdID0ge1xuICAnd3MnOiBbQkVGT1JFX1BBVEhdLFxuICAnaWRlbnQnOiBbSU5fSURFTlQsIEFQUEVORF0sXG4gICdbJzogW0lOX1NVQl9QQVRIXSxcbiAgJ2VvZic6IFtBRlRFUl9QQVRIXVxufTtcblxucGF0aFN0YXRlTWFjaGluZVtJTl9QQVRIXSA9IHtcbiAgJ3dzJzogW0lOX1BBVEhdLFxuICAnLic6IFtCRUZPUkVfSURFTlRdLFxuICAnWyc6IFtJTl9TVUJfUEFUSF0sXG4gICdlb2YnOiBbQUZURVJfUEFUSF1cbn07XG5cbnBhdGhTdGF0ZU1hY2hpbmVbQkVGT1JFX0lERU5UXSA9IHtcbiAgJ3dzJzogW0JFRk9SRV9JREVOVF0sXG4gICdpZGVudCc6IFtJTl9JREVOVCwgQVBQRU5EXSxcbiAgJzAnOiBbSU5fSURFTlQsIEFQUEVORF0sXG4gICdudW1iZXInOiBbSU5fSURFTlQsIEFQUEVORF1cbn07XG5cbnBhdGhTdGF0ZU1hY2hpbmVbSU5fSURFTlRdID0ge1xuICAnaWRlbnQnOiBbSU5fSURFTlQsIEFQUEVORF0sXG4gICcwJzogW0lOX0lERU5ULCBBUFBFTkRdLFxuICAnbnVtYmVyJzogW0lOX0lERU5ULCBBUFBFTkRdLFxuICAnd3MnOiBbSU5fUEFUSCwgUFVTSF0sXG4gICcuJzogW0JFRk9SRV9JREVOVCwgUFVTSF0sXG4gICdbJzogW0lOX1NVQl9QQVRILCBQVVNIXSxcbiAgJ2VvZic6IFtBRlRFUl9QQVRILCBQVVNIXVxufTtcblxucGF0aFN0YXRlTWFjaGluZVtJTl9TVUJfUEFUSF0gPSB7XG4gIFwiJ1wiOiBbSU5fU0lOR0xFX1FVT1RFLCBBUFBFTkRdLFxuICAnXCInOiBbSU5fRE9VQkxFX1FVT1RFLCBBUFBFTkRdLFxuICAnWyc6IFtJTl9TVUJfUEFUSCwgSU5DX1NVQl9QQVRIX0RFUFRIXSxcbiAgJ10nOiBbSU5fUEFUSCwgUFVTSF9TVUJfUEFUSF0sXG4gICdlb2YnOiBFUlJPUixcbiAgJ2Vsc2UnOiBbSU5fU1VCX1BBVEgsIEFQUEVORF1cbn07XG5cbnBhdGhTdGF0ZU1hY2hpbmVbSU5fU0lOR0xFX1FVT1RFXSA9IHtcbiAgXCInXCI6IFtJTl9TVUJfUEFUSCwgQVBQRU5EXSxcbiAgJ2VvZic6IEVSUk9SLFxuICAnZWxzZSc6IFtJTl9TSU5HTEVfUVVPVEUsIEFQUEVORF1cbn07XG5cbnBhdGhTdGF0ZU1hY2hpbmVbSU5fRE9VQkxFX1FVT1RFXSA9IHtcbiAgJ1wiJzogW0lOX1NVQl9QQVRILCBBUFBFTkRdLFxuICAnZW9mJzogRVJST1IsXG4gICdlbHNlJzogW0lOX0RPVUJMRV9RVU9URSwgQVBQRU5EXVxufTtcblxuLyoqXG4gKiBDaGVjayBpZiBhbiBleHByZXNzaW9uIGlzIGEgbGl0ZXJhbCB2YWx1ZS5cbiAqL1xuXG52YXIgbGl0ZXJhbFZhbHVlUkUgPSAvXlxccz8oPzp0cnVlfGZhbHNlfC0/W1xcZC5dK3wnW14nXSonfFwiW15cIl0qXCIpXFxzPyQvO1xuZnVuY3Rpb24gaXNMaXRlcmFsIChleHApIHtcbiAgcmV0dXJuIGxpdGVyYWxWYWx1ZVJFLnRlc3QoZXhwKVxufVxuXG4vKipcbiAqIFN0cmlwIHF1b3RlcyBmcm9tIGEgc3RyaW5nXG4gKi9cblxuZnVuY3Rpb24gc3RyaXBRdW90ZXMgKHN0cikge1xuICB2YXIgYSA9IHN0ci5jaGFyQ29kZUF0KDApO1xuICB2YXIgYiA9IHN0ci5jaGFyQ29kZUF0KHN0ci5sZW5ndGggLSAxKTtcbiAgcmV0dXJuIGEgPT09IGIgJiYgKGEgPT09IDB4MjIgfHwgYSA9PT0gMHgyNylcbiAgICA/IHN0ci5zbGljZSgxLCAtMSlcbiAgICA6IHN0clxufVxuXG4vKipcbiAqIERldGVybWluZSB0aGUgdHlwZSBvZiBhIGNoYXJhY3RlciBpbiBhIGtleXBhdGguXG4gKi9cblxuZnVuY3Rpb24gZ2V0UGF0aENoYXJUeXBlIChjaCkge1xuICBpZiAoY2ggPT09IHVuZGVmaW5lZCB8fCBjaCA9PT0gbnVsbCkgeyByZXR1cm4gJ2VvZicgfVxuXG4gIHZhciBjb2RlID0gY2guY2hhckNvZGVBdCgwKTtcblxuICBzd2l0Y2ggKGNvZGUpIHtcbiAgICBjYXNlIDB4NUI6IC8vIFtcbiAgICBjYXNlIDB4NUQ6IC8vIF1cbiAgICBjYXNlIDB4MkU6IC8vIC5cbiAgICBjYXNlIDB4MjI6IC8vIFwiXG4gICAgY2FzZSAweDI3OiAvLyAnXG4gICAgICByZXR1cm4gY2hcblxuICAgIGNhc2UgMHg1RjogLy8gX1xuICAgIGNhc2UgMHgyNDogLy8gJFxuICAgIGNhc2UgMHgyRDogLy8gLVxuICAgICAgcmV0dXJuICdpZGVudCdcblxuICAgIGNhc2UgMHgwOTogLy8gVGFiXG4gICAgY2FzZSAweDBBOiAvLyBOZXdsaW5lXG4gICAgY2FzZSAweDBEOiAvLyBSZXR1cm5cbiAgICBjYXNlIDB4QTA6ICAvLyBOby1icmVhayBzcGFjZVxuICAgIGNhc2UgMHhGRUZGOiAgLy8gQnl0ZSBPcmRlciBNYXJrXG4gICAgY2FzZSAweDIwMjg6ICAvLyBMaW5lIFNlcGFyYXRvclxuICAgIGNhc2UgMHgyMDI5OiAgLy8gUGFyYWdyYXBoIFNlcGFyYXRvclxuICAgICAgcmV0dXJuICd3cydcbiAgfVxuXG4gIHJldHVybiAnaWRlbnQnXG59XG5cbi8qKlxuICogRm9ybWF0IGEgc3ViUGF0aCwgcmV0dXJuIGl0cyBwbGFpbiBmb3JtIGlmIGl0IGlzXG4gKiBhIGxpdGVyYWwgc3RyaW5nIG9yIG51bWJlci4gT3RoZXJ3aXNlIHByZXBlbmQgdGhlXG4gKiBkeW5hbWljIGluZGljYXRvciAoKikuXG4gKi9cblxuZnVuY3Rpb24gZm9ybWF0U3ViUGF0aCAocGF0aCkge1xuICB2YXIgdHJpbW1lZCA9IHBhdGgudHJpbSgpO1xuICAvLyBpbnZhbGlkIGxlYWRpbmcgMFxuICBpZiAocGF0aC5jaGFyQXQoMCkgPT09ICcwJyAmJiBpc05hTihwYXRoKSkgeyByZXR1cm4gZmFsc2UgfVxuXG4gIHJldHVybiBpc0xpdGVyYWwodHJpbW1lZCkgPyBzdHJpcFF1b3Rlcyh0cmltbWVkKSA6ICcqJyArIHRyaW1tZWRcbn1cblxuLyoqXG4gKiBQYXJzZSBhIHN0cmluZyBwYXRoIGludG8gYW4gYXJyYXkgb2Ygc2VnbWVudHNcbiAqL1xuXG5mdW5jdGlvbiBwYXJzZSQxIChwYXRoKSB7XG4gIHZhciBrZXlzID0gW107XG4gIHZhciBpbmRleCA9IC0xO1xuICB2YXIgbW9kZSA9IEJFRk9SRV9QQVRIO1xuICB2YXIgc3ViUGF0aERlcHRoID0gMDtcbiAgdmFyIGM7XG4gIHZhciBrZXk7XG4gIHZhciBuZXdDaGFyO1xuICB2YXIgdHlwZTtcbiAgdmFyIHRyYW5zaXRpb247XG4gIHZhciBhY3Rpb247XG4gIHZhciB0eXBlTWFwO1xuICB2YXIgYWN0aW9ucyA9IFtdO1xuXG4gIGFjdGlvbnNbUFVTSF0gPSBmdW5jdGlvbiAoKSB7XG4gICAgaWYgKGtleSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBrZXlzLnB1c2goa2V5KTtcbiAgICAgIGtleSA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH07XG5cbiAgYWN0aW9uc1tBUFBFTkRdID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChrZXkgPT09IHVuZGVmaW5lZCkge1xuICAgICAga2V5ID0gbmV3Q2hhcjtcbiAgICB9IGVsc2Uge1xuICAgICAga2V5ICs9IG5ld0NoYXI7XG4gICAgfVxuICB9O1xuXG4gIGFjdGlvbnNbSU5DX1NVQl9QQVRIX0RFUFRIXSA9IGZ1bmN0aW9uICgpIHtcbiAgICBhY3Rpb25zW0FQUEVORF0oKTtcbiAgICBzdWJQYXRoRGVwdGgrKztcbiAgfTtcblxuICBhY3Rpb25zW1BVU0hfU1VCX1BBVEhdID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChzdWJQYXRoRGVwdGggPiAwKSB7XG4gICAgICBzdWJQYXRoRGVwdGgtLTtcbiAgICAgIG1vZGUgPSBJTl9TVUJfUEFUSDtcbiAgICAgIGFjdGlvbnNbQVBQRU5EXSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzdWJQYXRoRGVwdGggPSAwO1xuICAgICAgaWYgKGtleSA9PT0gdW5kZWZpbmVkKSB7IHJldHVybiBmYWxzZSB9XG4gICAgICBrZXkgPSBmb3JtYXRTdWJQYXRoKGtleSk7XG4gICAgICBpZiAoa2V5ID09PSBmYWxzZSkge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjdGlvbnNbUFVTSF0oKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgZnVuY3Rpb24gbWF5YmVVbmVzY2FwZVF1b3RlICgpIHtcbiAgICB2YXIgbmV4dENoYXIgPSBwYXRoW2luZGV4ICsgMV07XG4gICAgaWYgKChtb2RlID09PSBJTl9TSU5HTEVfUVVPVEUgJiYgbmV4dENoYXIgPT09IFwiJ1wiKSB8fFxuICAgICAgKG1vZGUgPT09IElOX0RPVUJMRV9RVU9URSAmJiBuZXh0Q2hhciA9PT0gJ1wiJykpIHtcbiAgICAgIGluZGV4Kys7XG4gICAgICBuZXdDaGFyID0gJ1xcXFwnICsgbmV4dENoYXI7XG4gICAgICBhY3Rpb25zW0FQUEVORF0oKTtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICB9XG5cbiAgd2hpbGUgKG1vZGUgIT09IG51bGwpIHtcbiAgICBpbmRleCsrO1xuICAgIGMgPSBwYXRoW2luZGV4XTtcblxuICAgIGlmIChjID09PSAnXFxcXCcgJiYgbWF5YmVVbmVzY2FwZVF1b3RlKCkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgdHlwZSA9IGdldFBhdGhDaGFyVHlwZShjKTtcbiAgICB0eXBlTWFwID0gcGF0aFN0YXRlTWFjaGluZVttb2RlXTtcbiAgICB0cmFuc2l0aW9uID0gdHlwZU1hcFt0eXBlXSB8fCB0eXBlTWFwWydlbHNlJ10gfHwgRVJST1I7XG5cbiAgICBpZiAodHJhbnNpdGlvbiA9PT0gRVJST1IpIHtcbiAgICAgIHJldHVybiAvLyBwYXJzZSBlcnJvclxuICAgIH1cblxuICAgIG1vZGUgPSB0cmFuc2l0aW9uWzBdO1xuICAgIGFjdGlvbiA9IGFjdGlvbnNbdHJhbnNpdGlvblsxXV07XG4gICAgaWYgKGFjdGlvbikge1xuICAgICAgbmV3Q2hhciA9IHRyYW5zaXRpb25bMl07XG4gICAgICBuZXdDaGFyID0gbmV3Q2hhciA9PT0gdW5kZWZpbmVkXG4gICAgICAgID8gY1xuICAgICAgICA6IG5ld0NoYXI7XG4gICAgICBpZiAoYWN0aW9uKCkgPT09IGZhbHNlKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChtb2RlID09PSBBRlRFUl9QQVRIKSB7XG4gICAgICByZXR1cm4ga2V5c1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cbnZhciBJMThuUGF0aCA9IGZ1bmN0aW9uIEkxOG5QYXRoICgpIHtcbiAgdGhpcy5fY2FjaGUgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xufTtcblxuLyoqXG4gKiBFeHRlcm5hbCBwYXJzZSB0aGF0IGNoZWNrIGZvciBhIGNhY2hlIGhpdCBmaXJzdFxuICovXG5JMThuUGF0aC5wcm90b3R5cGUucGFyc2VQYXRoID0gZnVuY3Rpb24gcGFyc2VQYXRoIChwYXRoKSB7XG4gIHZhciBoaXQgPSB0aGlzLl9jYWNoZVtwYXRoXTtcbiAgaWYgKCFoaXQpIHtcbiAgICBoaXQgPSBwYXJzZSQxKHBhdGgpO1xuICAgIGlmIChoaXQpIHtcbiAgICAgIHRoaXMuX2NhY2hlW3BhdGhdID0gaGl0O1xuICAgIH1cbiAgfVxuICByZXR1cm4gaGl0IHx8IFtdXG59O1xuXG4vKipcbiAqIEdldCBwYXRoIHZhbHVlIGZyb20gcGF0aCBzdHJpbmdcbiAqL1xuSTE4blBhdGgucHJvdG90eXBlLmdldFBhdGhWYWx1ZSA9IGZ1bmN0aW9uIGdldFBhdGhWYWx1ZSAob2JqLCBwYXRoKSB7XG4gIGlmICghaXNPYmplY3Qob2JqKSkgeyByZXR1cm4gbnVsbCB9XG5cbiAgdmFyIHBhdGhzID0gdGhpcy5wYXJzZVBhdGgocGF0aCk7XG4gIGlmIChwYXRocy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gbnVsbFxuICB9IGVsc2Uge1xuICAgIHZhciBsZW5ndGggPSBwYXRocy5sZW5ndGg7XG4gICAgdmFyIGxhc3QgPSBvYmo7XG4gICAgdmFyIGkgPSAwO1xuICAgIHdoaWxlIChpIDwgbGVuZ3RoKSB7XG4gICAgICB2YXIgdmFsdWUgPSBsYXN0W3BhdGhzW2ldXTtcbiAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9XG4gICAgICBsYXN0ID0gdmFsdWU7XG4gICAgICBpKys7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxhc3RcbiAgfVxufTtcblxuLyogICovXG5cblxuXG52YXIgaHRtbFRhZ01hdGNoZXIgPSAvPFxcLz9bXFx3XFxzPVwiLy4nOjsjLVxcL10rPi87XG52YXIgbGlua0tleU1hdGNoZXIgPSAvKD86QCg/OlxcLlthLXpBLVpdKyk/Oig/OltcXHdcXC1ffC4vXSt8XFwoW1xcd1xcLV86fC4vXStcXCkpKS9nO1xudmFyIGxpbmtLZXlQcmVmaXhNYXRjaGVyID0gL15AKD86XFwuKFthLXpBLVpdKykpPzovO1xudmFyIGJyYWNrZXRzTWF0Y2hlciA9IC9bKCldL2c7XG52YXIgZGVmYXVsdE1vZGlmaWVycyA9IHtcbiAgJ3VwcGVyJzogZnVuY3Rpb24gKHN0cikgeyByZXR1cm4gc3RyLnRvTG9jYWxlVXBwZXJDYXNlKCk7IH0sXG4gICdsb3dlcic6IGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuIHN0ci50b0xvY2FsZUxvd2VyQ2FzZSgpOyB9LFxuICAnY2FwaXRhbGl6ZSc6IGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuIChcIlwiICsgKHN0ci5jaGFyQXQoMCkudG9Mb2NhbGVVcHBlckNhc2UoKSkgKyAoc3RyLnN1YnN0cigxKSkpOyB9XG59O1xuXG52YXIgZGVmYXVsdEZvcm1hdHRlciA9IG5ldyBCYXNlRm9ybWF0dGVyKCk7XG5cbnZhciBWdWVJMThuID0gZnVuY3Rpb24gVnVlSTE4biAob3B0aW9ucykge1xuICB2YXIgdGhpcyQxID0gdGhpcztcbiAgaWYgKCBvcHRpb25zID09PSB2b2lkIDAgKSBvcHRpb25zID0ge307XG5cbiAgLy8gQXV0byBpbnN0YWxsIGlmIGl0IGlzIG5vdCBkb25lIHlldCBhbmQgYHdpbmRvd2AgaGFzIGBWdWVgLlxuICAvLyBUbyBhbGxvdyB1c2VycyB0byBhdm9pZCBhdXRvLWluc3RhbGxhdGlvbiBpbiBzb21lIGNhc2VzLFxuICAvLyB0aGlzIGNvZGUgc2hvdWxkIGJlIHBsYWNlZCBoZXJlLiBTZWUgIzI5MFxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgaWYgKCFWdWUgJiYgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LlZ1ZSkge1xuICAgIGluc3RhbGwod2luZG93LlZ1ZSk7XG4gIH1cblxuICB2YXIgbG9jYWxlID0gb3B0aW9ucy5sb2NhbGUgfHwgJ2VuLVVTJztcbiAgdmFyIGZhbGxiYWNrTG9jYWxlID0gb3B0aW9ucy5mYWxsYmFja0xvY2FsZSA9PT0gZmFsc2VcbiAgICA/IGZhbHNlXG4gICAgOiBvcHRpb25zLmZhbGxiYWNrTG9jYWxlIHx8ICdlbi1VUyc7XG4gIHZhciBtZXNzYWdlcyA9IG9wdGlvbnMubWVzc2FnZXMgfHwge307XG4gIHZhciBkYXRlVGltZUZvcm1hdHMgPSBvcHRpb25zLmRhdGVUaW1lRm9ybWF0cyB8fCBvcHRpb25zLmRhdGV0aW1lRm9ybWF0cyB8fCB7fTtcbiAgdmFyIG51bWJlckZvcm1hdHMgPSBvcHRpb25zLm51bWJlckZvcm1hdHMgfHwge307XG5cbiAgdGhpcy5fdm0gPSBudWxsO1xuICB0aGlzLl9mb3JtYXR0ZXIgPSBvcHRpb25zLmZvcm1hdHRlciB8fCBkZWZhdWx0Rm9ybWF0dGVyO1xuICB0aGlzLl9tb2RpZmllcnMgPSBvcHRpb25zLm1vZGlmaWVycyB8fCB7fTtcbiAgdGhpcy5fbWlzc2luZyA9IG9wdGlvbnMubWlzc2luZyB8fCBudWxsO1xuICB0aGlzLl9yb290ID0gb3B0aW9ucy5yb290IHx8IG51bGw7XG4gIHRoaXMuX3N5bmMgPSBvcHRpb25zLnN5bmMgPT09IHVuZGVmaW5lZCA/IHRydWUgOiAhIW9wdGlvbnMuc3luYztcbiAgdGhpcy5fZmFsbGJhY2tSb290ID0gb3B0aW9ucy5mYWxsYmFja1Jvb3QgPT09IHVuZGVmaW5lZFxuICAgID8gdHJ1ZVxuICAgIDogISFvcHRpb25zLmZhbGxiYWNrUm9vdDtcbiAgdGhpcy5fZmFsbGJhY2tSb290V2l0aEVtcHR5U3RyaW5nID0gb3B0aW9ucy5mYWxsYmFja1Jvb3RXaXRoRW1wdHlTdHJpbmcgPT09IHVuZGVmaW5lZFxuICAgID8gdHJ1ZVxuICAgIDogISFvcHRpb25zLmZhbGxiYWNrUm9vdFdpdGhFbXB0eVN0cmluZztcbiAgdGhpcy5fZm9ybWF0RmFsbGJhY2tNZXNzYWdlcyA9IG9wdGlvbnMuZm9ybWF0RmFsbGJhY2tNZXNzYWdlcyA9PT0gdW5kZWZpbmVkXG4gICAgPyBmYWxzZVxuICAgIDogISFvcHRpb25zLmZvcm1hdEZhbGxiYWNrTWVzc2FnZXM7XG4gIHRoaXMuX3NpbGVudFRyYW5zbGF0aW9uV2FybiA9IG9wdGlvbnMuc2lsZW50VHJhbnNsYXRpb25XYXJuID09PSB1bmRlZmluZWRcbiAgICA/IGZhbHNlXG4gICAgOiBvcHRpb25zLnNpbGVudFRyYW5zbGF0aW9uV2FybjtcbiAgdGhpcy5fc2lsZW50RmFsbGJhY2tXYXJuID0gb3B0aW9ucy5zaWxlbnRGYWxsYmFja1dhcm4gPT09IHVuZGVmaW5lZFxuICAgID8gZmFsc2VcbiAgICA6ICEhb3B0aW9ucy5zaWxlbnRGYWxsYmFja1dhcm47XG4gIHRoaXMuX2RhdGVUaW1lRm9ybWF0dGVycyA9IHt9O1xuICB0aGlzLl9udW1iZXJGb3JtYXR0ZXJzID0ge307XG4gIHRoaXMuX3BhdGggPSBuZXcgSTE4blBhdGgoKTtcbiAgdGhpcy5fZGF0YUxpc3RlbmVycyA9IG5ldyBTZXQoKTtcbiAgdGhpcy5fY29tcG9uZW50SW5zdGFuY2VDcmVhdGVkTGlzdGVuZXIgPSBvcHRpb25zLmNvbXBvbmVudEluc3RhbmNlQ3JlYXRlZExpc3RlbmVyIHx8IG51bGw7XG4gIHRoaXMuX3ByZXNlcnZlRGlyZWN0aXZlQ29udGVudCA9IG9wdGlvbnMucHJlc2VydmVEaXJlY3RpdmVDb250ZW50ID09PSB1bmRlZmluZWRcbiAgICA/IGZhbHNlXG4gICAgOiAhIW9wdGlvbnMucHJlc2VydmVEaXJlY3RpdmVDb250ZW50O1xuICB0aGlzLnBsdXJhbGl6YXRpb25SdWxlcyA9IG9wdGlvbnMucGx1cmFsaXphdGlvblJ1bGVzIHx8IHt9O1xuICB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSA9IG9wdGlvbnMud2Fybkh0bWxJbk1lc3NhZ2UgfHwgJ29mZic7XG4gIHRoaXMuX3Bvc3RUcmFuc2xhdGlvbiA9IG9wdGlvbnMucG9zdFRyYW5zbGF0aW9uIHx8IG51bGw7XG4gIHRoaXMuX2VzY2FwZVBhcmFtZXRlckh0bWwgPSBvcHRpb25zLmVzY2FwZVBhcmFtZXRlckh0bWwgfHwgZmFsc2U7XG5cbiAgaWYgKCdfX1ZVRV9JMThOX0JSSURHRV9fJyBpbiBvcHRpb25zKSB7XG4gICAgdGhpcy5fX1ZVRV9JMThOX0JSSURHRV9fID0gb3B0aW9ucy5fX1ZVRV9JMThOX0JSSURHRV9fO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBjaG9pY2Uge251bWJlcn0gYSBjaG9pY2UgaW5kZXggZ2l2ZW4gYnkgdGhlIGlucHV0IHRvICR0YzogYCR0YygncGF0aC50by5ydWxlJywgY2hvaWNlSW5kZXgpYFxuICAgKiBAcGFyYW0gY2hvaWNlc0xlbmd0aCB7bnVtYmVyfSBhbiBvdmVyYWxsIGFtb3VudCBvZiBhdmFpbGFibGUgY2hvaWNlc1xuICAgKiBAcmV0dXJucyBhIGZpbmFsIGNob2ljZSBpbmRleFxuICAqL1xuICB0aGlzLmdldENob2ljZUluZGV4ID0gZnVuY3Rpb24gKGNob2ljZSwgY2hvaWNlc0xlbmd0aCkge1xuICAgIHZhciB0aGlzUHJvdG90eXBlID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKHRoaXMkMSk7XG4gICAgaWYgKHRoaXNQcm90b3R5cGUgJiYgdGhpc1Byb3RvdHlwZS5nZXRDaG9pY2VJbmRleCkge1xuICAgICAgdmFyIHByb3RvdHlwZUdldENob2ljZUluZGV4ID0gKHRoaXNQcm90b3R5cGUuZ2V0Q2hvaWNlSW5kZXgpO1xuICAgICAgcmV0dXJuIChwcm90b3R5cGVHZXRDaG9pY2VJbmRleCkuY2FsbCh0aGlzJDEsIGNob2ljZSwgY2hvaWNlc0xlbmd0aClcbiAgICB9XG5cbiAgICAvLyBEZWZhdWx0IChvbGQpIGdldENob2ljZUluZGV4IGltcGxlbWVudGF0aW9uIC0gZW5nbGlzaC1jb21wYXRpYmxlXG4gICAgdmFyIGRlZmF1bHRJbXBsID0gZnVuY3Rpb24gKF9jaG9pY2UsIF9jaG9pY2VzTGVuZ3RoKSB7XG4gICAgICBfY2hvaWNlID0gTWF0aC5hYnMoX2Nob2ljZSk7XG5cbiAgICAgIGlmIChfY2hvaWNlc0xlbmd0aCA9PT0gMikge1xuICAgICAgICByZXR1cm4gX2Nob2ljZVxuICAgICAgICAgID8gX2Nob2ljZSA+IDFcbiAgICAgICAgICAgID8gMVxuICAgICAgICAgICAgOiAwXG4gICAgICAgICAgOiAxXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBfY2hvaWNlID8gTWF0aC5taW4oX2Nob2ljZSwgMikgOiAwXG4gICAgfTtcblxuICAgIGlmICh0aGlzJDEubG9jYWxlIGluIHRoaXMkMS5wbHVyYWxpemF0aW9uUnVsZXMpIHtcbiAgICAgIHJldHVybiB0aGlzJDEucGx1cmFsaXphdGlvblJ1bGVzW3RoaXMkMS5sb2NhbGVdLmFwcGx5KHRoaXMkMSwgW2Nob2ljZSwgY2hvaWNlc0xlbmd0aF0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBkZWZhdWx0SW1wbChjaG9pY2UsIGNob2ljZXNMZW5ndGgpXG4gICAgfVxuICB9O1xuXG5cbiAgdGhpcy5fZXhpc3QgPSBmdW5jdGlvbiAobWVzc2FnZSwga2V5KSB7XG4gICAgaWYgKCFtZXNzYWdlIHx8ICFrZXkpIHsgcmV0dXJuIGZhbHNlIH1cbiAgICBpZiAoIWlzTnVsbCh0aGlzJDEuX3BhdGguZ2V0UGF0aFZhbHVlKG1lc3NhZ2UsIGtleSkpKSB7IHJldHVybiB0cnVlIH1cbiAgICAvLyBmYWxsYmFjayBmb3IgZmxhdCBrZXlcbiAgICBpZiAobWVzc2FnZVtrZXldKSB7IHJldHVybiB0cnVlIH1cbiAgICByZXR1cm4gZmFsc2VcbiAgfTtcblxuICBpZiAodGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UgPT09ICd3YXJuJyB8fCB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSA9PT0gJ2Vycm9yJykge1xuICAgIE9iamVjdC5rZXlzKG1lc3NhZ2VzKS5mb3JFYWNoKGZ1bmN0aW9uIChsb2NhbGUpIHtcbiAgICAgIHRoaXMkMS5fY2hlY2tMb2NhbGVNZXNzYWdlKGxvY2FsZSwgdGhpcyQxLl93YXJuSHRtbEluTWVzc2FnZSwgbWVzc2FnZXNbbG9jYWxlXSk7XG4gICAgfSk7XG4gIH1cblxuICB0aGlzLl9pbml0Vk0oe1xuICAgIGxvY2FsZTogbG9jYWxlLFxuICAgIGZhbGxiYWNrTG9jYWxlOiBmYWxsYmFja0xvY2FsZSxcbiAgICBtZXNzYWdlczogbWVzc2FnZXMsXG4gICAgZGF0ZVRpbWVGb3JtYXRzOiBkYXRlVGltZUZvcm1hdHMsXG4gICAgbnVtYmVyRm9ybWF0czogbnVtYmVyRm9ybWF0c1xuICB9KTtcbn07XG5cbnZhciBwcm90b3R5cGVBY2Nlc3NvcnMgPSB7IHZtOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LG1lc3NhZ2VzOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LGRhdGVUaW1lRm9ybWF0czogeyBjb25maWd1cmFibGU6IHRydWUgfSxudW1iZXJGb3JtYXRzOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LGF2YWlsYWJsZUxvY2FsZXM6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0sbG9jYWxlOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LGZhbGxiYWNrTG9jYWxlOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LGZvcm1hdEZhbGxiYWNrTWVzc2FnZXM6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0sbWlzc2luZzogeyBjb25maWd1cmFibGU6IHRydWUgfSxmb3JtYXR0ZXI6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0sc2lsZW50VHJhbnNsYXRpb25XYXJuOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LHNpbGVudEZhbGxiYWNrV2FybjogeyBjb25maWd1cmFibGU6IHRydWUgfSxwcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQ6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0sd2Fybkh0bWxJbk1lc3NhZ2U6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0scG9zdFRyYW5zbGF0aW9uOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LHN5bmM6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0gfTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2NoZWNrTG9jYWxlTWVzc2FnZSA9IGZ1bmN0aW9uIF9jaGVja0xvY2FsZU1lc3NhZ2UgKGxvY2FsZSwgbGV2ZWwsIG1lc3NhZ2UpIHtcbiAgdmFyIHBhdGhzID0gW107XG5cbiAgdmFyIGZuID0gZnVuY3Rpb24gKGxldmVsLCBsb2NhbGUsIG1lc3NhZ2UsIHBhdGhzKSB7XG4gICAgaWYgKGlzUGxhaW5PYmplY3QobWVzc2FnZSkpIHtcbiAgICAgIE9iamVjdC5rZXlzKG1lc3NhZ2UpLmZvckVhY2goZnVuY3Rpb24gKGtleSkge1xuICAgICAgICB2YXIgdmFsID0gbWVzc2FnZVtrZXldO1xuICAgICAgICBpZiAoaXNQbGFpbk9iamVjdCh2YWwpKSB7XG4gICAgICAgICAgcGF0aHMucHVzaChrZXkpO1xuICAgICAgICAgIHBhdGhzLnB1c2goJy4nKTtcbiAgICAgICAgICBmbihsZXZlbCwgbG9jYWxlLCB2YWwsIHBhdGhzKTtcbiAgICAgICAgICBwYXRocy5wb3AoKTtcbiAgICAgICAgICBwYXRocy5wb3AoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwYXRocy5wdXNoKGtleSk7XG4gICAgICAgICAgZm4obGV2ZWwsIGxvY2FsZSwgdmFsLCBwYXRocyk7XG4gICAgICAgICAgcGF0aHMucG9wKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoaXNBcnJheShtZXNzYWdlKSkge1xuICAgICAgbWVzc2FnZS5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtLCBpbmRleCkge1xuICAgICAgICBpZiAoaXNQbGFpbk9iamVjdChpdGVtKSkge1xuICAgICAgICAgIHBhdGhzLnB1c2goKFwiW1wiICsgaW5kZXggKyBcIl1cIikpO1xuICAgICAgICAgIHBhdGhzLnB1c2goJy4nKTtcbiAgICAgICAgICBmbihsZXZlbCwgbG9jYWxlLCBpdGVtLCBwYXRocyk7XG4gICAgICAgICAgcGF0aHMucG9wKCk7XG4gICAgICAgICAgcGF0aHMucG9wKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGF0aHMucHVzaCgoXCJbXCIgKyBpbmRleCArIFwiXVwiKSk7XG4gICAgICAgICAgZm4obGV2ZWwsIGxvY2FsZSwgaXRlbSwgcGF0aHMpO1xuICAgICAgICAgIHBhdGhzLnBvcCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGlzU3RyaW5nKG1lc3NhZ2UpKSB7XG4gICAgICB2YXIgcmV0ID0gaHRtbFRhZ01hdGNoZXIudGVzdChtZXNzYWdlKTtcbiAgICAgIGlmIChyZXQpIHtcbiAgICAgICAgdmFyIG1zZyA9IFwiRGV0ZWN0ZWQgSFRNTCBpbiBtZXNzYWdlICdcIiArIG1lc3NhZ2UgKyBcIicgb2Yga2V5cGF0aCAnXCIgKyAocGF0aHMuam9pbignJykpICsgXCInIGF0ICdcIiArIGxvY2FsZSArIFwiJy4gQ29uc2lkZXIgY29tcG9uZW50IGludGVycG9sYXRpb24gd2l0aCAnPGkxOG4+JyB0byBhdm9pZCBYU1MuIFNlZSBodHRwczovL2JpdC5seS8yWnFKemtwXCI7XG4gICAgICAgIGlmIChsZXZlbCA9PT0gJ3dhcm4nKSB7XG4gICAgICAgICAgd2Fybihtc2cpO1xuICAgICAgICB9IGVsc2UgaWYgKGxldmVsID09PSAnZXJyb3InKSB7XG4gICAgICAgICAgZXJyb3IobXNnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBmbihsZXZlbCwgbG9jYWxlLCBtZXNzYWdlLCBwYXRocyk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5faW5pdFZNID0gZnVuY3Rpb24gX2luaXRWTSAoZGF0YSkge1xuICB2YXIgc2lsZW50ID0gVnVlLmNvbmZpZy5zaWxlbnQ7XG4gIFZ1ZS5jb25maWcuc2lsZW50ID0gdHJ1ZTtcbiAgdGhpcy5fdm0gPSBuZXcgVnVlKHsgZGF0YTogZGF0YSwgX19WVUUxOE5fX0lOU1RBTkNFX186IHRydWUgfSk7XG4gIFZ1ZS5jb25maWcuc2lsZW50ID0gc2lsZW50O1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuZGVzdHJveVZNID0gZnVuY3Rpb24gZGVzdHJveVZNICgpIHtcbiAgdGhpcy5fdm0uJGRlc3Ryb3koKTtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLnN1YnNjcmliZURhdGFDaGFuZ2luZyA9IGZ1bmN0aW9uIHN1YnNjcmliZURhdGFDaGFuZ2luZyAodm0pIHtcbiAgdGhpcy5fZGF0YUxpc3RlbmVycy5hZGQodm0pO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUudW5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcgPSBmdW5jdGlvbiB1bnN1YnNjcmliZURhdGFDaGFuZ2luZyAodm0pIHtcbiAgcmVtb3ZlKHRoaXMuX2RhdGFMaXN0ZW5lcnMsIHZtKTtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLndhdGNoSTE4bkRhdGEgPSBmdW5jdGlvbiB3YXRjaEkxOG5EYXRhICgpIHtcbiAgICB2YXIgdGhpcyQxID0gdGhpcztcbiAgcmV0dXJuIHRoaXMuX3ZtLiR3YXRjaCgnJGRhdGEnLCBmdW5jdGlvbiAoKSB7XG4gICAgdmFyIGxpc3RlbmVycyA9IGFycmF5RnJvbSh0aGlzJDEuX2RhdGFMaXN0ZW5lcnMpO1xuICAgIHZhciBpID0gbGlzdGVuZXJzLmxlbmd0aDtcbiAgICB3aGlsZShpLS0pIHtcbiAgICAgIFZ1ZS5uZXh0VGljayhmdW5jdGlvbiAoKSB7XG4gICAgICAgIGxpc3RlbmVyc1tpXSAmJiBsaXN0ZW5lcnNbaV0uJGZvcmNlVXBkYXRlKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH0sIHsgZGVlcDogdHJ1ZSB9KVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUud2F0Y2hMb2NhbGUgPSBmdW5jdGlvbiB3YXRjaExvY2FsZSAoY29tcG9zZXIpIHtcbiAgaWYgKCFjb21wb3Nlcikge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICghdGhpcy5fc3luYyB8fCAhdGhpcy5fcm9vdCkgeyByZXR1cm4gbnVsbCB9XG4gICAgdmFyIHRhcmdldCA9IHRoaXMuX3ZtO1xuICAgIHJldHVybiB0aGlzLl9yb290LiRpMThuLnZtLiR3YXRjaCgnbG9jYWxlJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgdGFyZ2V0LiRzZXQodGFyZ2V0LCAnbG9jYWxlJywgdmFsKTtcbiAgICAgIHRhcmdldC4kZm9yY2VVcGRhdGUoKTtcbiAgICB9LCB7IGltbWVkaWF0ZTogdHJ1ZSB9KVxuICB9IGVsc2Uge1xuICAgIC8vIGRlYWwgd2l0aCB2dWUtaTE4bi1icmlkZ2VcbiAgICBpZiAoIXRoaXMuX19WVUVfSTE4Tl9CUklER0VfXykgeyByZXR1cm4gbnVsbCB9XG4gICAgdmFyIHNlbGYgPSB0aGlzO1xuICAgIHZhciB0YXJnZXQkMSA9IHRoaXMuX3ZtO1xuICAgIHJldHVybiB0aGlzLnZtLiR3YXRjaCgnbG9jYWxlJywgZnVuY3Rpb24gKHZhbCkge1xuICAgICAgdGFyZ2V0JDEuJHNldCh0YXJnZXQkMSwgJ2xvY2FsZScsIHZhbCk7XG4gICAgICBpZiAoc2VsZi5fX1ZVRV9JMThOX0JSSURHRV9fICYmIGNvbXBvc2VyKSB7XG4gICAgICAgIGNvbXBvc2VyLmxvY2FsZS52YWx1ZSA9IHZhbDtcbiAgICAgIH1cbiAgICAgIHRhcmdldCQxLiRmb3JjZVVwZGF0ZSgpO1xuICAgIH0sIHsgaW1tZWRpYXRlOiB0cnVlIH0pXG4gIH1cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLm9uQ29tcG9uZW50SW5zdGFuY2VDcmVhdGVkID0gZnVuY3Rpb24gb25Db21wb25lbnRJbnN0YW5jZUNyZWF0ZWQgKG5ld0kxOG4pIHtcbiAgaWYgKHRoaXMuX2NvbXBvbmVudEluc3RhbmNlQ3JlYXRlZExpc3RlbmVyKSB7XG4gICAgdGhpcy5fY29tcG9uZW50SW5zdGFuY2VDcmVhdGVkTGlzdGVuZXIobmV3STE4biwgdGhpcyk7XG4gIH1cbn07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy52bS5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl92bSB9O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMubWVzc2FnZXMuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gbG9vc2VDbG9uZSh0aGlzLl9nZXRNZXNzYWdlcygpKSB9O1xucHJvdG90eXBlQWNjZXNzb3JzLmRhdGVUaW1lRm9ybWF0cy5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBsb29zZUNsb25lKHRoaXMuX2dldERhdGVUaW1lRm9ybWF0cygpKSB9O1xucHJvdG90eXBlQWNjZXNzb3JzLm51bWJlckZvcm1hdHMuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gbG9vc2VDbG9uZSh0aGlzLl9nZXROdW1iZXJGb3JtYXRzKCkpIH07XG5wcm90b3R5cGVBY2Nlc3NvcnMuYXZhaWxhYmxlTG9jYWxlcy5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBPYmplY3Qua2V5cyh0aGlzLm1lc3NhZ2VzKS5zb3J0KCkgfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLmxvY2FsZS5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl92bS5sb2NhbGUgfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5sb2NhbGUuc2V0ID0gZnVuY3Rpb24gKGxvY2FsZSkge1xuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLCAnbG9jYWxlJywgbG9jYWxlKTtcbn07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5mYWxsYmFja0xvY2FsZS5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl92bS5mYWxsYmFja0xvY2FsZSB9O1xucHJvdG90eXBlQWNjZXNzb3JzLmZhbGxiYWNrTG9jYWxlLnNldCA9IGZ1bmN0aW9uIChsb2NhbGUpIHtcbiAgdGhpcy5fbG9jYWxlQ2hhaW5DYWNoZSA9IHt9O1xuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLCAnZmFsbGJhY2tMb2NhbGUnLCBsb2NhbGUpO1xufTtcblxucHJvdG90eXBlQWNjZXNzb3JzLmZvcm1hdEZhbGxiYWNrTWVzc2FnZXMuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fZm9ybWF0RmFsbGJhY2tNZXNzYWdlcyB9O1xucHJvdG90eXBlQWNjZXNzb3JzLmZvcm1hdEZhbGxiYWNrTWVzc2FnZXMuc2V0ID0gZnVuY3Rpb24gKGZhbGxiYWNrKSB7IHRoaXMuX2Zvcm1hdEZhbGxiYWNrTWVzc2FnZXMgPSBmYWxsYmFjazsgfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLm1pc3NpbmcuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fbWlzc2luZyB9O1xucHJvdG90eXBlQWNjZXNzb3JzLm1pc3Npbmcuc2V0ID0gZnVuY3Rpb24gKGhhbmRsZXIpIHsgdGhpcy5fbWlzc2luZyA9IGhhbmRsZXI7IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5mb3JtYXR0ZXIuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fZm9ybWF0dGVyIH07XG5wcm90b3R5cGVBY2Nlc3NvcnMuZm9ybWF0dGVyLnNldCA9IGZ1bmN0aW9uIChmb3JtYXR0ZXIpIHsgdGhpcy5fZm9ybWF0dGVyID0gZm9ybWF0dGVyOyB9O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMuc2lsZW50VHJhbnNsYXRpb25XYXJuLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX3NpbGVudFRyYW5zbGF0aW9uV2FybiB9O1xucHJvdG90eXBlQWNjZXNzb3JzLnNpbGVudFRyYW5zbGF0aW9uV2Fybi5zZXQgPSBmdW5jdGlvbiAoc2lsZW50KSB7IHRoaXMuX3NpbGVudFRyYW5zbGF0aW9uV2FybiA9IHNpbGVudDsgfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLnNpbGVudEZhbGxiYWNrV2Fybi5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl9zaWxlbnRGYWxsYmFja1dhcm4gfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5zaWxlbnRGYWxsYmFja1dhcm4uc2V0ID0gZnVuY3Rpb24gKHNpbGVudCkgeyB0aGlzLl9zaWxlbnRGYWxsYmFja1dhcm4gPSBzaWxlbnQ7IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5wcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fcHJlc2VydmVEaXJlY3RpdmVDb250ZW50IH07XG5wcm90b3R5cGVBY2Nlc3NvcnMucHJlc2VydmVEaXJlY3RpdmVDb250ZW50LnNldCA9IGZ1bmN0aW9uIChwcmVzZXJ2ZSkgeyB0aGlzLl9wcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQgPSBwcmVzZXJ2ZTsgfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLndhcm5IdG1sSW5NZXNzYWdlLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlIH07XG5wcm90b3R5cGVBY2Nlc3NvcnMud2Fybkh0bWxJbk1lc3NhZ2Uuc2V0ID0gZnVuY3Rpb24gKGxldmVsKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgdmFyIG9yZ0xldmVsID0gdGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2U7XG4gIHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlID0gbGV2ZWw7XG4gIGlmIChvcmdMZXZlbCAhPT0gbGV2ZWwgJiYgKGxldmVsID09PSAnd2FybicgfHwgbGV2ZWwgPT09ICdlcnJvcicpKSB7XG4gICAgdmFyIG1lc3NhZ2VzID0gdGhpcy5fZ2V0TWVzc2FnZXMoKTtcbiAgICBPYmplY3Qua2V5cyhtZXNzYWdlcykuZm9yRWFjaChmdW5jdGlvbiAobG9jYWxlKSB7XG4gICAgICB0aGlzJDEuX2NoZWNrTG9jYWxlTWVzc2FnZShsb2NhbGUsIHRoaXMkMS5fd2Fybkh0bWxJbk1lc3NhZ2UsIG1lc3NhZ2VzW2xvY2FsZV0pO1xuICAgIH0pO1xuICB9XG59O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMucG9zdFRyYW5zbGF0aW9uLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX3Bvc3RUcmFuc2xhdGlvbiB9O1xucHJvdG90eXBlQWNjZXNzb3JzLnBvc3RUcmFuc2xhdGlvbi5zZXQgPSBmdW5jdGlvbiAoaGFuZGxlcikgeyB0aGlzLl9wb3N0VHJhbnNsYXRpb24gPSBoYW5kbGVyOyB9O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMuc3luYy5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl9zeW5jIH07XG5wcm90b3R5cGVBY2Nlc3NvcnMuc3luYy5zZXQgPSBmdW5jdGlvbiAodmFsKSB7IHRoaXMuX3N5bmMgPSB2YWw7IH07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9nZXRNZXNzYWdlcyA9IGZ1bmN0aW9uIF9nZXRNZXNzYWdlcyAoKSB7IHJldHVybiB0aGlzLl92bS5tZXNzYWdlcyB9O1xuVnVlSTE4bi5wcm90b3R5cGUuX2dldERhdGVUaW1lRm9ybWF0cyA9IGZ1bmN0aW9uIF9nZXREYXRlVGltZUZvcm1hdHMgKCkgeyByZXR1cm4gdGhpcy5fdm0uZGF0ZVRpbWVGb3JtYXRzIH07XG5WdWVJMThuLnByb3RvdHlwZS5fZ2V0TnVtYmVyRm9ybWF0cyA9IGZ1bmN0aW9uIF9nZXROdW1iZXJGb3JtYXRzICgpIHsgcmV0dXJuIHRoaXMuX3ZtLm51bWJlckZvcm1hdHMgfTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX3dhcm5EZWZhdWx0ID0gZnVuY3Rpb24gX3dhcm5EZWZhdWx0IChsb2NhbGUsIGtleSwgcmVzdWx0LCB2bSwgdmFsdWVzLCBpbnRlcnBvbGF0ZU1vZGUpIHtcbiAgaWYgKCFpc051bGwocmVzdWx0KSkgeyByZXR1cm4gcmVzdWx0IH1cbiAgaWYgKHRoaXMuX21pc3NpbmcpIHtcbiAgICB2YXIgbWlzc2luZ1JldCA9IHRoaXMuX21pc3NpbmcuYXBwbHkobnVsbCwgW2xvY2FsZSwga2V5LCB2bSwgdmFsdWVzXSk7XG4gICAgaWYgKGlzU3RyaW5nKG1pc3NpbmdSZXQpKSB7XG4gICAgICByZXR1cm4gbWlzc2luZ1JldFxuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSkge1xuICAgICAgd2FybihcbiAgICAgICAgXCJDYW5ub3QgdHJhbnNsYXRlIHRoZSB2YWx1ZSBvZiBrZXlwYXRoICdcIiArIGtleSArIFwiJy4gXCIgK1xuICAgICAgICAnVXNlIHRoZSB2YWx1ZSBvZiBrZXlwYXRoIGFzIGRlZmF1bHQuJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBpZiAodGhpcy5fZm9ybWF0RmFsbGJhY2tNZXNzYWdlcykge1xuICAgIHZhciBwYXJzZWRBcmdzID0gcGFyc2VBcmdzLmFwcGx5KHZvaWQgMCwgdmFsdWVzKTtcbiAgICByZXR1cm4gdGhpcy5fcmVuZGVyKGtleSwgaW50ZXJwb2xhdGVNb2RlLCBwYXJzZWRBcmdzLnBhcmFtcywga2V5KVxuICB9IGVsc2Uge1xuICAgIHJldHVybiBrZXlcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2lzRmFsbGJhY2tSb290ID0gZnVuY3Rpb24gX2lzRmFsbGJhY2tSb290ICh2YWwpIHtcbiAgcmV0dXJuICh0aGlzLl9mYWxsYmFja1Jvb3RXaXRoRW1wdHlTdHJpbmc/ICF2YWwgOiBpc051bGwodmFsKSkgJiYgIWlzTnVsbCh0aGlzLl9yb290KSAmJiB0aGlzLl9mYWxsYmFja1Jvb3Rcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9pc1NpbGVudEZhbGxiYWNrV2FybiA9IGZ1bmN0aW9uIF9pc1NpbGVudEZhbGxiYWNrV2FybiAoa2V5KSB7XG4gIHJldHVybiB0aGlzLl9zaWxlbnRGYWxsYmFja1dhcm4gaW5zdGFuY2VvZiBSZWdFeHBcbiAgICA/IHRoaXMuX3NpbGVudEZhbGxiYWNrV2Fybi50ZXN0KGtleSlcbiAgICA6IHRoaXMuX3NpbGVudEZhbGxiYWNrV2FyblxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2lzU2lsZW50RmFsbGJhY2sgPSBmdW5jdGlvbiBfaXNTaWxlbnRGYWxsYmFjayAobG9jYWxlLCBrZXkpIHtcbiAgcmV0dXJuIHRoaXMuX2lzU2lsZW50RmFsbGJhY2tXYXJuKGtleSkgJiYgKHRoaXMuX2lzRmFsbGJhY2tSb290KCkgfHwgbG9jYWxlICE9PSB0aGlzLmZhbGxiYWNrTG9jYWxlKVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuID0gZnVuY3Rpb24gX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuIChrZXkpIHtcbiAgcmV0dXJuIHRoaXMuX3NpbGVudFRyYW5zbGF0aW9uV2FybiBpbnN0YW5jZW9mIFJlZ0V4cFxuICAgID8gdGhpcy5fc2lsZW50VHJhbnNsYXRpb25XYXJuLnRlc3Qoa2V5KVxuICAgIDogdGhpcy5fc2lsZW50VHJhbnNsYXRpb25XYXJuXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5faW50ZXJwb2xhdGUgPSBmdW5jdGlvbiBfaW50ZXJwb2xhdGUgKFxuICBsb2NhbGUsXG4gIG1lc3NhZ2UsXG4gIGtleSxcbiAgaG9zdCxcbiAgaW50ZXJwb2xhdGVNb2RlLFxuICB2YWx1ZXMsXG4gIHZpc2l0ZWRMaW5rU3RhY2tcbikge1xuICBpZiAoIW1lc3NhZ2UpIHsgcmV0dXJuIG51bGwgfVxuXG4gIHZhciBwYXRoUmV0ID0gdGhpcy5fcGF0aC5nZXRQYXRoVmFsdWUobWVzc2FnZSwga2V5KTtcbiAgaWYgKGlzQXJyYXkocGF0aFJldCkgfHwgaXNQbGFpbk9iamVjdChwYXRoUmV0KSkgeyByZXR1cm4gcGF0aFJldCB9XG5cbiAgdmFyIHJldDtcbiAgaWYgKGlzTnVsbChwYXRoUmV0KSkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGlzUGxhaW5PYmplY3QobWVzc2FnZSkpIHtcbiAgICAgIHJldCA9IG1lc3NhZ2Vba2V5XTtcbiAgICAgIGlmICghKGlzU3RyaW5nKHJldCkgfHwgaXNGdW5jdGlvbihyZXQpKSkge1xuICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFjayhsb2NhbGUsIGtleSkpIHtcbiAgICAgICAgICB3YXJuKChcIlZhbHVlIG9mIGtleSAnXCIgKyBrZXkgKyBcIicgaXMgbm90IGEgc3RyaW5nIG9yIGZ1bmN0aW9uICFcIikpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGlzU3RyaW5nKHBhdGhSZXQpIHx8IGlzRnVuY3Rpb24ocGF0aFJldCkpIHtcbiAgICAgIHJldCA9IHBhdGhSZXQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICF0aGlzLl9pc1NpbGVudFRyYW5zbGF0aW9uV2FybihrZXkpICYmICF0aGlzLl9pc1NpbGVudEZhbGxiYWNrKGxvY2FsZSwga2V5KSkge1xuICAgICAgICB3YXJuKChcIlZhbHVlIG9mIGtleSAnXCIgKyBrZXkgKyBcIicgaXMgbm90IGEgc3RyaW5nIG9yIGZ1bmN0aW9uIVwiKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfVxuXG4gIC8vIENoZWNrIGZvciB0aGUgZXhpc3RlbmNlIG9mIGxpbmtzIHdpdGhpbiB0aGUgdHJhbnNsYXRlZCBzdHJpbmdcbiAgaWYgKGlzU3RyaW5nKHJldCkgJiYgKHJldC5pbmRleE9mKCdAOicpID49IDAgfHwgcmV0LmluZGV4T2YoJ0AuJykgPj0gMCkpIHtcbiAgICByZXQgPSB0aGlzLl9saW5rKGxvY2FsZSwgbWVzc2FnZSwgcmV0LCBob3N0LCAncmF3JywgdmFsdWVzLCB2aXNpdGVkTGlua1N0YWNrKTtcbiAgfVxuXG4gIHJldHVybiB0aGlzLl9yZW5kZXIocmV0LCBpbnRlcnBvbGF0ZU1vZGUsIHZhbHVlcywga2V5KVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2xpbmsgPSBmdW5jdGlvbiBfbGluayAoXG4gIGxvY2FsZSxcbiAgbWVzc2FnZSxcbiAgc3RyLFxuICBob3N0LFxuICBpbnRlcnBvbGF0ZU1vZGUsXG4gIHZhbHVlcyxcbiAgdmlzaXRlZExpbmtTdGFja1xuKSB7XG4gIHZhciByZXQgPSBzdHI7XG5cbiAgLy8gTWF0Y2ggYWxsIHRoZSBsaW5rcyB3aXRoaW4gdGhlIGxvY2FsXG4gIC8vIFdlIGFyZSBnb2luZyB0byByZXBsYWNlIGVhY2ggb2ZcbiAgLy8gdGhlbSB3aXRoIGl0cyB0cmFuc2xhdGlvblxuICB2YXIgbWF0Y2hlcyA9IHJldC5tYXRjaChsaW5rS2V5TWF0Y2hlcik7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF1dG9maXgvcHJlZmVyLWNvbnN0XG4gIGZvciAodmFyIGlkeCBpbiBtYXRjaGVzKSB7XG4gICAgLy8gaWUgY29tcGF0aWJsZTogZmlsdGVyIGN1c3RvbSBhcnJheVxuICAgIC8vIHByb3RvdHlwZSBtZXRob2RcbiAgICBpZiAoIW1hdGNoZXMuaGFzT3duUHJvcGVydHkoaWR4KSkge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgdmFyIGxpbmsgPSBtYXRjaGVzW2lkeF07XG4gICAgdmFyIGxpbmtLZXlQcmVmaXhNYXRjaGVzID0gbGluay5tYXRjaChsaW5rS2V5UHJlZml4TWF0Y2hlcik7XG4gICAgdmFyIGxpbmtQcmVmaXggPSBsaW5rS2V5UHJlZml4TWF0Y2hlc1swXTtcbiAgICAgIHZhciBmb3JtYXR0ZXJOYW1lID0gbGlua0tleVByZWZpeE1hdGNoZXNbMV07XG5cbiAgICAvLyBSZW1vdmUgdGhlIGxlYWRpbmcgQDosIEAuY2FzZTogYW5kIHRoZSBicmFja2V0c1xuICAgIHZhciBsaW5rUGxhY2Vob2xkZXIgPSBsaW5rLnJlcGxhY2UobGlua1ByZWZpeCwgJycpLnJlcGxhY2UoYnJhY2tldHNNYXRjaGVyLCAnJyk7XG5cbiAgICBpZiAoaW5jbHVkZXModmlzaXRlZExpbmtTdGFjaywgbGlua1BsYWNlaG9sZGVyKSkge1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgd2FybigoXCJDaXJjdWxhciByZWZlcmVuY2UgZm91bmQuIFxcXCJcIiArIGxpbmsgKyBcIlxcXCIgaXMgYWxyZWFkeSB2aXNpdGVkIGluIHRoZSBjaGFpbiBvZiBcIiArICh2aXNpdGVkTGlua1N0YWNrLnJldmVyc2UoKS5qb2luKCcgPC0gJykpKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmV0XG4gICAgfVxuICAgIHZpc2l0ZWRMaW5rU3RhY2sucHVzaChsaW5rUGxhY2Vob2xkZXIpO1xuXG4gICAgLy8gVHJhbnNsYXRlIHRoZSBsaW5rXG4gICAgdmFyIHRyYW5zbGF0ZWQgPSB0aGlzLl9pbnRlcnBvbGF0ZShcbiAgICAgIGxvY2FsZSwgbWVzc2FnZSwgbGlua1BsYWNlaG9sZGVyLCBob3N0LFxuICAgICAgaW50ZXJwb2xhdGVNb2RlID09PSAncmF3JyA/ICdzdHJpbmcnIDogaW50ZXJwb2xhdGVNb2RlLFxuICAgICAgaW50ZXJwb2xhdGVNb2RlID09PSAncmF3JyA/IHVuZGVmaW5lZCA6IHZhbHVlcyxcbiAgICAgIHZpc2l0ZWRMaW5rU3RhY2tcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuX2lzRmFsbGJhY2tSb290KHRyYW5zbGF0ZWQpKSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4obGlua1BsYWNlaG9sZGVyKSkge1xuICAgICAgICB3YXJuKChcIkZhbGwgYmFjayB0byB0cmFuc2xhdGUgdGhlIGxpbmsgcGxhY2Vob2xkZXIgJ1wiICsgbGlua1BsYWNlaG9sZGVyICsgXCInIHdpdGggcm9vdCBsb2NhbGUuXCIpKTtcbiAgICAgIH1cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgaWYgKCF0aGlzLl9yb290KSB7IHRocm93IEVycm9yKCd1bmV4cGVjdGVkIGVycm9yJykgfVxuICAgICAgdmFyIHJvb3QgPSB0aGlzLl9yb290LiRpMThuO1xuICAgICAgdHJhbnNsYXRlZCA9IHJvb3QuX3RyYW5zbGF0ZShcbiAgICAgICAgcm9vdC5fZ2V0TWVzc2FnZXMoKSwgcm9vdC5sb2NhbGUsIHJvb3QuZmFsbGJhY2tMb2NhbGUsXG4gICAgICAgIGxpbmtQbGFjZWhvbGRlciwgaG9zdCwgaW50ZXJwb2xhdGVNb2RlLCB2YWx1ZXNcbiAgICAgICk7XG4gICAgfVxuICAgIHRyYW5zbGF0ZWQgPSB0aGlzLl93YXJuRGVmYXVsdChcbiAgICAgIGxvY2FsZSwgbGlua1BsYWNlaG9sZGVyLCB0cmFuc2xhdGVkLCBob3N0LFxuICAgICAgaXNBcnJheSh2YWx1ZXMpID8gdmFsdWVzIDogW3ZhbHVlc10sXG4gICAgICBpbnRlcnBvbGF0ZU1vZGVcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuX21vZGlmaWVycy5oYXNPd25Qcm9wZXJ0eShmb3JtYXR0ZXJOYW1lKSkge1xuICAgICAgdHJhbnNsYXRlZCA9IHRoaXMuX21vZGlmaWVyc1tmb3JtYXR0ZXJOYW1lXSh0cmFuc2xhdGVkKTtcbiAgICB9IGVsc2UgaWYgKGRlZmF1bHRNb2RpZmllcnMuaGFzT3duUHJvcGVydHkoZm9ybWF0dGVyTmFtZSkpIHtcbiAgICAgIHRyYW5zbGF0ZWQgPSBkZWZhdWx0TW9kaWZpZXJzW2Zvcm1hdHRlck5hbWVdKHRyYW5zbGF0ZWQpO1xuICAgIH1cblxuICAgIHZpc2l0ZWRMaW5rU3RhY2sucG9wKCk7XG5cbiAgICAvLyBSZXBsYWNlIHRoZSBsaW5rIHdpdGggdGhlIHRyYW5zbGF0ZWRcbiAgICByZXQgPSAhdHJhbnNsYXRlZCA/IHJldCA6IHJldC5yZXBsYWNlKGxpbmssIHRyYW5zbGF0ZWQpO1xuICB9XG5cbiAgcmV0dXJuIHJldFxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2NyZWF0ZU1lc3NhZ2VDb250ZXh0ID0gZnVuY3Rpb24gX2NyZWF0ZU1lc3NhZ2VDb250ZXh0ICh2YWx1ZXMsIGZvcm1hdHRlciwgcGF0aCwgaW50ZXJwb2xhdGVNb2RlKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG5cbiAgdmFyIF9saXN0ID0gaXNBcnJheSh2YWx1ZXMpID8gdmFsdWVzIDogW107XG4gIHZhciBfbmFtZWQgPSBpc09iamVjdCh2YWx1ZXMpID8gdmFsdWVzIDoge307XG4gIHZhciBsaXN0ID0gZnVuY3Rpb24gKGluZGV4KSB7IHJldHVybiBfbGlzdFtpbmRleF07IH07XG4gIHZhciBuYW1lZCA9IGZ1bmN0aW9uIChrZXkpIHsgcmV0dXJuIF9uYW1lZFtrZXldOyB9O1xuICB2YXIgbWVzc2FnZXMgPSB0aGlzLl9nZXRNZXNzYWdlcygpO1xuICB2YXIgbG9jYWxlID0gdGhpcy5sb2NhbGU7XG5cbiAgcmV0dXJuIHtcbiAgICBsaXN0OiBsaXN0LFxuICAgIG5hbWVkOiBuYW1lZCxcbiAgICB2YWx1ZXM6IHZhbHVlcyxcbiAgICBmb3JtYXR0ZXI6IGZvcm1hdHRlcixcbiAgICBwYXRoOiBwYXRoLFxuICAgIG1lc3NhZ2VzOiBtZXNzYWdlcyxcbiAgICBsb2NhbGU6IGxvY2FsZSxcbiAgICBsaW5rZWQ6IGZ1bmN0aW9uIChsaW5rZWRLZXkpIHsgcmV0dXJuIHRoaXMkMS5faW50ZXJwb2xhdGUobG9jYWxlLCBtZXNzYWdlc1tsb2NhbGVdIHx8IHt9LCBsaW5rZWRLZXksIG51bGwsIGludGVycG9sYXRlTW9kZSwgdW5kZWZpbmVkLCBbbGlua2VkS2V5XSk7IH1cbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX3JlbmRlciA9IGZ1bmN0aW9uIF9yZW5kZXIgKG1lc3NhZ2UsIGludGVycG9sYXRlTW9kZSwgdmFsdWVzLCBwYXRoKSB7XG4gIGlmIChpc0Z1bmN0aW9uKG1lc3NhZ2UpKSB7XG4gICAgcmV0dXJuIG1lc3NhZ2UoXG4gICAgICB0aGlzLl9jcmVhdGVNZXNzYWdlQ29udGV4dCh2YWx1ZXMsIHRoaXMuX2Zvcm1hdHRlciB8fCBkZWZhdWx0Rm9ybWF0dGVyLCBwYXRoLCBpbnRlcnBvbGF0ZU1vZGUpXG4gICAgKVxuICB9XG5cbiAgdmFyIHJldCA9IHRoaXMuX2Zvcm1hdHRlci5pbnRlcnBvbGF0ZShtZXNzYWdlLCB2YWx1ZXMsIHBhdGgpO1xuXG4gIC8vIElmIHRoZSBjdXN0b20gZm9ybWF0dGVyIHJlZnVzZXMgdG8gd29yayAtIGFwcGx5IHRoZSBkZWZhdWx0IG9uZVxuICBpZiAoIXJldCkge1xuICAgIHJldCA9IGRlZmF1bHRGb3JtYXR0ZXIuaW50ZXJwb2xhdGUobWVzc2FnZSwgdmFsdWVzLCBwYXRoKTtcbiAgfVxuXG4gIC8vIGlmIGludGVycG9sYXRlTW9kZSBpcyAqKm5vdCoqICdzdHJpbmcnICgncm93JyksXG4gIC8vIHJldHVybiB0aGUgY29tcGlsZWQgZGF0YSAoZS5nLiBbJ2ZvbycsIFZOb2RlLCAnYmFyJ10pIHdpdGggZm9ybWF0dGVyXG4gIHJldHVybiBpbnRlcnBvbGF0ZU1vZGUgPT09ICdzdHJpbmcnICYmICFpc1N0cmluZyhyZXQpID8gcmV0LmpvaW4oJycpIDogcmV0XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fYXBwZW5kSXRlbVRvQ2hhaW4gPSBmdW5jdGlvbiBfYXBwZW5kSXRlbVRvQ2hhaW4gKGNoYWluLCBpdGVtLCBibG9ja3MpIHtcbiAgdmFyIGZvbGxvdyA9IGZhbHNlO1xuICBpZiAoIWluY2x1ZGVzKGNoYWluLCBpdGVtKSkge1xuICAgIGZvbGxvdyA9IHRydWU7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIGZvbGxvdyA9IGl0ZW1baXRlbS5sZW5ndGggLSAxXSAhPT0gJyEnO1xuICAgICAgaXRlbSA9IGl0ZW0ucmVwbGFjZSgvIS9nLCAnJyk7XG4gICAgICBjaGFpbi5wdXNoKGl0ZW0pO1xuICAgICAgaWYgKGJsb2NrcyAmJiBibG9ja3NbaXRlbV0pIHtcbiAgICAgICAgZm9sbG93ID0gYmxvY2tzW2l0ZW1dO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gZm9sbG93XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fYXBwZW5kTG9jYWxlVG9DaGFpbiA9IGZ1bmN0aW9uIF9hcHBlbmRMb2NhbGVUb0NoYWluIChjaGFpbiwgbG9jYWxlLCBibG9ja3MpIHtcbiAgdmFyIGZvbGxvdztcbiAgdmFyIHRva2VucyA9IGxvY2FsZS5zcGxpdCgnLScpO1xuICBkbyB7XG4gICAgdmFyIGl0ZW0gPSB0b2tlbnMuam9pbignLScpO1xuICAgIGZvbGxvdyA9IHRoaXMuX2FwcGVuZEl0ZW1Ub0NoYWluKGNoYWluLCBpdGVtLCBibG9ja3MpO1xuICAgIHRva2Vucy5zcGxpY2UoLTEsIDEpO1xuICB9IHdoaWxlICh0b2tlbnMubGVuZ3RoICYmIChmb2xsb3cgPT09IHRydWUpKVxuICByZXR1cm4gZm9sbG93XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fYXBwZW5kQmxvY2tUb0NoYWluID0gZnVuY3Rpb24gX2FwcGVuZEJsb2NrVG9DaGFpbiAoY2hhaW4sIGJsb2NrLCBibG9ja3MpIHtcbiAgdmFyIGZvbGxvdyA9IHRydWU7XG4gIGZvciAodmFyIGkgPSAwOyAoaSA8IGJsb2NrLmxlbmd0aCkgJiYgKGlzQm9vbGVhbihmb2xsb3cpKTsgaSsrKSB7XG4gICAgdmFyIGxvY2FsZSA9IGJsb2NrW2ldO1xuICAgIGlmIChpc1N0cmluZyhsb2NhbGUpKSB7XG4gICAgICBmb2xsb3cgPSB0aGlzLl9hcHBlbmRMb2NhbGVUb0NoYWluKGNoYWluLCBsb2NhbGUsIGJsb2Nrcyk7XG4gICAgfVxuICB9XG4gIHJldHVybiBmb2xsb3dcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9nZXRMb2NhbGVDaGFpbiA9IGZ1bmN0aW9uIF9nZXRMb2NhbGVDaGFpbiAoc3RhcnQsIGZhbGxiYWNrTG9jYWxlKSB7XG4gIGlmIChzdGFydCA9PT0gJycpIHsgcmV0dXJuIFtdIH1cblxuICBpZiAoIXRoaXMuX2xvY2FsZUNoYWluQ2FjaGUpIHtcbiAgICB0aGlzLl9sb2NhbGVDaGFpbkNhY2hlID0ge307XG4gIH1cblxuICB2YXIgY2hhaW4gPSB0aGlzLl9sb2NhbGVDaGFpbkNhY2hlW3N0YXJ0XTtcbiAgaWYgKCFjaGFpbikge1xuICAgIGlmICghZmFsbGJhY2tMb2NhbGUpIHtcbiAgICAgIGZhbGxiYWNrTG9jYWxlID0gdGhpcy5mYWxsYmFja0xvY2FsZTtcbiAgICB9XG4gICAgY2hhaW4gPSBbXTtcblxuICAgIC8vIGZpcnN0IGJsb2NrIGRlZmluZWQgYnkgc3RhcnRcbiAgICB2YXIgYmxvY2sgPSBbc3RhcnRdO1xuXG4gICAgLy8gd2hpbGUgYW55IGludGVydmVuaW5nIGJsb2NrIGZvdW5kXG4gICAgd2hpbGUgKGlzQXJyYXkoYmxvY2spKSB7XG4gICAgICBibG9jayA9IHRoaXMuX2FwcGVuZEJsb2NrVG9DaGFpbihcbiAgICAgICAgY2hhaW4sXG4gICAgICAgIGJsb2NrLFxuICAgICAgICBmYWxsYmFja0xvY2FsZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBsYXN0IGJsb2NrIGRlZmluZWQgYnkgZGVmYXVsdFxuICAgIHZhciBkZWZhdWx0cztcbiAgICBpZiAoaXNBcnJheShmYWxsYmFja0xvY2FsZSkpIHtcbiAgICAgIGRlZmF1bHRzID0gZmFsbGJhY2tMb2NhbGU7XG4gICAgfSBlbHNlIGlmIChpc09iamVjdChmYWxsYmFja0xvY2FsZSkpIHtcbiAgICAgIC8qICRGbG93Rml4TWUgKi9cbiAgICAgIGlmIChmYWxsYmFja0xvY2FsZVsnZGVmYXVsdCddKSB7XG4gICAgICAgIGRlZmF1bHRzID0gZmFsbGJhY2tMb2NhbGVbJ2RlZmF1bHQnXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGRlZmF1bHRzID0gbnVsbDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZGVmYXVsdHMgPSBmYWxsYmFja0xvY2FsZTtcbiAgICB9XG5cbiAgICAvLyBjb252ZXJ0IGRlZmF1bHRzIHRvIGFycmF5XG4gICAgaWYgKGlzU3RyaW5nKGRlZmF1bHRzKSkge1xuICAgICAgYmxvY2sgPSBbZGVmYXVsdHNdO1xuICAgIH0gZWxzZSB7XG4gICAgICBibG9jayA9IGRlZmF1bHRzO1xuICAgIH1cbiAgICBpZiAoYmxvY2spIHtcbiAgICAgIHRoaXMuX2FwcGVuZEJsb2NrVG9DaGFpbihcbiAgICAgICAgY2hhaW4sXG4gICAgICAgIGJsb2NrLFxuICAgICAgICBudWxsXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLl9sb2NhbGVDaGFpbkNhY2hlW3N0YXJ0XSA9IGNoYWluO1xuICB9XG4gIHJldHVybiBjaGFpblxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX3RyYW5zbGF0ZSA9IGZ1bmN0aW9uIF90cmFuc2xhdGUgKFxuICBtZXNzYWdlcyxcbiAgbG9jYWxlLFxuICBmYWxsYmFjayxcbiAga2V5LFxuICBob3N0LFxuICBpbnRlcnBvbGF0ZU1vZGUsXG4gIGFyZ3Ncbikge1xuICB2YXIgY2hhaW4gPSB0aGlzLl9nZXRMb2NhbGVDaGFpbihsb2NhbGUsIGZhbGxiYWNrKTtcbiAgdmFyIHJlcztcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGFpbi5sZW5ndGg7IGkrKykge1xuICAgIHZhciBzdGVwID0gY2hhaW5baV07XG4gICAgcmVzID1cbiAgICAgIHRoaXMuX2ludGVycG9sYXRlKHN0ZXAsIG1lc3NhZ2VzW3N0ZXBdLCBrZXksIGhvc3QsIGludGVycG9sYXRlTW9kZSwgYXJncywgW2tleV0pO1xuICAgIGlmICghaXNOdWxsKHJlcykpIHtcbiAgICAgIGlmIChzdGVwICE9PSBsb2NhbGUgJiYgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFja1dhcm4oa2V5KSkge1xuICAgICAgICB3YXJuKChcIkZhbGwgYmFjayB0byB0cmFuc2xhdGUgdGhlIGtleXBhdGggJ1wiICsga2V5ICsgXCInIHdpdGggJ1wiICsgc3RlcCArIFwiJyBsb2NhbGUuXCIpKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXNcbiAgICB9XG4gIH1cbiAgcmV0dXJuIG51bGxcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl90ID0gZnVuY3Rpb24gX3QgKGtleSwgX2xvY2FsZSwgbWVzc2FnZXMsIGhvc3QpIHtcbiAgICB2YXIgcmVmO1xuXG4gICAgdmFyIHZhbHVlcyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoIC0gNDtcbiAgICB3aGlsZSAoIGxlbi0tID4gMCApIHZhbHVlc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiArIDQgXTtcbiAgaWYgKCFrZXkpIHsgcmV0dXJuICcnIH1cblxuICB2YXIgcGFyc2VkQXJncyA9IHBhcnNlQXJncy5hcHBseSh2b2lkIDAsIHZhbHVlcyk7XG4gIGlmKHRoaXMuX2VzY2FwZVBhcmFtZXRlckh0bWwpIHtcbiAgICBwYXJzZWRBcmdzLnBhcmFtcyA9IGVzY2FwZVBhcmFtcyhwYXJzZWRBcmdzLnBhcmFtcyk7XG4gIH1cblxuICB2YXIgbG9jYWxlID0gcGFyc2VkQXJncy5sb2NhbGUgfHwgX2xvY2FsZTtcblxuICB2YXIgcmV0ID0gdGhpcy5fdHJhbnNsYXRlKFxuICAgIG1lc3NhZ2VzLCBsb2NhbGUsIHRoaXMuZmFsbGJhY2tMb2NhbGUsIGtleSxcbiAgICBob3N0LCAnc3RyaW5nJywgcGFyc2VkQXJncy5wYXJhbXNcbiAgKTtcbiAgaWYgKHRoaXMuX2lzRmFsbGJhY2tSb290KHJldCkpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFja1dhcm4oa2V5KSkge1xuICAgICAgd2FybigoXCJGYWxsIGJhY2sgdG8gdHJhbnNsYXRlIHRoZSBrZXlwYXRoICdcIiArIGtleSArIFwiJyB3aXRoIHJvb3QgbG9jYWxlLlwiKSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICghdGhpcy5fcm9vdCkgeyB0aHJvdyBFcnJvcigndW5leHBlY3RlZCBlcnJvcicpIH1cbiAgICByZXR1cm4gKHJlZiA9IHRoaXMuX3Jvb3QpLiR0LmFwcGx5KHJlZiwgWyBrZXkgXS5jb25jYXQoIHZhbHVlcyApKVxuICB9IGVsc2Uge1xuICAgIHJldCA9IHRoaXMuX3dhcm5EZWZhdWx0KGxvY2FsZSwga2V5LCByZXQsIGhvc3QsIHZhbHVlcywgJ3N0cmluZycpO1xuICAgIGlmICh0aGlzLl9wb3N0VHJhbnNsYXRpb24gJiYgcmV0ICE9PSBudWxsICYmIHJldCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXQgPSB0aGlzLl9wb3N0VHJhbnNsYXRpb24ocmV0LCBrZXkpO1xuICAgIH1cbiAgICByZXR1cm4gcmV0XG4gIH1cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLnQgPSBmdW5jdGlvbiB0IChrZXkpIHtcbiAgICB2YXIgcmVmO1xuXG4gICAgdmFyIHZhbHVlcyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoIC0gMTtcbiAgICB3aGlsZSAoIGxlbi0tID4gMCApIHZhbHVlc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiArIDEgXTtcbiAgcmV0dXJuIChyZWYgPSB0aGlzKS5fdC5hcHBseShyZWYsIFsga2V5LCB0aGlzLmxvY2FsZSwgdGhpcy5fZ2V0TWVzc2FnZXMoKSwgbnVsbCBdLmNvbmNhdCggdmFsdWVzICkpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5faSA9IGZ1bmN0aW9uIF9pIChrZXksIGxvY2FsZSwgbWVzc2FnZXMsIGhvc3QsIHZhbHVlcykge1xuICB2YXIgcmV0ID1cbiAgICB0aGlzLl90cmFuc2xhdGUobWVzc2FnZXMsIGxvY2FsZSwgdGhpcy5mYWxsYmFja0xvY2FsZSwga2V5LCBob3N0LCAncmF3JywgdmFsdWVzKTtcbiAgaWYgKHRoaXMuX2lzRmFsbGJhY2tSb290KHJldCkpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSkge1xuICAgICAgd2FybigoXCJGYWxsIGJhY2sgdG8gaW50ZXJwb2xhdGUgdGhlIGtleXBhdGggJ1wiICsga2V5ICsgXCInIHdpdGggcm9vdCBsb2NhbGUuXCIpKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLl9yb290KSB7IHRocm93IEVycm9yKCd1bmV4cGVjdGVkIGVycm9yJykgfVxuICAgIHJldHVybiB0aGlzLl9yb290LiRpMThuLmkoa2V5LCBsb2NhbGUsIHZhbHVlcylcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gdGhpcy5fd2FybkRlZmF1bHQobG9jYWxlLCBrZXksIHJldCwgaG9zdCwgW3ZhbHVlc10sICdyYXcnKVxuICB9XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5pID0gZnVuY3Rpb24gaSAoa2V5LCBsb2NhbGUsIHZhbHVlcykge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgaWYgKCFrZXkpIHsgcmV0dXJuICcnIH1cblxuICBpZiAoIWlzU3RyaW5nKGxvY2FsZSkpIHtcbiAgICBsb2NhbGUgPSB0aGlzLmxvY2FsZTtcbiAgfVxuXG4gIHJldHVybiB0aGlzLl9pKGtleSwgbG9jYWxlLCB0aGlzLl9nZXRNZXNzYWdlcygpLCBudWxsLCB2YWx1ZXMpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fdGMgPSBmdW5jdGlvbiBfdGMgKFxuICBrZXksXG4gIF9sb2NhbGUsXG4gIG1lc3NhZ2VzLFxuICBob3N0LFxuICBjaG9pY2Vcbikge1xuICAgIHZhciByZWY7XG5cbiAgICB2YXIgdmFsdWVzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSA1O1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgdmFsdWVzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgNSBdO1xuICBpZiAoIWtleSkgeyByZXR1cm4gJycgfVxuICBpZiAoY2hvaWNlID09PSB1bmRlZmluZWQpIHtcbiAgICBjaG9pY2UgPSAxO1xuICB9XG5cbiAgdmFyIHByZWRlZmluZWQgPSB7ICdjb3VudCc6IGNob2ljZSwgJ24nOiBjaG9pY2UgfTtcbiAgdmFyIHBhcnNlZEFyZ3MgPSBwYXJzZUFyZ3MuYXBwbHkodm9pZCAwLCB2YWx1ZXMpO1xuICBwYXJzZWRBcmdzLnBhcmFtcyA9IE9iamVjdC5hc3NpZ24ocHJlZGVmaW5lZCwgcGFyc2VkQXJncy5wYXJhbXMpO1xuICB2YWx1ZXMgPSBwYXJzZWRBcmdzLmxvY2FsZSA9PT0gbnVsbCA/IFtwYXJzZWRBcmdzLnBhcmFtc10gOiBbcGFyc2VkQXJncy5sb2NhbGUsIHBhcnNlZEFyZ3MucGFyYW1zXTtcbiAgcmV0dXJuIHRoaXMuZmV0Y2hDaG9pY2UoKHJlZiA9IHRoaXMpLl90LmFwcGx5KHJlZiwgWyBrZXksIF9sb2NhbGUsIG1lc3NhZ2VzLCBob3N0IF0uY29uY2F0KCB2YWx1ZXMgKSksIGNob2ljZSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLmZldGNoQ2hvaWNlID0gZnVuY3Rpb24gZmV0Y2hDaG9pY2UgKG1lc3NhZ2UsIGNob2ljZSkge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgaWYgKCFtZXNzYWdlIHx8ICFpc1N0cmluZyhtZXNzYWdlKSkgeyByZXR1cm4gbnVsbCB9XG4gIHZhciBjaG9pY2VzID0gbWVzc2FnZS5zcGxpdCgnfCcpO1xuXG4gIGNob2ljZSA9IHRoaXMuZ2V0Q2hvaWNlSW5kZXgoY2hvaWNlLCBjaG9pY2VzLmxlbmd0aCk7XG4gIGlmICghY2hvaWNlc1tjaG9pY2VdKSB7IHJldHVybiBtZXNzYWdlIH1cbiAgcmV0dXJuIGNob2ljZXNbY2hvaWNlXS50cmltKClcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLnRjID0gZnVuY3Rpb24gdGMgKGtleSwgY2hvaWNlKSB7XG4gICAgdmFyIHJlZjtcblxuICAgIHZhciB2YWx1ZXMgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDI7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSB2YWx1ZXNbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAyIF07XG4gIHJldHVybiAocmVmID0gdGhpcykuX3RjLmFwcGx5KHJlZiwgWyBrZXksIHRoaXMubG9jYWxlLCB0aGlzLl9nZXRNZXNzYWdlcygpLCBudWxsLCBjaG9pY2UgXS5jb25jYXQoIHZhbHVlcyApKVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX3RlID0gZnVuY3Rpb24gX3RlIChrZXksIGxvY2FsZSwgbWVzc2FnZXMpIHtcbiAgICB2YXIgYXJncyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoIC0gMztcbiAgICB3aGlsZSAoIGxlbi0tID4gMCApIGFyZ3NbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAzIF07XG5cbiAgdmFyIF9sb2NhbGUgPSBwYXJzZUFyZ3MuYXBwbHkodm9pZCAwLCBhcmdzKS5sb2NhbGUgfHwgbG9jYWxlO1xuICByZXR1cm4gdGhpcy5fZXhpc3QobWVzc2FnZXNbX2xvY2FsZV0sIGtleSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLnRlID0gZnVuY3Rpb24gdGUgKGtleSwgbG9jYWxlKSB7XG4gIHJldHVybiB0aGlzLl90ZShrZXksIHRoaXMubG9jYWxlLCB0aGlzLl9nZXRNZXNzYWdlcygpLCBsb2NhbGUpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5nZXRMb2NhbGVNZXNzYWdlID0gZnVuY3Rpb24gZ2V0TG9jYWxlTWVzc2FnZSAobG9jYWxlKSB7XG4gIHJldHVybiBsb29zZUNsb25lKHRoaXMuX3ZtLm1lc3NhZ2VzW2xvY2FsZV0gfHwge30pXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5zZXRMb2NhbGVNZXNzYWdlID0gZnVuY3Rpb24gc2V0TG9jYWxlTWVzc2FnZSAobG9jYWxlLCBtZXNzYWdlKSB7XG4gIGlmICh0aGlzLl93YXJuSHRtbEluTWVzc2FnZSA9PT0gJ3dhcm4nIHx8IHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlID09PSAnZXJyb3InKSB7XG4gICAgdGhpcy5fY2hlY2tMb2NhbGVNZXNzYWdlKGxvY2FsZSwgdGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UsIG1lc3NhZ2UpO1xuICB9XG4gIHRoaXMuX3ZtLiRzZXQodGhpcy5fdm0ubWVzc2FnZXMsIGxvY2FsZSwgbWVzc2FnZSk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5tZXJnZUxvY2FsZU1lc3NhZ2UgPSBmdW5jdGlvbiBtZXJnZUxvY2FsZU1lc3NhZ2UgKGxvY2FsZSwgbWVzc2FnZSkge1xuICBpZiAodGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UgPT09ICd3YXJuJyB8fCB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSA9PT0gJ2Vycm9yJykge1xuICAgIHRoaXMuX2NoZWNrTG9jYWxlTWVzc2FnZShsb2NhbGUsIHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlLCBtZXNzYWdlKTtcbiAgfVxuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLm1lc3NhZ2VzLCBsb2NhbGUsIG1lcmdlKFxuICAgIHR5cGVvZiB0aGlzLl92bS5tZXNzYWdlc1tsb2NhbGVdICE9PSAndW5kZWZpbmVkJyAmJiBPYmplY3Qua2V5cyh0aGlzLl92bS5tZXNzYWdlc1tsb2NhbGVdKS5sZW5ndGhcbiAgICAgID8gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5fdm0ubWVzc2FnZXNbbG9jYWxlXSlcbiAgICAgIDoge30sXG4gICAgbWVzc2FnZVxuICApKTtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLmdldERhdGVUaW1lRm9ybWF0ID0gZnVuY3Rpb24gZ2V0RGF0ZVRpbWVGb3JtYXQgKGxvY2FsZSkge1xuICByZXR1cm4gbG9vc2VDbG9uZSh0aGlzLl92bS5kYXRlVGltZUZvcm1hdHNbbG9jYWxlXSB8fCB7fSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLnNldERhdGVUaW1lRm9ybWF0ID0gZnVuY3Rpb24gc2V0RGF0ZVRpbWVGb3JtYXQgKGxvY2FsZSwgZm9ybWF0KSB7XG4gIHRoaXMuX3ZtLiRzZXQodGhpcy5fdm0uZGF0ZVRpbWVGb3JtYXRzLCBsb2NhbGUsIGZvcm1hdCk7XG4gIHRoaXMuX2NsZWFyRGF0ZVRpbWVGb3JtYXQobG9jYWxlLCBmb3JtYXQpO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUubWVyZ2VEYXRlVGltZUZvcm1hdCA9IGZ1bmN0aW9uIG1lcmdlRGF0ZVRpbWVGb3JtYXQgKGxvY2FsZSwgZm9ybWF0KSB7XG4gIHRoaXMuX3ZtLiRzZXQodGhpcy5fdm0uZGF0ZVRpbWVGb3JtYXRzLCBsb2NhbGUsIG1lcmdlKHRoaXMuX3ZtLmRhdGVUaW1lRm9ybWF0c1tsb2NhbGVdIHx8IHt9LCBmb3JtYXQpKTtcbiAgdGhpcy5fY2xlYXJEYXRlVGltZUZvcm1hdChsb2NhbGUsIGZvcm1hdCk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fY2xlYXJEYXRlVGltZUZvcm1hdCA9IGZ1bmN0aW9uIF9jbGVhckRhdGVUaW1lRm9ybWF0IChsb2NhbGUsIGZvcm1hdCkge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYXV0b2ZpeC9wcmVmZXItY29uc3RcbiAgZm9yICh2YXIga2V5IGluIGZvcm1hdCkge1xuICAgIHZhciBpZCA9IGxvY2FsZSArIFwiX19cIiArIGtleTtcblxuICAgIGlmICghdGhpcy5fZGF0ZVRpbWVGb3JtYXR0ZXJzLmhhc093blByb3BlcnR5KGlkKSkge1xuICAgICAgY29udGludWVcbiAgICB9XG5cbiAgICBkZWxldGUgdGhpcy5fZGF0ZVRpbWVGb3JtYXR0ZXJzW2lkXTtcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2xvY2FsaXplRGF0ZVRpbWUgPSBmdW5jdGlvbiBfbG9jYWxpemVEYXRlVGltZSAoXG4gIHZhbHVlLFxuICBsb2NhbGUsXG4gIGZhbGxiYWNrLFxuICBkYXRlVGltZUZvcm1hdHMsXG4gIGtleSxcbiAgb3B0aW9uc1xuKSB7XG4gIHZhciBfbG9jYWxlID0gbG9jYWxlO1xuICB2YXIgZm9ybWF0cyA9IGRhdGVUaW1lRm9ybWF0c1tfbG9jYWxlXTtcblxuICB2YXIgY2hhaW4gPSB0aGlzLl9nZXRMb2NhbGVDaGFpbihsb2NhbGUsIGZhbGxiYWNrKTtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGFpbi5sZW5ndGg7IGkrKykge1xuICAgIHZhciBjdXJyZW50ID0gX2xvY2FsZTtcbiAgICB2YXIgc3RlcCA9IGNoYWluW2ldO1xuICAgIGZvcm1hdHMgPSBkYXRlVGltZUZvcm1hdHNbc3RlcF07XG4gICAgX2xvY2FsZSA9IHN0ZXA7XG4gICAgLy8gZmFsbGJhY2sgbG9jYWxlXG4gICAgaWYgKGlzTnVsbChmb3JtYXRzKSB8fCBpc051bGwoZm9ybWF0c1trZXldKSkge1xuICAgICAgaWYgKHN0ZXAgIT09IGxvY2FsZSAmJiBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICF0aGlzLl9pc1NpbGVudFRyYW5zbGF0aW9uV2FybihrZXkpICYmICF0aGlzLl9pc1NpbGVudEZhbGxiYWNrV2FybihrZXkpKSB7XG4gICAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvICdcIiArIHN0ZXAgKyBcIicgZGF0ZXRpbWUgZm9ybWF0cyBmcm9tICdcIiArIGN1cnJlbnQgKyBcIicgZGF0ZXRpbWUgZm9ybWF0cy5cIikpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGlmIChpc051bGwoZm9ybWF0cykgfHwgaXNOdWxsKGZvcm1hdHNba2V5XSkpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9IGVsc2Uge1xuICAgIHZhciBmb3JtYXQgPSBmb3JtYXRzW2tleV07XG5cbiAgICB2YXIgZm9ybWF0dGVyO1xuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICBmb3JtYXR0ZXIgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChfbG9jYWxlLCBPYmplY3QuYXNzaWduKHt9LCBmb3JtYXQsIG9wdGlvbnMpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFyIGlkID0gX2xvY2FsZSArIFwiX19cIiArIGtleTtcbiAgICAgIGZvcm1hdHRlciA9IHRoaXMuX2RhdGVUaW1lRm9ybWF0dGVyc1tpZF07XG4gICAgICBpZiAoIWZvcm1hdHRlcikge1xuICAgICAgICBmb3JtYXR0ZXIgPSB0aGlzLl9kYXRlVGltZUZvcm1hdHRlcnNbaWRdID0gbmV3IEludGwuRGF0ZVRpbWVGb3JtYXQoX2xvY2FsZSwgZm9ybWF0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdCh2YWx1ZSlcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2QgPSBmdW5jdGlvbiBfZCAodmFsdWUsIGxvY2FsZSwga2V5LCBvcHRpb25zKSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhVnVlSTE4bi5hdmFpbGFiaWxpdGllcy5kYXRlVGltZUZvcm1hdCkge1xuICAgIHdhcm4oJ0Nhbm5vdCBmb3JtYXQgYSBEYXRlIHZhbHVlIGR1ZSB0byBub3Qgc3VwcG9ydGVkIEludGwuRGF0ZVRpbWVGb3JtYXQuJyk7XG4gICAgcmV0dXJuICcnXG4gIH1cblxuICBpZiAoIWtleSkge1xuICAgIHZhciBkdGYgPSAhb3B0aW9ucyA/IG5ldyBJbnRsLkRhdGVUaW1lRm9ybWF0KGxvY2FsZSkgOiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChsb2NhbGUsIG9wdGlvbnMpO1xuICAgIHJldHVybiBkdGYuZm9ybWF0KHZhbHVlKVxuICB9XG5cbiAgdmFyIHJldCA9XG4gICAgdGhpcy5fbG9jYWxpemVEYXRlVGltZSh2YWx1ZSwgbG9jYWxlLCB0aGlzLmZhbGxiYWNrTG9jYWxlLCB0aGlzLl9nZXREYXRlVGltZUZvcm1hdHMoKSwga2V5LCBvcHRpb25zKTtcbiAgaWYgKHRoaXMuX2lzRmFsbGJhY2tSb290KHJldCkpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFja1dhcm4oa2V5KSkge1xuICAgICAgd2FybigoXCJGYWxsIGJhY2sgdG8gZGF0ZXRpbWUgbG9jYWxpemF0aW9uIG9mIHJvb3Q6IGtleSAnXCIgKyBrZXkgKyBcIicuXCIpKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCF0aGlzLl9yb290KSB7IHRocm93IEVycm9yKCd1bmV4cGVjdGVkIGVycm9yJykgfVxuICAgIHJldHVybiB0aGlzLl9yb290LiRpMThuLmQodmFsdWUsIGtleSwgbG9jYWxlKVxuICB9IGVsc2Uge1xuICAgIHJldHVybiByZXQgfHwgJydcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuZCA9IGZ1bmN0aW9uIGQgKHZhbHVlKSB7XG4gICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMSBdO1xuXG4gIHZhciBsb2NhbGUgPSB0aGlzLmxvY2FsZTtcbiAgdmFyIGtleSA9IG51bGw7XG4gIHZhciBvcHRpb25zID0gbnVsbDtcblxuICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHtcbiAgICBpZiAoaXNTdHJpbmcoYXJnc1swXSkpIHtcbiAgICAgIGtleSA9IGFyZ3NbMF07XG4gICAgfSBlbHNlIGlmIChpc09iamVjdChhcmdzWzBdKSkge1xuICAgICAgaWYgKGFyZ3NbMF0ubG9jYWxlKSB7XG4gICAgICAgIGxvY2FsZSA9IGFyZ3NbMF0ubG9jYWxlO1xuICAgICAgfVxuICAgICAgaWYgKGFyZ3NbMF0ua2V5KSB7XG4gICAgICAgIGtleSA9IGFyZ3NbMF0ua2V5O1xuICAgICAgfVxuICAgIH1cblxuICAgIG9wdGlvbnMgPSBPYmplY3Qua2V5cyhhcmdzWzBdKS5yZWR1Y2UoZnVuY3Rpb24gKGFjYywga2V5KSB7XG4gICAgICAgIHZhciBvYmo7XG5cbiAgICAgIGlmIChpbmNsdWRlcyhkYXRlVGltZUZvcm1hdEtleXMsIGtleSkpIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5hc3NpZ24oe30sIGFjYywgKCBvYmogPSB7fSwgb2JqW2tleV0gPSBhcmdzWzBdW2tleV0sIG9iaiApKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIG51bGwpO1xuXG4gIH0gZWxzZSBpZiAoYXJncy5sZW5ndGggPT09IDIpIHtcbiAgICBpZiAoaXNTdHJpbmcoYXJnc1swXSkpIHtcbiAgICAgIGtleSA9IGFyZ3NbMF07XG4gICAgfVxuICAgIGlmIChpc1N0cmluZyhhcmdzWzFdKSkge1xuICAgICAgbG9jYWxlID0gYXJnc1sxXTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdGhpcy5fZCh2YWx1ZSwgbG9jYWxlLCBrZXksIG9wdGlvbnMpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5nZXROdW1iZXJGb3JtYXQgPSBmdW5jdGlvbiBnZXROdW1iZXJGb3JtYXQgKGxvY2FsZSkge1xuICByZXR1cm4gbG9vc2VDbG9uZSh0aGlzLl92bS5udW1iZXJGb3JtYXRzW2xvY2FsZV0gfHwge30pXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5zZXROdW1iZXJGb3JtYXQgPSBmdW5jdGlvbiBzZXROdW1iZXJGb3JtYXQgKGxvY2FsZSwgZm9ybWF0KSB7XG4gIHRoaXMuX3ZtLiRzZXQodGhpcy5fdm0ubnVtYmVyRm9ybWF0cywgbG9jYWxlLCBmb3JtYXQpO1xuICB0aGlzLl9jbGVhck51bWJlckZvcm1hdChsb2NhbGUsIGZvcm1hdCk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5tZXJnZU51bWJlckZvcm1hdCA9IGZ1bmN0aW9uIG1lcmdlTnVtYmVyRm9ybWF0IChsb2NhbGUsIGZvcm1hdCkge1xuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLm51bWJlckZvcm1hdHMsIGxvY2FsZSwgbWVyZ2UodGhpcy5fdm0ubnVtYmVyRm9ybWF0c1tsb2NhbGVdIHx8IHt9LCBmb3JtYXQpKTtcbiAgdGhpcy5fY2xlYXJOdW1iZXJGb3JtYXQobG9jYWxlLCBmb3JtYXQpO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2NsZWFyTnVtYmVyRm9ybWF0ID0gZnVuY3Rpb24gX2NsZWFyTnVtYmVyRm9ybWF0IChsb2NhbGUsIGZvcm1hdCkge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYXV0b2ZpeC9wcmVmZXItY29uc3RcbiAgZm9yICh2YXIga2V5IGluIGZvcm1hdCkge1xuICAgIHZhciBpZCA9IGxvY2FsZSArIFwiX19cIiArIGtleTtcblxuICAgIGlmICghdGhpcy5fbnVtYmVyRm9ybWF0dGVycy5oYXNPd25Qcm9wZXJ0eShpZCkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgZGVsZXRlIHRoaXMuX251bWJlckZvcm1hdHRlcnNbaWRdO1xuICB9XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fZ2V0TnVtYmVyRm9ybWF0dGVyID0gZnVuY3Rpb24gX2dldE51bWJlckZvcm1hdHRlciAoXG4gIHZhbHVlLFxuICBsb2NhbGUsXG4gIGZhbGxiYWNrLFxuICBudW1iZXJGb3JtYXRzLFxuICBrZXksXG4gIG9wdGlvbnNcbikge1xuICB2YXIgX2xvY2FsZSA9IGxvY2FsZTtcbiAgdmFyIGZvcm1hdHMgPSBudW1iZXJGb3JtYXRzW19sb2NhbGVdO1xuXG4gIHZhciBjaGFpbiA9IHRoaXMuX2dldExvY2FsZUNoYWluKGxvY2FsZSwgZmFsbGJhY2spO1xuICBmb3IgKHZhciBpID0gMDsgaSA8IGNoYWluLmxlbmd0aDsgaSsrKSB7XG4gICAgdmFyIGN1cnJlbnQgPSBfbG9jYWxlO1xuICAgIHZhciBzdGVwID0gY2hhaW5baV07XG4gICAgZm9ybWF0cyA9IG51bWJlckZvcm1hdHNbc3RlcF07XG4gICAgX2xvY2FsZSA9IHN0ZXA7XG4gICAgLy8gZmFsbGJhY2sgbG9jYWxlXG4gICAgaWYgKGlzTnVsbChmb3JtYXRzKSB8fCBpc051bGwoZm9ybWF0c1trZXldKSkge1xuICAgICAgaWYgKHN0ZXAgIT09IGxvY2FsZSAmJiBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICF0aGlzLl9pc1NpbGVudFRyYW5zbGF0aW9uV2FybihrZXkpICYmICF0aGlzLl9pc1NpbGVudEZhbGxiYWNrV2FybihrZXkpKSB7XG4gICAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvICdcIiArIHN0ZXAgKyBcIicgbnVtYmVyIGZvcm1hdHMgZnJvbSAnXCIgKyBjdXJyZW50ICsgXCInIG51bWJlciBmb3JtYXRzLlwiKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGJyZWFrXG4gICAgfVxuICB9XG5cbiAgaWYgKGlzTnVsbChmb3JtYXRzKSB8fCBpc051bGwoZm9ybWF0c1trZXldKSkge1xuICAgIHJldHVybiBudWxsXG4gIH0gZWxzZSB7XG4gICAgdmFyIGZvcm1hdCA9IGZvcm1hdHNba2V5XTtcblxuICAgIHZhciBmb3JtYXR0ZXI7XG4gICAgaWYgKG9wdGlvbnMpIHtcbiAgICAgIC8vIElmIG9wdGlvbnMgc3BlY2lmaWVkIC0gY3JlYXRlIG9uZSB0aW1lIG51bWJlciBmb3JtYXR0ZXJcbiAgICAgIGZvcm1hdHRlciA9IG5ldyBJbnRsLk51bWJlckZvcm1hdChfbG9jYWxlLCBPYmplY3QuYXNzaWduKHt9LCBmb3JtYXQsIG9wdGlvbnMpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFyIGlkID0gX2xvY2FsZSArIFwiX19cIiArIGtleTtcbiAgICAgIGZvcm1hdHRlciA9IHRoaXMuX251bWJlckZvcm1hdHRlcnNbaWRdO1xuICAgICAgaWYgKCFmb3JtYXR0ZXIpIHtcbiAgICAgICAgZm9ybWF0dGVyID0gdGhpcy5fbnVtYmVyRm9ybWF0dGVyc1tpZF0gPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQoX2xvY2FsZSwgZm9ybWF0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZvcm1hdHRlclxuICB9XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fbiA9IGZ1bmN0aW9uIF9uICh2YWx1ZSwgbG9jYWxlLCBrZXksIG9wdGlvbnMpIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gIGlmICghVnVlSTE4bi5hdmFpbGFiaWxpdGllcy5udW1iZXJGb3JtYXQpIHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgd2FybignQ2Fubm90IGZvcm1hdCBhIE51bWJlciB2YWx1ZSBkdWUgdG8gbm90IHN1cHBvcnRlZCBJbnRsLk51bWJlckZvcm1hdC4nKTtcbiAgICB9XG4gICAgcmV0dXJuICcnXG4gIH1cblxuICBpZiAoIWtleSkge1xuICAgIHZhciBuZiA9ICFvcHRpb25zID8gbmV3IEludGwuTnVtYmVyRm9ybWF0KGxvY2FsZSkgOiBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlLCBvcHRpb25zKTtcbiAgICByZXR1cm4gbmYuZm9ybWF0KHZhbHVlKVxuICB9XG5cbiAgdmFyIGZvcm1hdHRlciA9IHRoaXMuX2dldE51bWJlckZvcm1hdHRlcih2YWx1ZSwgbG9jYWxlLCB0aGlzLmZhbGxiYWNrTG9jYWxlLCB0aGlzLl9nZXROdW1iZXJGb3JtYXRzKCksIGtleSwgb3B0aW9ucyk7XG4gIHZhciByZXQgPSBmb3JtYXR0ZXIgJiYgZm9ybWF0dGVyLmZvcm1hdCh2YWx1ZSk7XG4gIGlmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdChyZXQpKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkgJiYgIXRoaXMuX2lzU2lsZW50RmFsbGJhY2tXYXJuKGtleSkpIHtcbiAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvIG51bWJlciBsb2NhbGl6YXRpb24gb2Ygcm9vdDoga2V5ICdcIiArIGtleSArIFwiJy5cIikpO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIXRoaXMuX3Jvb3QpIHsgdGhyb3cgRXJyb3IoJ3VuZXhwZWN0ZWQgZXJyb3InKSB9XG4gICAgcmV0dXJuIHRoaXMuX3Jvb3QuJGkxOG4ubih2YWx1ZSwgT2JqZWN0LmFzc2lnbih7fSwgeyBrZXk6IGtleSwgbG9jYWxlOiBsb2NhbGUgfSwgb3B0aW9ucykpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHJldCB8fCAnJ1xuICB9XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5uID0gZnVuY3Rpb24gbiAodmFsdWUpIHtcbiAgICB2YXIgYXJncyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoIC0gMTtcbiAgICB3aGlsZSAoIGxlbi0tID4gMCApIGFyZ3NbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAxIF07XG5cbiAgdmFyIGxvY2FsZSA9IHRoaXMubG9jYWxlO1xuICB2YXIga2V5ID0gbnVsbDtcbiAgdmFyIG9wdGlvbnMgPSBudWxsO1xuXG4gIGlmIChhcmdzLmxlbmd0aCA9PT0gMSkge1xuICAgIGlmIChpc1N0cmluZyhhcmdzWzBdKSkge1xuICAgICAga2V5ID0gYXJnc1swXTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KGFyZ3NbMF0pKSB7XG4gICAgICBpZiAoYXJnc1swXS5sb2NhbGUpIHtcbiAgICAgICAgbG9jYWxlID0gYXJnc1swXS5sb2NhbGU7XG4gICAgICB9XG4gICAgICBpZiAoYXJnc1swXS5rZXkpIHtcbiAgICAgICAga2V5ID0gYXJnc1swXS5rZXk7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbHRlciBvdXQgbnVtYmVyIGZvcm1hdCBvcHRpb25zIG9ubHlcbiAgICAgIG9wdGlvbnMgPSBPYmplY3Qua2V5cyhhcmdzWzBdKS5yZWR1Y2UoZnVuY3Rpb24gKGFjYywga2V5KSB7XG4gICAgICAgICAgdmFyIG9iajtcblxuICAgICAgICBpZiAoaW5jbHVkZXMobnVtYmVyRm9ybWF0S2V5cywga2V5KSkge1xuICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBhY2MsICggb2JqID0ge30sIG9ialtrZXldID0gYXJnc1swXVtrZXldLCBvYmogKSlcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYWNjXG4gICAgICB9LCBudWxsKTtcbiAgICB9XG4gIH0gZWxzZSBpZiAoYXJncy5sZW5ndGggPT09IDIpIHtcbiAgICBpZiAoaXNTdHJpbmcoYXJnc1swXSkpIHtcbiAgICAgIGtleSA9IGFyZ3NbMF07XG4gICAgfVxuICAgIGlmIChpc1N0cmluZyhhcmdzWzFdKSkge1xuICAgICAgbG9jYWxlID0gYXJnc1sxXTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdGhpcy5fbih2YWx1ZSwgbG9jYWxlLCBrZXksIG9wdGlvbnMpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fbnRwID0gZnVuY3Rpb24gX250cCAodmFsdWUsIGxvY2FsZSwga2V5LCBvcHRpb25zKSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICBpZiAoIVZ1ZUkxOG4uYXZhaWxhYmlsaXRpZXMubnVtYmVyRm9ybWF0KSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIHdhcm4oJ0Nhbm5vdCBmb3JtYXQgdG8gcGFydHMgYSBOdW1iZXIgdmFsdWUgZHVlIHRvIG5vdCBzdXBwb3J0ZWQgSW50bC5OdW1iZXJGb3JtYXQuJyk7XG4gICAgfVxuICAgIHJldHVybiBbXVxuICB9XG5cbiAgaWYgKCFrZXkpIHtcbiAgICB2YXIgbmYgPSAhb3B0aW9ucyA/IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUpIDogbmV3IEludGwuTnVtYmVyRm9ybWF0KGxvY2FsZSwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIG5mLmZvcm1hdFRvUGFydHModmFsdWUpXG4gIH1cblxuICB2YXIgZm9ybWF0dGVyID0gdGhpcy5fZ2V0TnVtYmVyRm9ybWF0dGVyKHZhbHVlLCBsb2NhbGUsIHRoaXMuZmFsbGJhY2tMb2NhbGUsIHRoaXMuX2dldE51bWJlckZvcm1hdHMoKSwga2V5LCBvcHRpb25zKTtcbiAgdmFyIHJldCA9IGZvcm1hdHRlciAmJiBmb3JtYXR0ZXIuZm9ybWF0VG9QYXJ0cyh2YWx1ZSk7XG4gIGlmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdChyZXQpKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkpIHtcbiAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvIGZvcm1hdCBudW1iZXIgdG8gcGFydHMgb2Ygcm9vdDoga2V5ICdcIiArIGtleSArIFwiJyAuXCIpKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCF0aGlzLl9yb290KSB7IHRocm93IEVycm9yKCd1bmV4cGVjdGVkIGVycm9yJykgfVxuICAgIHJldHVybiB0aGlzLl9yb290LiRpMThuLl9udHAodmFsdWUsIGxvY2FsZSwga2V5LCBvcHRpb25zKVxuICB9IGVsc2Uge1xuICAgIHJldHVybiByZXQgfHwgW11cbiAgfVxufTtcblxuT2JqZWN0LmRlZmluZVByb3BlcnRpZXMoIFZ1ZUkxOG4ucHJvdG90eXBlLCBwcm90b3R5cGVBY2Nlc3NvcnMgKTtcblxudmFyIGF2YWlsYWJpbGl0aWVzO1xuLy8gJEZsb3dGaXhNZVxuT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZUkxOG4sICdhdmFpbGFiaWxpdGllcycsIHtcbiAgZ2V0OiBmdW5jdGlvbiBnZXQgKCkge1xuICAgIGlmICghYXZhaWxhYmlsaXRpZXMpIHtcbiAgICAgIHZhciBpbnRsRGVmaW5lZCA9IHR5cGVvZiBJbnRsICE9PSAndW5kZWZpbmVkJztcbiAgICAgIGF2YWlsYWJpbGl0aWVzID0ge1xuICAgICAgICBkYXRlVGltZUZvcm1hdDogaW50bERlZmluZWQgJiYgdHlwZW9mIEludGwuRGF0ZVRpbWVGb3JtYXQgIT09ICd1bmRlZmluZWQnLFxuICAgICAgICBudW1iZXJGb3JtYXQ6IGludGxEZWZpbmVkICYmIHR5cGVvZiBJbnRsLk51bWJlckZvcm1hdCAhPT0gJ3VuZGVmaW5lZCdcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIGF2YWlsYWJpbGl0aWVzXG4gIH1cbn0pO1xuXG5WdWVJMThuLmluc3RhbGwgPSBpbnN0YWxsO1xuVnVlSTE4bi52ZXJzaW9uID0gJzguMjguMic7XG5cbmV4cG9ydCBkZWZhdWx0IFZ1ZUkxOG47XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///263\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ goTo; });\n__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ goto_Goto; });\n\n// NAMESPACE OBJECT: ./node_modules/vuetify/lib/services/goto/easing-patterns.js\nvar easing_patterns_namespaceObject = {};\n__webpack_require__.r(easing_patterns_namespaceObject);\n__webpack_require__.d(easing_patterns_namespaceObject, "linear", function() { return linear; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInQuad", function() { return easeInQuad; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutQuad", function() { return easeOutQuad; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutQuad", function() { return easeInOutQuad; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInCubic", function() { return easeInCubic; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutCubic", function() { return easeOutCubic; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutCubic", function() { return easeInOutCubic; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInQuart", function() { return easeInQuart; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutQuart", function() { return easeOutQuart; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutQuart", function() { return easeInOutQuart; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInQuint", function() { return easeInQuint; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutQuint", function() { return easeOutQuint; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutQuint", function() { return easeInOutQuint; });\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js\nvar es_symbol = __webpack_require__(7);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js\nvar es_array_filter = __webpack_require__(10);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptor.js\nvar es_object_get_own_property_descriptor = __webpack_require__(12);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-own-property-descriptors.js\nvar es_object_get_own_property_descriptors = __webpack_require__(13);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.keys.js\nvar es_object_keys = __webpack_require__(8);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.reflect.construct.js\nvar es_reflect_construct = __webpack_require__(112);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js\nvar web_dom_collections_for_each = __webpack_require__(9);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js\nvar createClass = __webpack_require__(45);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js\nvar classCallCheck = __webpack_require__(44);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js + 1 modules\nvar possibleConstructorReturn = __webpack_require__(55);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js\nvar getPrototypeOf = __webpack_require__(43);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules\nvar inherits = __webpack_require__(66);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(1);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js\nvar es_object_to_string = __webpack_require__(3);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/services/service/index.js\nvar service = __webpack_require__(64);\n\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/services/goto/easing-patterns.js\n// linear\nvar linear = function linear(t) {\n return t;\n}; // accelerating from zero velocity\n\nvar easeInQuad = function easeInQuad(t) {\n return Math.pow(t, 2);\n}; // decelerating to zero velocity\n\nvar easeOutQuad = function easeOutQuad(t) {\n return t * (2 - t);\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutQuad = function easeInOutQuad(t) {\n return t < 0.5 ? 2 * Math.pow(t, 2) : -1 + (4 - 2 * t) * t;\n}; // accelerating from zero velocity\n\nvar easeInCubic = function easeInCubic(t) {\n return Math.pow(t, 3);\n}; // decelerating to zero velocity\n\nvar easeOutCubic = function easeOutCubic(t) {\n return Math.pow(--t, 3) + 1;\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutCubic = function easeInOutCubic(t) {\n return t < 0.5 ? 4 * Math.pow(t, 3) : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1;\n}; // accelerating from zero velocity\n\nvar easeInQuart = function easeInQuart(t) {\n return Math.pow(t, 4);\n}; // decelerating to zero velocity\n\nvar easeOutQuart = function easeOutQuart(t) {\n return 1 - Math.pow(--t, 4);\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutQuart = function easeInOutQuart(t) {\n return t < 0.5 ? 8 * t * t * t * t : 1 - 8 * --t * t * t * t;\n}; // accelerating from zero velocity\n\nvar easeInQuint = function easeInQuint(t) {\n return Math.pow(t, 5);\n}; // decelerating to zero velocity\n\nvar easeOutQuint = function easeOutQuint(t) {\n return 1 + Math.pow(--t, 5);\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutQuint = function easeInOutQuint(t) {\n return t < 0.5 ? 16 * Math.pow(t, 5) : 1 + 16 * Math.pow(--t, 5);\n};\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js\nvar es_function_name = __webpack_require__(26);\n\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/services/goto/util.js\n\n// Return target\'s cumulative offset from the top\nfunction getOffset(target) {\n if (typeof target === \'number\') {\n return target;\n }\n var el = $(target);\n if (!el) {\n throw typeof target === \'string\' ? new Error("Target element \\"".concat(target, "\\" not found.")) : new TypeError("Target must be a Number/Selector/HTMLElement/VueComponent, received ".concat(type(target), " instead."));\n }\n var totalOffset = 0;\n while (el) {\n totalOffset += el.offsetTop;\n el = el.offsetParent;\n }\n return totalOffset;\n}\nfunction getContainer(container) {\n var el = $(container);\n if (el) return el;\n throw typeof container === \'string\' ? new Error("Container element \\"".concat(container, "\\" not found.")) : new TypeError("Container must be a Selector/HTMLElement/VueComponent, received ".concat(type(container), " instead."));\n}\nfunction type(el) {\n return el == null ? el : el.constructor.name;\n}\nfunction $(el) {\n if (typeof el === \'string\') {\n return document.querySelector(el);\n } else if (el && el._isVue) {\n return el.$el;\n } else if (el instanceof HTMLElement) {\n return el;\n } else {\n return null;\n }\n}\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/services/goto/index.js\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction _callSuper(t, o, e) { return o = Object(getPrototypeOf["a" /* default */])(o), Object(possibleConstructorReturn["a" /* default */])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], Object(getPrototypeOf["a" /* default */])(t).constructor) : o.apply(t, e)); }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\n\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { Object(defineProperty["a" /* default */])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\n// Extensions\n // Utilities\n\n\n\nfunction goTo(_target) {\n var _settings = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var settings = _objectSpread({\n container: document.scrollingElement || document.body || document.documentElement,\n duration: 500,\n offset: 0,\n easing: \'easeInOutCubic\',\n appOffset: true\n }, _settings);\n var container = getContainer(settings.container);\n /* istanbul ignore else */\n\n if (settings.appOffset && goTo.framework.application) {\n var isDrawer = container.classList.contains(\'v-navigation-drawer\');\n var isClipped = container.classList.contains(\'v-navigation-drawer--clipped\');\n var _goTo$framework$appli = goTo.framework.application,\n bar = _goTo$framework$appli.bar,\n top = _goTo$framework$appli.top;\n settings.offset += bar;\n /* istanbul ignore else */\n\n if (!isDrawer || isClipped) settings.offset += top;\n }\n var startTime = performance.now();\n var targetLocation;\n if (typeof _target === \'number\') {\n targetLocation = getOffset(_target) - settings.offset;\n } else {\n targetLocation = getOffset(_target) - getOffset(container) - settings.offset;\n }\n var startLocation = container.scrollTop;\n if (targetLocation === startLocation) return Promise.resolve(targetLocation);\n var ease = typeof settings.easing === \'function\' ? settings.easing : easing_patterns_namespaceObject[settings.easing];\n /* istanbul ignore else */\n\n if (!ease) throw new TypeError("Easing function \\"".concat(settings.easing, "\\" not found.")); // Cannot be tested properly in jsdom\n\n /* istanbul ignore next */\n\n return new Promise(function (resolve) {\n return requestAnimationFrame(function step(currentTime) {\n var timeElapsed = currentTime - startTime;\n var progress = Math.abs(settings.duration ? Math.min(timeElapsed / settings.duration, 1) : 1);\n container.scrollTop = Math.floor(startLocation + (targetLocation - startLocation) * ease(progress));\n var clientHeight = container === document.body ? document.documentElement.clientHeight : container.clientHeight;\n var reachBottom = clientHeight + container.scrollTop >= container.scrollHeight;\n if (progress === 1 ||\n // Need to go lower but reach bottom\n targetLocation > container.scrollTop && reachBottom) {\n return resolve(targetLocation);\n }\n requestAnimationFrame(step);\n });\n });\n}\ngoTo.framework = {};\ngoTo.init = function () {};\nvar goto_Goto = /*#__PURE__*/function (_Service) {\n Object(inherits["a" /* default */])(Goto, _Service);\n function Goto() {\n var _this;\n Object(classCallCheck["a" /* default */])(this, Goto);\n _this = _callSuper(this, Goto);\n return Object(possibleConstructorReturn["a" /* default */])(_this, goTo);\n }\n return Object(createClass["a" /* default */])(Goto);\n}(service["a" /* Service */]);\ngoto_Goto.property = \'goTo\';//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2dvdG8vZWFzaW5nLXBhdHRlcm5zLnRzPzA0ODIiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9nb3RvL3V0aWwudHM/OTQzYiIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2dvdG8vaW5kZXgudHM/MWQwZCJdLCJuYW1lcyI6WyJsaW5lYXIiLCJ0IiwiZWFzZUluUXVhZCIsIk1hdGgiLCJwb3ciLCJlYXNlT3V0UXVhZCIsImVhc2VJbk91dFF1YWQiLCJlYXNlSW5DdWJpYyIsImVhc2VPdXRDdWJpYyIsImVhc2VJbk91dEN1YmljIiwiZWFzZUluUXVhcnQiLCJlYXNlT3V0UXVhcnQiLCJlYXNlSW5PdXRRdWFydCIsImVhc2VJblF1aW50IiwiZWFzZU91dFF1aW50IiwiZWFzZUluT3V0UXVpbnQiLCJnZXRPZmZzZXQiLCJ0YXJnZXQiLCJlbCIsIiQiLCJFcnJvciIsImNvbmNhdCIsIlR5cGVFcnJvciIsInR5cGUiLCJ0b3RhbE9mZnNldCIsIm9mZnNldFRvcCIsIm9mZnNldFBhcmVudCIsImdldENvbnRhaW5lciIsImNvbnRhaW5lciIsImNvbnN0cnVjdG9yIiwibmFtZSIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvciIsIl9pc1Z1ZSIsIiRlbCIsIkhUTUxFbGVtZW50IiwiZ29UbyIsIl90YXJnZXQiLCJfc2V0dGluZ3MiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJzZXR0aW5ncyIsIl9vYmplY3RTcHJlYWQiLCJzY3JvbGxpbmdFbGVtZW50IiwiYm9keSIsImRvY3VtZW50RWxlbWVudCIsImR1cmF0aW9uIiwib2Zmc2V0IiwiZWFzaW5nIiwiYXBwT2Zmc2V0IiwiZnJhbWV3b3JrIiwiYXBwbGljYXRpb24iLCJpc0RyYXdlciIsImNsYXNzTGlzdCIsImNvbnRhaW5zIiwiaXNDbGlwcGVkIiwiX2dvVG8kZnJhbWV3b3JrJGFwcGxpIiwiYmFyIiwidG9wIiwic3RhcnRUaW1lIiwicGVyZm9ybWFuY2UiLCJub3ciLCJ0YXJnZXRMb2NhdGlvbiIsInN0YXJ0TG9jYXRpb24iLCJzY3JvbGxUb3AiLCJQcm9taXNlIiwicmVzb2x2ZSIsImVhc2UiLCJlYXNpbmdQYXR0ZXJucyIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsInN0ZXAiLCJjdXJyZW50VGltZSIsInRpbWVFbGFwc2VkIiwicHJvZ3Jlc3MiLCJhYnMiLCJtaW4iLCJmbG9vciIsImNsaWVudEhlaWdodCIsInJlYWNoQm90dG9tIiwic2Nyb2xsSGVpZ2h0IiwiaW5pdCIsIkdvdG8iLCJfU2VydmljZSIsIl9pbmhlcml0cyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2NhbGxTdXBlciIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuIiwiX2NyZWF0ZUNsYXNzIiwiU2VydmljZSIsInByb3BlcnR5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVBO0FBQ08sSUFBTUEsTUFBTSxHQUFJLFNBQVZBLE1BQU1BLENBQUlDLENBQUQ7RUFBQSxPQUFlQSxDQUE5QjtBQUFBLEUsQ0FDUDs7QUFDTyxJQUFNQyxVQUFVLEdBQUksU0FBZEEsVUFBVUEsQ0FBSUQsQ0FBRDtFQUFBLE9BQUFFLElBQUEsQ0FBQUMsR0FBQSxDQUFlSCxDQUFDLEVBQUksQ0FBdkM7QUFBQSxFLENBQ1A7O0FBQ08sSUFBTUksV0FBVyxHQUFJLFNBQWZBLFdBQVdBLENBQUlKLENBQUQ7RUFBQSxPQUFlQSxDQUFDLElBQUksSUFBSUEsQ0FBUixDQUFwQztBQUFBLEUsQ0FDUDs7QUFDTyxJQUFNSyxhQUFhLEdBQUksU0FBakJBLGFBQWFBLENBQUlMLENBQUQ7RUFBQSxPQUFnQkEsQ0FBQyxHQUFHLEdBQUosR0FBVSxJQUFBRSxJQUFBLENBQUFDLEdBQUEsQ0FBSUgsQ0FBQyxFQUFJLENBQW5CLElBQXVCLENBQUMsQ0FBRCxH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QUNlLGVBQVQsQ0FBeUJnQyxZQUF2RCxHQUFzRWxELFNBQVMsQ0FBQ2tELFlBQXJHO01BQ0EsSUFBTUMsV0FBVyxHQUFHRCxZQUFZLEdBQUdsRCxTQUFTLENBQUNxQyxTQUF6QixJQUFzQ3JDLFNBQVMsQ0FBQ29ELFlBQXBFO01BQ0EsSUFDRU4sUUFBUSxLQUFLLENBQWI7TUFDQTtNQUNDWCxjQUFjLEdBQUduQyxTQUFTLENBQUNxQyxTQUEzQixJQUF3Q2MsV0FIM0MsRUFJRTtRQUNBLE9BQU9aLE9BQU8sQ0FBQ0osY0FBRCxDQUFkO01BQ0Q7TUFFRE8scUJBQXFCLENBQUNDLElBQUQsQ0FBckI7SUFDRCxDQWpCa0QsQ0FBNUM7RUFBQSxFQUFQO0FBa0JEO0FBRURuQyxJQUFJLENBQUNlLFNBQUwsR0FBaUIsRUFBakI7QUFDQWYsSUFBSSxDQUFDNkMsSUFBTCxHQUFZLFlBQUssQ0FBRyxDQUFwQjtBQUVPLElBQU1DLFNBQVAsMEJBQUFDLFFBQUE7RUFBQUMsbUNBQUEsQ0FBQUYsSUFBQSxFQUFBQyxRQUFBO0VBR0osU0FBQUQsS0FBQTtJQUFBLElBQUFHLEtBQUE7SUFBQUMseUNBQUEsT0FBQUosSUFBQTtJQUNFRyxLQUFBLEdBQUFFLFVBQUEsT0FBQUwsSUFBQTtJQUVBLE9BQUFNLG9EQUFBLENBQUFILEtBQUEsRUFBT2pELElBQVA7RUFDRDtFQUFBLE9BQUFxRCxzQ0FBQSxDQUFBUCxJQUFBO0FBQUEsRUFQdUJRLDBCQUFwQjtBQUNVUixTQUFBLENBQUFTLFFBQUEsR0FBbUIsTUFBbkIiLCJmaWxlIjoiMjY1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRWFzaW5nRnVuY3Rpb24gPSAodDogbnVtYmVyKSA9PiBudW1iZXJcblxuLy8gbGluZWFyXG5leHBvcnQgY29uc3QgbGluZWFyID0gKHQ6IG51bWJlcikgPT4gdFxuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VJblF1YWQgPSAodDogbnVtYmVyKSA9PiB0ICoqIDJcbi8vIGRlY2VsZXJhdGluZyB0byB6ZXJvIHZlbG9jaXR5XG5leHBvcnQgY29uc3QgZWFzZU91dFF1YWQgPSAodDogbnVtYmVyKSA9PiB0ICogKDIgLSB0KVxuLy8gYWNjZWxlcmF0aW9uIHVudGlsIGhhbGZ3YXksIHRoZW4gZGVjZWxlcmF0aW9uXG5leHBvcnQgY29uc3QgZWFzZUluT3V0UXVhZCA9ICh0OiBudW1iZXIpID0+ICh0IDwgMC41ID8gMiAqIHQgKiogMiA6IC0xICsgKDQgLSAyICogdCkgKiB0KVxuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VJbkN1YmljID0gKHQ6IG51bWJlcikgPT4gdCAqKiAzXG4vLyBkZWNlbGVyYXRpbmcgdG8gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VPdXRDdWJpYyA9ICh0OiBudW1iZXIpID0+IC0tdCAqKiAzICsgMVxuLy8gYWNjZWxlcmF0aW9uIHVudGlsIGhhbGZ3YXksIHRoZW4gZGVjZWxlcmF0aW9uXG5leHBvcnQgY29uc3QgZWFzZUluT3V0Q3ViaWMgPSAodDogbnVtYmVyKSA9PiB0IDwgMC41ID8gNCAqIHQgKiogMyA6ICh0IC0gMSkgKiAoMiAqIHQgLSAyKSAqICgyICogdCAtIDIpICsgMVxuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VJblF1YXJ0ID0gKHQ6IG51bWJlcikgPT4gdCAqKiA0XG4vLyBkZWNlbGVyYXRpbmcgdG8gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VPdXRRdWFydCA9ICh0OiBudW1iZXIpID0+IDEgLSAtLXQgKiogNFxuLy8gYWNjZWxlcmF0aW9uIHVudGlsIGhhbGZ3YXksIHRoZW4gZGVjZWxlcmF0aW9uXG5leHBvcnQgY29uc3QgZWFzZUluT3V0UXVhcnQgPSAodDogbnVtYmVyKSA9PiAodCA8IDAuNSA/IDggKiB0ICogdCAqIHQgKiB0IDogMSAtIDggKiAtLXQgKiB0ICogdCAqIHQpXG4vLyBhY2NlbGVyYXRpbmcgZnJvbSB6ZXJvIHZlbG9jaXR5XG5leHBvcnQgY29uc3QgZWFzZUluUXVpbnQgPSAodDogbnVtYmVyKSA9PiB0ICoqIDVcbi8vIGRlY2VsZXJhdGluZyB0byB6ZXJvIHZlbG9jaXR5XG5leHBvcnQgY29uc3QgZWFzZU91dFF1aW50ID0gKHQ6IG51bWJlcikgPT4gMSArIC0tdCAqKiA1XG4vLyBhY2NlbGVyYXRpb24gdW50aWwgaGFsZndheSwgdGhlbiBkZWNlbGVyYXRpb25cbmV4cG9ydCBjb25zdCBlYXNlSW5PdXRRdWludCA9ICh0OiBudW1iZXIpID0+IHQgPCAwLjUgPyAxNiAqIHQgKiogNSA6IDEgKyAxNiAqIC0tdCAqKiA1XG4iLCJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcblxuLy8gUmV0dXJuIHRhcmdldCdzIGN1bXVsYXRpdmUgb2Zmc2V0IGZyb20gdGhlIHRvcFxuZXhwb3J0IGZ1bmN0aW9uIGdldE9mZnNldCAodGFyZ2V0OiBhbnkpOiBudW1iZXIge1xuICBpZiAodHlwZW9mIHRhcmdldCA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdGFyZ2V0XG4gIH1cblxuICBsZXQgZWwgPSAkKHRhcmdldClcbiAgaWYgKCFlbCkge1xuICAgIHRocm93IHR5cGVvZiB0YXJnZXQgPT09ICdzdHJpbmcnXG4gICAgICA/IG5ldyBFcnJvcihgVGFyZ2V0IGVsZW1lbnQgXCIke3RhcmdldH1cIiBub3QgZm91bmQuYClcbiAgICAgIDogbmV3IFR5cGVFcnJvcihgVGFyZ2V0IG11c3QgYmUgYSBOdW1iZXIvU2VsZWN0b3IvSFRNTEVsZW1lbnQvVnVlQ29tcG9uZW50LCByZWNlaXZlZCAke3R5cGUodGFyZ2V0KX0gaW5zdGVhZC5gKVxuICB9XG5cbiAgbGV0IHRvdGFsT2Zmc2V0ID0gMFxuICB3aGlsZSAoZWwpIHtcbiAgICB0b3RhbE9mZnNldCArPSBlbC5vZmZzZXRUb3BcbiAgICBlbCA9IGVsLm9mZnNldFBhcmVudCBhcyBIVE1MRWxlbWVudFxuICB9XG5cbiAgcmV0dXJuIHRvdGFsT2Zmc2V0XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb250YWluZXIgKGNvbnRhaW5lcjogYW55KTogSFRNTEVsZW1lbnQge1xuICBjb25zdCBlbCA9ICQoY29udGFpbmVyKVxuXG4gIGlmIChlbCkgcmV0dXJuIGVsXG5cbiAgdGhyb3cgdHlwZW9mIGNvbnRhaW5lciA9PT0gJ3N0cmluZydcbiAgICA/IG5ldyBFcnJvcihgQ29udGFpbmVyIGVsZW1lbnQgXCIke2NvbnRhaW5lcn1cIiBub3QgZm91bmQuYClcbiAgICA6IG5ldyBUeXBlRXJyb3IoYENvbnRhaW5lciBtdXN0IGJlIGEgU2VsZWN0b3IvSFRNTEVsZW1lbnQvVnVlQ29tcG9uZW50LCByZWNlaXZlZCAke3R5cGUoY29udGFpbmVyKX0gaW5zdGVhZC5gKVxufVxuXG5mdW5jdGlvbiB0eXBlIChlbDogYW55KSB7XG4gIHJldHVybiBlbCA9PSBudWxsID8gZWwgOiBlbC5jb25zdHJ1Y3Rvci5uYW1lXG59XG5cbmZ1bmN0aW9uICQgKGVsOiBhbnkpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICBpZiAodHlwZW9mIGVsID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PihlbClcbiAgfSBlbHNlIGlmIChlbCAmJiBlbC5faXNWdWUpIHtcbiAgICByZXR1cm4gKGVsIGFzIFZ1ZSkuJGVsIGFzIEhUTUxFbGVtZW50XG4gIH0gZWxzZSBpZiAoZWwgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkge1xuICAgIHJldHVybiBlbFxuICB9IGVsc2Uge1xuICAgIHJldHVybiBudWxsXG4gIH1cbn1cbiIsIi8vIEV4dGVuc2lvbnNcbmltcG9ydCB7IFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlJ1xuXG4vLyBVdGlsaXRpZXNcbmltcG9ydCAqIGFzIGVhc2luZ1BhdHRlcm5zIGZyb20gJy4vZWFzaW5nLXBhdHRlcm5zJ1xuaW1wb3J0IHtcbiAgZ2V0Q29udGFpbmVyLFxuICBnZXRPZmZzZXQsXG59IGZyb20gJy4vdXRpbCdcblxuLy8gVHlwZXNcbmltcG9ydCB7IEdvVG9PcHRpb25zLCBWdWV0aWZ5R29Ub1RhcmdldCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvZ290bydcblxuaW1wb3J0IHsgVnVldGlmeVNlcnZpY2VDb250cmFjdCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdvVG8gKFxuICBfdGFyZ2V0OiBWdWV0aWZ5R29Ub1RhcmdldCxcbiAgX3NldHRpbmdzOiBHb1RvT3B0aW9ucyA9IHt9XG4pOiBQcm9taXNlPG51bWJlcj4ge1xuICBjb25zdCBzZXR0aW5nczogR29Ub09wdGlvbnMgPSB7XG4gICAgY29udGFpbmVyOiAoZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudCBhcyBIVE1MRWxlbWVudCB8IG51bGwpIHx8IGRvY3VtZW50LmJvZHkgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LFxuICAgIGR1cmF0aW9uOiA1MDAsXG4gICAgb2Zmc2V0OiAwLFxuICAgIGVhc2luZzogJ2Vhc2VJbk91dEN1YmljJyxcbiAgICBhcHBPZmZzZXQ6IHRydWUsXG4gICAgLi4uX3NldHRpbmdzLFxuICB9XG4gIGNvbnN0IGNvbnRhaW5lciA9IGdldENvbnRhaW5lcihzZXR0aW5ncy5jb250YWluZXIpXG5cbiAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgaWYgKHNldHRpbmdzLmFwcE9mZnNldCAmJiBnb1RvLmZyYW1ld29yay5hcHBsaWNhdGlvbikge1xuICAgIGNvbnN0IGlzRHJhd2VyID0gY29udGFpbmVyLmNsYXNzTGlzdC5jb250YWlucygndi1uYXZpZ2F0aW9uLWRyYXdlcicpXG4gICAgY29uc3QgaXNDbGlwcGVkID0gY29udGFpbmVyLmNsYXNzTGlzdC5jb250YWlucygndi1uYXZpZ2F0aW9uLWRyYXdlci0tY2xpcHBlZCcpXG4gICAgY29uc3QgeyBiYXIsIHRvcCB9ID0gZ29Uby5mcmFtZXdvcmsuYXBwbGljYXRpb24gYXMgYW55XG5cbiAgICBzZXR0aW5ncy5vZmZzZXQgKz0gYmFyXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoIWlzRHJhd2VyIHx8IGlzQ2xpcHBlZCkgc2V0dGluZ3Mub2Zmc2V0ICs9IHRvcFxuICB9XG5cbiAgY29uc3Qgc3RhcnRUaW1lID0gcGVyZm9ybWFuY2Uubm93KClcblxuICBsZXQgdGFyZ2V0TG9jYXRpb246IG51bWJlclxuICBpZiAodHlwZW9mIF90YXJnZXQgPT09ICdudW1iZXInKSB7XG4gICAgdGFyZ2V0TG9jYXRpb24gPSBnZXRPZmZzZXQoX3RhcmdldCkgLSBzZXR0aW5ncy5vZmZzZXQhXG4gIH0gZWxzZSB7XG4gICAgdGFyZ2V0TG9jYXRpb24gPSBnZXRPZmZzZXQoX3RhcmdldCkgLSBnZXRPZmZzZXQoY29udGFpbmVyKSAtIHNldHRpbmdzLm9mZnNldCFcbiAgfVxuXG4gIGNvbnN0IHN0YXJ0TG9jYXRpb24gPSBjb250YWluZXIuc2Nyb2xsVG9wXG4gIGlmICh0YXJnZXRMb2NhdGlvbiA9PT0gc3RhcnRMb2NhdGlvbikgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0YXJnZXRMb2NhdGlvbilcblxuICBjb25zdCBlYXNlID0gdHlwZW9mIHNldHRpbmdzLmVhc2luZyA9PT0gJ2Z1bmN0aW9uJ1xuICAgID8gc2V0dGluZ3MuZWFzaW5nXG4gICAgOiBlYXNpbmdQYXR0ZXJuc1tzZXR0aW5ncy5lYXNpbmchXVxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICBpZiAoIWVhc2UpIHRocm93IG5ldyBUeXBlRXJyb3IoYEVhc2luZyBmdW5jdGlvbiBcIiR7c2V0dGluZ3MuZWFzaW5nfVwiIG5vdCBmb3VuZC5gKVxuXG4gIC8vIENhbm5vdCBiZSB0ZXN0ZWQgcHJvcGVybHkgaW4ganNkb21cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uIHN0ZXAgKGN1cnJlbnRUaW1lOiBudW1iZXIpIHtcbiAgICBjb25zdCB0aW1lRWxhcHNlZCA9IGN1cnJlbnRUaW1lIC0gc3RhcnRUaW1lXG4gICAgY29uc3QgcHJvZ3Jlc3MgPSBNYXRoLmFicyhzZXR0aW5ncy5kdXJhdGlvbiA/IE1hdGgubWluKHRpbWVFbGFwc2VkIC8gc2V0dGluZ3MuZHVyYXRpb24sIDEpIDogMSlcblxuICAgIGNvbnRhaW5lci5zY3JvbGxUb3AgPSBNYXRoLmZsb29yKHN0YXJ0TG9jYXRpb24gKyAodGFyZ2V0TG9jYXRpb24gLSBzdGFydExvY2F0aW9uKSAqIGVhc2UocHJvZ3Jlc3MpKVxuXG4gICAgY29uc3QgY2xpZW50SGVpZ2h0ID0gY29udGFpbmVyID09PSBkb2N1bWVudC5ib2R5ID8gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCA6IGNvbnRhaW5lci5jbGllbnRIZWlnaHRcbiAgICBjb25zdCByZWFjaEJvdHRvbSA9IGNsaWVudEhlaWdodCArIGNvbnRhaW5lci5zY3JvbGxUb3AgPj0gY29udGFpbmVyLnNjcm9sbEhlaWdodFxuICAgIGlmIChcbiAgICAgIHByb2dyZXNzID09PSAxIHx8XG4gICAgICAvLyBOZWVkIHRvIGdvIGxvd2VyIGJ1dCByZWFjaCBib3R0b21cbiAgICAgICh0YXJnZXRMb2NhdGlvbiA+IGNvbnRhaW5lci5zY3JvbGxUb3AgJiYgcmVhY2hCb3R0b20pXG4gICAgKSB7XG4gICAgICByZXR1cm4gcmVzb2x2ZSh0YXJnZXRMb2NhdGlvbilcbiAgICB9XG5cbiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoc3RlcClcbiAgfSkpXG59XG5cbmdvVG8uZnJhbWV3b3JrID0ge30gYXMgUmVjb3JkPHN0cmluZywgVnVldGlmeVNlcnZpY2VDb250cmFjdD5cbmdvVG8uaW5pdCA9ICgpID0+IHt9XG5cbmV4cG9ydCBjbGFzcyBHb3RvIGV4dGVuZHMgU2VydmljZSB7XG4gIHB1YmxpYyBzdGF0aWMgcHJvcGVydHk6ICdnb1RvJyA9ICdnb1RvJ1xuXG4gIGNvbnN0cnVjdG9yICgpIHtcbiAgICBzdXBlcigpXG5cbiAgICByZXR1cm4gZ29Ub1xuICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///265\n')},function(module,exports,__webpack_require__){eval("// style-loader: Adds some css to the DOM by adding a \");\n }\n }, {\n key: \"initTheme\",\n value: function initTheme(root) {\n var _this3 = this;\n\n // Only watch for reactivity on client side\n if (typeof document === 'undefined') return; // If we get here somehow, ensure\n // existing instance is removed\n\n if (this.unwatch) {\n this.unwatch();\n this.unwatch = null;\n } // TODO: Update to use RFC if merged\n // https://github.com/vuejs/rfcs/blob/advanced-reactivity-api/active-rfcs/0000-advanced-reactivity-api.md\n\n\n root.$once('hook:created', function () {\n var obs = vue_runtime_esm[\"a\" /* default */].observable({\n themes: _this3.themes\n });\n _this3.unwatch = root.$watch(function () {\n return obs.themes;\n }, function () {\n return _this3.applyTheme();\n }, {\n deep: true\n });\n });\n this.applyTheme();\n }\n }, {\n key: \"currentTheme\",\n get: function get() {\n var target = this.dark ? 'dark' : 'light';\n return this.themes[target];\n }\n }, {\n key: \"generatedStyles\",\n get: function get() {\n var theme = this.parsedTheme;\n /* istanbul ignore next */\n\n var options = this.options || {};\n var css;\n\n if (options.themeCache != null) {\n css = options.themeCache.get(theme);\n /* istanbul ignore if */\n\n if (css != null) return css;\n }\n\n css = genStyles(theme, options.customProperties);\n\n if (options.minifyTheme != null) {\n css = options.minifyTheme(css);\n }\n\n if (options.themeCache != null) {\n options.themeCache.set(theme, css);\n }\n\n return css;\n }\n }, {\n key: \"parsedTheme\",\n get: function get() {\n return parse(this.currentTheme || {}, undefined, Object(helpers[\"o\" /* getNestedValue */])(this.options, ['variations'], true));\n } // Is using v2.3 of vue-meta\n // https://github.com/nuxt/vue-meta/releases/tag/v2.3.0\n\n }, {\n key: \"isVueMeta23\",\n get: function get() {\n return typeof this.vueMeta.addApp === 'function';\n }\n }]);\n\n return Theme;\n}(service[\"a\" /* Service */]);\ntheme_Theme.property = 'theme';\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/framework.js\n\n\n\n\n // Services\n\n\n\nvar framework_Vuetify = /*#__PURE__*/function () {\n function Vuetify() {\n var userPreset = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n Object(classCallCheck[\"a\" /* default */])(this, Vuetify);\n\n this.framework = {\n isHydrating: false\n };\n this.installed = [];\n this.preset = {};\n this.userPreset = {};\n this.userPreset = userPreset;\n this.use(presets_Presets);\n this.use(application_Application);\n this.use(breakpoint_Breakpoint);\n this.use(services_goto[\"a\" /* Goto */]);\n this.use(icons_Icons);\n this.use(lang_Lang);\n this.use(theme_Theme);\n } // Called on the new vuetify instance\n // bootstrap in install beforeCreate\n // Exposes ssrContext if available\n\n\n Object(createClass[\"a\" /* default */])(Vuetify, [{\n key: \"init\",\n value: function init(root, ssrContext) {\n var _this = this;\n\n this.installed.forEach(function (property) {\n var service = _this.framework[property];\n service.framework = _this.framework;\n service.init(root, ssrContext);\n }); // rtl is not installed and\n // will never be called by\n // the init process\n\n this.framework.rtl = Boolean(this.preset.rtl);\n } // Instantiate a VuetifyService\n\n }, {\n key: \"use\",\n value: function use(Service) {\n var property = Service.property;\n if (this.installed.includes(property)) return; // TODO maybe a specific type for arg 2?\n\n this.framework[property] = new Service(this.preset, this);\n this.installed.push(property);\n }\n }]);\n\n return Vuetify;\n}();\n\n\nframework_Vuetify.install = install;\nframework_Vuetify.installed = false;\nframework_Vuetify.version = \"2.6.10\";\nframework_Vuetify.config = {\n silent: false\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vc3JjL2luc3RhbGwudHM/Nzc0NCIsIndlYnBhY2s6Ly8vLi4vLi4vc3JjL2xvY2FsZS9lbi50cz80OTYyIiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvcHJlc2V0cy9kZWZhdWx0L2luZGV4LnRzP2ZiZjUiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9wcmVzZXRzL2luZGV4LnRzP2Y5OGYiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9hcHBsaWNhdGlvbi9pbmRleC50cz9hMmJkIiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvc2VydmljZXMvYnJlYWtwb2ludC9pbmRleC50cz80YTRkIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvaWNvbnMvcHJlc2V0cy9tZGktc3ZnLnRzP2UwNjMiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL21kLnRzPzJkYjgiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL21kaS50cz81MDVmIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvaWNvbnMvcHJlc2V0cy9mYS50cz82MDJkIiwid2VicGFjazovLy8uLi8uLi8uLi8uLi9zcmMvc2VydmljZXMvaWNvbnMvcHJlc2V0cy9mYTQudHM/MTIzYSIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2ljb25zL3ByZXNldHMvZmEtc3ZnLnRzP2U2OGUiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9wcmVzZXRzL2luZGV4LnRzPzFjYTgiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9pY29ucy9pbmRleC50cz84YTA0Iiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvc2VydmljZXMvbGFuZy9pbmRleC50cz9hNWM5Iiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvdXRpbC9jb2xvci90cmFuc2Zvcm1DSUVMQUIudHM/Y2Y3OSIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL3RoZW1lL3V0aWxzLnRzPzIyNWUiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy90aGVtZS9pbmRleC50cz9jZWI2Iiwid2VicGFjazovLy8uLi9zcmMvZnJhbWV3b3JrLnRzP2JiYmQiXSwibmFtZXMiOlsiaW5zdGFsbCIsIlZ1ZSIsImFyZ3MiLCJpbnN0YWxsZWQiLCJPdXJWdWUiLCJjb25zb2xlRXJyb3IiLCJjb21wb25lbnRzIiwiZGlyZWN0aXZlcyIsIm5hbWUiLCJkaXJlY3RpdmUiLCJyZWdpc3RlckNvbXBvbmVudHMiLCJrZXkiLCJjb21wb25lbnQiLCIkX3Z1ZXRpZnlfc3ViY29tcG9uZW50cyIsIiRfdnVldGlmeV9pbnN0YWxsZWQiLCJtaXhpbiIsImJlZm9yZUNyZWF0ZSIsIm9wdGlvbnMiLCIkb3B0aW9ucyIsInZ1ZXRpZnkiLCJpbml0IiwiJHNzckNvbnRleHQiLCIkdnVldGlmeSIsIm9ic2VydmFibGUiLCJmcmFtZXdvcmsiLCJwYXJlbnQiLCJiZWZvcmVNb3VudCIsIiRlbCIsImhhc0F0dHJpYnV0ZSIsImlzSHlkcmF0aW5nIiwiYnJlYWtwb2ludCIsInVwZGF0ZSIsIm1vdW50ZWQiLCJiYWRnZSIsImNsb3NlIiwiZGF0YUl0ZXJhdG9yIiwibm9SZXN1bHRzVGV4dCIsImxvYWRpbmdUZXh0IiwiZGF0YVRhYmxlIiwiaXRlbXNQZXJQYWdlVGV4dCIsImFyaWFMYWJlbCIsInNvcnREZXNjZW5kaW5nIiwic29ydEFzY2VuZGluZyIsInNvcnROb25lIiwiYWN0aXZhdGVOb25lIiwiYWN0aXZhdGVEZXNjZW5kaW5nIiwiYWN0aXZhdGVBc2NlbmRpbmciLCJzb3J0QnkiLCJkYXRhRm9vdGVyIiwiaXRlbXNQZXJQYWdlQWxsIiwibmV4dFBhZ2UiLCJwcmV2UGFnZSIsImZpcnN0UGFnZSIsImxhc3RQYWdlIiwicGFnZVRleHQiLCJkYXRlUGlja2VyIiwiaXRlbXNTZWxlY3RlZCIsIm5leHRNb250aEFyaWFMYWJlbCIsIm5leHRZZWFyQXJpYUxhYmVsIiwicHJldk1vbnRoQXJpYUxhYmVsIiwicHJldlllYXJBcmlhTGFiZWwiLCJub0RhdGFUZXh0IiwiY2Fyb3VzZWwiLCJwcmV2IiwibmV4dCIsImRlbGltaXRlciIsImNhbGVuZGFyIiwibW9yZUV2ZW50cyIsImZpbGVJbnB1dCIsImNvdW50ZXIiLCJjb3VudGVyU2l6ZSIsInRpbWVQaWNrZXIiLCJhbSIsInBtIiwicGFnaW5hdGlvbiIsIndyYXBwZXIiLCJwcmV2aW91cyIsInBhZ2UiLCJjdXJyZW50UGFnZSIsInJhdGluZyIsImljb24iLCJwcmVzZXQiLCJtb2JpbGVCcmVha3BvaW50Iiwic2Nyb2xsQmFyV2lkdGgiLCJ0aHJlc2hvbGRzIiwieHMiLCJzbSIsIm1kIiwibGciLCJpY29ucyIsImljb25mb250IiwidmFsdWVzIiwibGFuZyIsImN1cnJlbnQiLCJsb2NhbGVzIiwiZW4iLCJ0IiwidW5kZWZpbmVkIiwicnRsIiwidGhlbWUiLCJkYXJrIiwiZGVmYXVsdCIsImRpc2FibGUiLCJjc3BOb25jZSIsImN1c3RvbVByb3BlcnRpZXMiLCJtaW5pZnlUaGVtZSIsInRoZW1lQ2FjaGUiLCJ2YXJpYXRpb25zIiwidGhlbWVzIiwibGlnaHQiLCJwcmltYXJ5Iiwic2Vjb25kYXJ5IiwiYWNjZW50IiwiZXJyb3IiLCJpbmZvIiwic3VjY2VzcyIsIndhcm5pbmciLCJQcmVzZXRzIiwicGFyZW50UHJlc2V0IiwiZGVmYXVsdFByZXNldCIsIm1lcmdlRGVlcCIsIlByZXNldCIsInVzZXJQcmVzZXQiLCJnbG9iYWxQcmVzZXQiLCJjb25zb2xlV2FybiIsIlNlcnZpY2UiLCJBcHBsaWNhdGlvbiIsImJhciIsInRvcCIsImxlZnQiLCJpbnNldEZvb3RlciIsInJpZ2h0IiwiYm90dG9tIiwiZm9vdGVyIiwidWlkIiwibG9jYXRpb24iLCJzaXplIiwiYXBwbGljYXRpb24iLCJPYmplY3QiLCJyZWR1Y2UiLCJhY2MiLCJjdXIiLCJCcmVha3BvaW50IiwicHJvcGVydHkiLCJ3aW5kb3ciLCJhZGRFdmVudExpc3RlbmVyIiwib25SZXNpemUiLCJiaW5kIiwicGFzc2l2ZSIsInNzciIsImhlaWdodCIsImdldENsaWVudEhlaWdodCIsIndpZHRoIiwiZ2V0Q2xpZW50V2lkdGgiLCJ4bCIsInhzT25seSIsInNtT25seSIsInNtQW5kRG93biIsInNtQW5kVXAiLCJtZE9ubHkiLCJtZEFuZERvd24iLCJtZEFuZFVwIiwibGdPbmx5IiwibGdBbmREb3duIiwibGdBbmRVcCIsInhsT25seSIsIm1vYmlsZSIsInBhcnNlSW50IiwiYnJlYWtwb2ludHMiLCJtYXgiLCJjbGVhclRpbWVvdXQiLCJyZXNpemVUaW1lb3V0Iiwic2V0VGltZW91dCIsImRvY3VtZW50IiwiTWF0aCIsImRvY3VtZW50RWxlbWVudCIsImNsaWVudFdpZHRoIiwiaW5uZXJXaWR0aCIsImNsaWVudEhlaWdodCIsImlubmVySGVpZ2h0IiwiY29tcGxldGUiLCJjYW5jZWwiLCJkZWxldGUiLCJjbGVhciIsImNoZWNrYm94T24iLCJjaGVja2JveE9mZiIsImNoZWNrYm94SW5kZXRlcm1pbmF0ZSIsInNvcnQiLCJleHBhbmQiLCJtZW51Iiwic3ViZ3JvdXAiLCJkcm9wZG93biIsInJhZGlvT24iLCJyYWRpb09mZiIsImVkaXQiLCJyYXRpbmdFbXB0eSIsInJhdGluZ0Z1bGwiLCJyYXRpbmdIYWxmIiwibG9hZGluZyIsImZpcnN0IiwibGFzdCIsInVuZm9sZCIsImZpbGUiLCJwbHVzIiwibWludXMiLCJjb252ZXJ0VG9Db21wb25lbnREZWNsYXJhdGlvbnMiLCJpY29uU2V0IiwicmVzdWx0IiwicHJvcHMiLCJzcGxpdCIsImZyZWV6ZSIsIm1kaVN2ZyIsIm1kaSIsImZhIiwiZmE0IiwiZmFTdmciLCJJY29ucyIsInByZXNldHMiLCJMQU5HX1BSRUZJWCIsImZhbGxiYWNrIiwiU3ltYm9sIiwiZ2V0VHJhbnNsYXRpb24iLCJsb2NhbGUiLCJ1c2luZ0RlZmF1bHQiLCJkZWZhdWx0TG9jYWxlIiwic2hvcnRLZXkiLCJyZXBsYWNlIiwidHJhbnNsYXRpb24iLCJnZXRPYmplY3RWYWx1ZUJ5UGF0aCIsIkxhbmciLCJ0cmFuc2xhdG9yIiwiZGVmYXVsdFRyYW5zbGF0b3IiLCJwYXJhbXMiLCJzdGFydHNXaXRoIiwiY3VycmVudExvY2FsZSIsInN0ciIsIm1hdGNoIiwiaW5kZXgiLCJTdHJpbmciLCJkZWx0YSIsImNpZWxhYkZvcndhcmRUcmFuc2Zvcm0iLCJjYnJ0IiwiY2llbGFiUmV2ZXJzZVRyYW5zZm9ybSIsImZyb21YWVoiLCJ4eXoiLCJ0cmFuc2Zvcm0iLCJ0cmFuc2Zvcm1lZFkiLCJ0b1hZWiIsImxhYiIsIkxuIiwicGFyc2UiLCJpc0l0ZW0iLCJhbmNob3IiLCJ2YXJpYW50IiwiY29sb3JzIiwia2V5cyIsInBhcnNlZFRoZW1lIiwiaSIsImxlbmd0aCIsInZhbHVlIiwiYmFzZSIsImludFRvSGV4IiwiY29sb3JUb0ludCIsImNvbG9yVG9IZXgiLCJnZW5WYXJpYXRpb25zIiwiZ2VuQmFzZUNvbG9yIiwiZ2VuVmFyaWFudENvbG9yIiwidHlwZSIsIm4iLCJnZW5Db2xvclZhcmlhYmxlTmFtZSIsImdlbkNvbG9yVmFyaWFibGUiLCJnZW5TdHlsZXMiLCJjc3NWYXIiLCJ2YXJpYWJsZXNDc3MiLCJjc3MiLCJhQ29sb3IiLCJ2YXJpYW50cyIsInZhcmlhbnRWYWx1ZSIsImxpZ2h0ZW4iLCJkYXJrZW4iLCJhbW91bnQiLCJMQUIiLCJzUkdCIiwiVGhlbWUiLCJCb29sZWFuIiwiZGVmYXVsdHMiLCJkaXNhYmxlZCIsImZpbGxWYXJpYW50IiwidmFsIiwidnVlTWV0YSIsImlzVnVlTWV0YTIzIiwiYXBwbHlWdWVNZXRhMjMiLCJjaGVja09yQ3JlYXRlU3R5bGVFbGVtZW50Iiwic3R5bGVFbCIsImlubmVySFRNTCIsImlzRGFyayIsIm9sZERhcmsiLCJhcHBseVRoZW1lIiwiY2xlYXJDc3MiLCJnZW5lcmF0ZWRTdHlsZXMiLCJyb290Iiwic3NyQ29udGV4dCIsIiRtZXRhIiwiaW5pdFZ1ZU1ldGEiLCJpbml0U1NSIiwiaW5pdFRoZW1lIiwiYXNzaWduIiwiZ2V0RWxlbWVudEJ5SWQiLCJnZW5TdHlsZUVsZW1lbnQiLCJkZWZhdWx0VGhlbWUiLCJjcmVhdGVFbGVtZW50IiwiaWQiLCJzZXRBdHRyaWJ1dGUiLCJoZWFkIiwiYXBwZW5kQ2hpbGQiLCIkbmV4dFRpY2siLCJtZXRhS2V5TmFtZSIsImdldE9wdGlvbnMiLCJrZXlOYW1lIiwibWV0YUluZm8iLCJzdHlsZSIsInZ1ZXRpZnlTdHlsZXNoZWV0IiwiZmluZCIsInMiLCJwdXNoIiwiY3NzVGV4dCIsIm5vbmNlIiwiYWRkQXBwIiwic2V0IiwidW53YXRjaCIsIiRvbmNlIiwib2JzIiwiJHdhdGNoIiwiZGVlcCIsInRhcmdldCIsImdldCIsIlRoZW1lVXRpbHMiLCJjdXJyZW50VGhlbWUiLCJnZXROZXN0ZWRWYWx1ZSIsIlZ1ZXRpZnkiLCJ1c2UiLCJzZXJ2aWNlcyIsImZvckVhY2giLCJzZXJ2aWNlIiwiaW5jbHVkZXMiLCJzaWxlbnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFFQTtBQUVNLFNBQVVBLE9BQVYsQ0FBbUJDLEdBQW5CLEVBQW9FO0FBQUEsTUFBNUJDLElBQTRCLHVFQUFGLEVBQUU7QUFDeEUsTUFBS0YsT0FBZSxDQUFDRyxTQUFyQixFQUFnQztBQUMvQkgsU0FBZSxDQUFDRyxTQUFoQixHQUE0QixJQUE1Qjs7QUFFRCxNQUFJQyxrQ0FBTSxLQUFLSCxHQUFmLEVBQW9CO0FBQ2xCSSwyQ0FBWSw0SkFBWjtBQUlEOztBQUVELE1BQU1DLFVBQVUsR0FBR0osSUFBSSxDQUFDSSxVQUFMLElBQW1CLEVBQXRDO0FBQ0EsTUFBTUMsVUFBVSxHQUFHTCxJQUFJLENBQUNLLFVBQUwsSUFBbUIsRUFBdEM7O0FBRUEsT0FBSyxJQUFNQyxJQUFYLElBQW1CRCxVQUFuQixFQUErQjtBQUM3QixRQUFNRSxTQUFTLEdBQUdGLFVBQVUsQ0FBQ0MsSUFBRCxD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Y3RvciB9IGZyb20gJ3Z1ZSdcbmltcG9ydCB7IFZ1ZXRpZnlVc2VPcHRpb25zIH0gZnJvbSAndnVldGlmeS90eXBlcydcbmltcG9ydCB7IGNvbnNvbGVFcnJvciB9IGZyb20gJy4vdXRpbC9jb25zb2xlJ1xuXG5leHBvcnQgZnVuY3Rpb24gaW5zdGFsbCAoVnVlOiBWdWVDb25zdHJ1Y3RvciwgYXJnczogVnVldGlmeVVzZU9wdGlvbnMgPSB7fSkge1xuICBpZiAoKGluc3RhbGwgYXMgYW55KS5pbnN0YWxsZWQpIHJldHVyblxuICAoaW5zdGFsbCBhcyBhbnkpLmluc3RhbGxlZCA9IHRydWVcblxuICBpZiAoT3VyVnVlICE9PSBWdWUpIHtcbiAgICBjb25zb2xlRXJyb3IoYE11bHRpcGxlIGluc3RhbmNlcyBvZiBWdWUgZGV0ZWN0ZWRcblNlZSBodHRwczovL2dpdGh1Yi5jb20vdnVldGlmeWpzL3Z1ZXRpZnkvaXNzdWVzLzQwNjhcblxuSWYgeW91J3JlIHNlZWluZyBcIiRhdHRycyBpcyByZWFkb25seVwiLCBpdCdzIGNhdXNlZCBieSB0aGlzYClcbiAgfVxuXG4gIGNvbnN0IGNvbXBvbmVudHMgPSBhcmdzLmNvbXBvbmVudHMgfHwge31cbiAgY29uc3QgZGlyZWN0aXZlcyA9IGFyZ3MuZGlyZWN0aXZlcyB8fCB7fVxuXG4gIGZvciAoY29uc3QgbmFtZSBpbiBkaXJlY3RpdmVzKSB7XG4gICAgY29uc3QgZGlyZWN0aXZlID0gZGlyZWN0aXZlc1tuYW1lXVxuXG4gICAgVnVlLmRpcmVjdGl2ZShuYW1lLCBkaXJlY3RpdmUpXG4gIH1cblxuICAoZnVuY3Rpb24gcmVnaXN0ZXJDb21wb25lbnRzIChjb21wb25lbnRzOiBhbnkpIHtcbiAgICBpZiAoY29tcG9uZW50cykge1xuICAgICAgZm9yIChjb25zdCBrZXkgaW4gY29tcG9uZW50cykge1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSBjb21wb25lbnRzW2tleV1cbiAgICAgICAgaWYgKGNvbXBvbmVudCAmJiAhcmVnaXN0ZXJDb21wb25lbnRzKGNvbXBvbmVudC4kX3Z1ZXRpZnlfc3ViY29tcG9uZW50cykpIHtcbiAgICAgICAgICBWdWUuY29tcG9uZW50KGtleSwgY29tcG9uZW50IGFzIHR5cGVvZiBWdWUpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICAgIHJldHVybiBmYWxzZVxuICB9KShjb21wb25lbnRzKVxuXG4gIC8vIFVzZWQgdG8gYXZvaWQgbXVsdGlwbGUgbWl4aW5zIGJlaW5nIHNldHVwXG4gIC8vIHdoZW4gaW4gZGV2IG1vZGUgYW5kIGhvdCBtb2R1bGUgcmVsb2FkXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS92dWVqcy92dWUvaXNzdWVzLzUwODkjaXNzdWVjb21tZW50LTI4NDI2MDExMVxuICBpZiAoVnVlLiRfdnVldGlmeV9pbnN0YWxsZWQpIHJldHVyblxuICBWdWUuJF92dWV0aWZ5X2luc3RhbGxlZCA9IHRydWVcblxuICBWdWUubWl4aW4oe1xuICAgIGJlZm9yZUNyZWF0ZSAoKSB7XG4gICAgICBjb25zdCBvcHRpb25zID0gdGhpcy4kb3B0aW9ucyBhcyBhbnlcblxuICAgICAgaWYgKG9wdGlvbnMudnVldGlmeSkge1xuICAgICAgICBvcHRpb25zLnZ1ZXRpZnkuaW5pdCh0aGlzLCB0aGlzLiRzc3JDb250ZXh0KVxuICAgICAgICB0aGlzLiR2dWV0aWZ5ID0gVnVlLm9ic2VydmFibGUob3B0aW9ucy52dWV0aWZ5LmZyYW1ld29yaylcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkgPSAob3B0aW9ucy5wYXJlbnQgJiYgb3B0aW9ucy5wYXJlbnQuJHZ1ZXRpZnkpIHx8IHRoaXNcbiAgICAgIH1cbiAgICB9LFxuICAgIGJlZm9yZU1vdW50ICgpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmICh0aGlzLiRvcHRpb25zLnZ1ZXRpZnkgJiYgdGhpcy4kZWwgJiYgdGhpcy4kZWwuaGFzQXR0cmlidXRlKCdkYXRhLXNlcnZlci1yZW5kZXJlZCcpKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgdGhpcy4kdnVldGlmeS5pc0h5ZHJhdGluZyA9IHRydWVcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLiR2dWV0aWZ5LmJyZWFrcG9pbnQudXBkYXRlKHRydWUpXG4gICAgICB9XG4gICAgfSxcbiAgICBtb3VudGVkICgpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlmICh0aGlzLiRvcHRpb25zLnZ1ZXRpZnkgJiYgdGhpcy4kdnVldGlmeS5pc0h5ZHJhdGluZykge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkuaXNIeWRyYXRpbmcgPSBmYWxzZVxuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkuYnJlYWtwb2ludC51cGRhdGUoKVxuICAgICAgfVxuICAgIH0sXG4gIH0pXG59XG4iLCJleHBvcnQgZGVmYXVsdCB7XG4gIGJhZGdlOiAnQmFkZ2UnLFxuICBjbG9zZTogJ0Nsb3NlJyxcbiAgZGF0YUl0ZXJhdG9yOiB7XG4gICAgbm9SZXN1bHRzVGV4dDogJ05vIG1hdGNoaW5nIHJlY29yZHMgZm91bmQnLFxuICAgIGxvYWRpbmdUZXh0OiAnTG9hZGluZyBpdGVtcy4uLicsXG4gIH0sXG4gIGRhdGFUYWJsZToge1xuICAgIGl0ZW1zUGVyUGFnZVRleHQ6ICdSb3dzIHBlciBwYWdlOicsXG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICBzb3J0RGVzY2VuZGluZzogJ1NvcnRlZCBkZXNjZW5kaW5nLicsXG4gICAgICBzb3J0QXNjZW5kaW5nOiAnU29ydGVkIGFzY2VuZGluZy4nLFxuICAgICAgc29ydE5vbmU6ICdOb3Qgc29ydGVkLicsXG4gICAgICBhY3RpdmF0ZU5vbmU6ICdBY3RpdmF0ZSB0byByZW1vdmUgc29ydGluZy4nLFxuICAgICAgYWN0aXZhdGVEZXNjZW5kaW5nOiAnQWN0aXZhdGUgdG8gc29ydCBkZXNjZW5kaW5nLicsXG4gICAgICBhY3RpdmF0ZUFzY2VuZGluZzogJ0FjdGl2YXRlIHRvIHNvcnQgYXNjZW5kaW5nLicsXG4gICAgfSxcbiAgICBzb3J0Qnk6ICdTb3J0IGJ5JyxcbiAgfSxcbiAgZGF0YUZvb3Rlcjoge1xuICAgIGl0ZW1zUGVyUGFnZVRleHQ6ICdJdGVtcyBwZXIgcGFnZTonLFxuICAgIGl0ZW1zUGVyUGFnZUFsbDogJ0FsbCcsXG4gICAgbmV4dFBhZ2U6ICdOZXh0IHBhZ2UnLFxuICAgIHByZXZQYWdlOiAnUHJldmlvdXMgcGFnZScsXG4gICAgZmlyc3RQYWdlOiAnRmlyc3QgcGFnZScsXG4gICAgbGFzdFBhZ2U6ICdMYXN0IHBhZ2UnLFxuICAgIHBhZ2VUZXh0OiAnezB9LXsxfSBvZiB7Mn0nLFxuICB9LFxuICBkYXRlUGlja2VyOiB7XG4gICAgaXRlbXNTZWxlY3RlZDogJ3swfSBzZWxlY3RlZCcsXG4gICAgbmV4dE1vbnRoQXJpYUxhYmVsOiAnTmV4dCBtb250aCcsXG4gICAgbmV4dFllYXJBcmlhTGFiZWw6ICdOZXh0IHllYXInLFxuICAgIHByZXZNb250aEFyaWFMYWJlbDogJ1ByZXZpb3VzIG1vbnRoJyxcbiAgICBwcmV2WWVhckFyaWFMYWJlbDogJ1ByZXZpb3VzIHllYXInLFxuICB9LFxuICBub0RhdGFUZXh0OiAnTm8gZGF0YSBhdmFpbGFibGUnLFxuICBjYXJvdXNlbDoge1xuICAgIHByZXY6ICdQcmV2aW91cyB2aXN1YWwnLFxuICAgIG5leHQ6ICdOZXh0IHZpc3VhbCcsXG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICBkZWxpbWl0ZXI6ICdDYXJvdXNlbCBzbGlkZSB7MH0gb2YgezF9JyxcbiAgICB9LFxuICB9LFxuICBjYWxlbmRhcjoge1xuICAgIG1vcmVFdmVudHM6ICd7MH0gbW9yZScsXG4gIH0sXG4gIGZpbGVJbnB1dDoge1xuICAgIGNvdW50ZXI6ICd7MH0gZmlsZXMnLFxuICAgIGNvdW50ZXJTaXplOiAnezB9IGZpbGVzICh7MX0gaW4gdG90YWwpJyxcbiAgfSxcbiAgdGltZVBpY2tlcjoge1xuICAgIGFtOiAnQU0nLFxuICAgIHBtOiAnUE0nLFxuICB9LFxuICBwYWdpbmF0aW9uOiB7XG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICB3cmFwcGVyOiAnUGFnaW5hdGlvbiBOYXZpZ2F0aW9uJyxcbiAgICAgIG5leHQ6ICdOZXh0IHBhZ2UnLFxuICAgICAgcHJldmlvdXM6ICdQcmV2aW91cyBwYWdlJyxcbiAgICAgIHBhZ2U6ICdHb3RvIFBhZ2UgezB9JyxcbiAgICAgIGN1cnJlbnRQYWdlOiAnQ3VycmVudCBQYWdlLCBQYWdlIHswfScsXG4gICAgfSxcbiAgfSxcbiAgcmF0aW5nOiB7XG4gICAgYXJpYUxhYmVsOiB7XG4gICAgICBpY29uOiAnUmF0aW5nIHswfSBvZiB7MX0nLFxuICAgIH0sXG4gIH0sXG59XG4iLCIvLyBTdHlsZXNcbmltcG9ydCAnLi4vLi4vc3R5bGVzL21haW4uc2FzcydcblxuLy8gTG9jYWxlXG5pbXBvcnQgeyBlbiB9IGZyb20gJy4uLy4uL2xvY2FsZSdcblxuLy8gSWNvbnNcbi8vIFRPRE86IEVuYWJsZSBmb3IgdjNcbi8vIGltcG9ydCBtZGkgZnJvbSAnLi4vLi4vc2VydmljZXMvaWNvbnMvcHJlc2V0cy9tZGknXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBWdWV0aWZ5UHJlc2V0IH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9wcmVzZXRzJ1xuXG5leHBvcnQgY29uc3QgcHJlc2V0OiBWdWV0aWZ5UHJlc2V0ID0ge1xuICBicmVha3BvaW50OiB7XG4gICAgLy8gVE9ETzogdXBkYXRlIHRvIE1EMiBzcGVjIGluIHYzIC0gMTI4MFxuICAgIG1vYmlsZUJyZWFrcG9pbnQ6IDEyNjQsXG4gICAgc2Nyb2xsQmFyV2lkdGg6IDE2LFxuICAgIHRocmVzaG9sZHM6IHtcbiAgICAgIHhzOiA2MDAsXG4gICAgICBzbTogOTYwLFxuICAgICAgbWQ6IDEyODAsXG4gICAgICBsZzogMTkyMCxcbiAgICB9LFxuICB9LFxuICBpY29uczoge1xuICAgIC8vIFRPRE86IHJlbW92ZSB2M1xuICAgIGljb25mb250OiAnbWRpJyxcbiAgICB2YWx1ZXM6IHt9LFxuICB9LFxuICBsYW5nOiB7XG4gICAgY3VycmVudDogJ2VuJyxcbiAgICBsb2NhbGVzOiB7IGVuIH0sXG4gICAgLy8gRGVmYXVsdCB0cmFuc2xhdG9yIGV4aXN0cyBpbiBsYW5nIHNlcnZpY2VcbiAgICB0OiB1bmRlZmluZWQgYXMgYW55LFxuICB9LFxuICBydGw6IGZhbHNlLFxuICB0aGVtZToge1xuICAgIGRhcms6IGZhbHNlLFxuICAgIGRlZmF1bHQ6ICdsaWdodCcsXG4gICAgZGlzYWJsZTogZmFsc2UsXG4gICAgb3B0aW9uczoge1xuICAgICAgY3NwTm9uY2U6IHVuZGVmaW5lZCxcbiAgICAgIGN1c3RvbVByb3BlcnRpZXM6IHVuZGVmaW5lZCxcbiAgICAgIG1pbmlmeVRoZW1lOiB1bmRlZmluZWQsXG4gICAgICB0aGVtZUNhY2hlOiB1bmRlZmluZWQsXG4gICAgICB2YXJpYXRpb25zOiB0cnVlLFxuICAgIH0sXG4gICAgdGhlbWVzOiB7XG4gICAgICBsaWdodDoge1xuICAgICAgICBwcmltYXJ5OiAnIzE5NzZEMicsXG4gICAgICAgIHNlY29uZGFyeTogJyM0MjQyNDInLFxuICAgICAgICBhY2NlbnQ6ICcjODJCMUZGJyxcbiAgICAgICAgZXJyb3I6ICcjRkY1MjUyJyxcbiAgICAgICAgaW5mbzogJyMyMTk2RjMnLFxuICAgICAgICBzdWNjZXNzOiAnIzRDQUY1MCcsXG4gICAgICAgIHdhcm5pbmc6ICcjRkI4QzAwJyxcbiAgICAgIH0sXG4gICAgICBkYXJrOiB7XG4gICAgICAgIHByaW1hcnk6ICcjMjE5NkYzJyxcbiAgICAgICAgc2Vjb25kYXJ5OiAnIzQyNDI0MicsXG4gICAgICAgIGFjY2VudDogJyNGRjQwODEnLFxuICAgICAgICBlcnJvcjogJyNGRjUyNTInLFxuICAgICAgICBpbmZvOiAnIzIxOTZGMycsXG4gICAgICAgIHN1Y2Nlc3M6ICcjNENBRjUwJyxcbiAgICAgICAgd2FybmluZzogJyNGQjhDMDAnLFxuICAgICAgfSxcbiAgICB9LFxuICB9LFxufVxuIiwiLy8gUHJlc2V0XG5pbXBvcnQgeyBwcmVzZXQgYXMgUHJlc2V0IH0gZnJvbSAnLi4vLi4vcHJlc2V0cy9kZWZhdWx0J1xuXG4vLyBVdGlsaXRpZXNcbmltcG9ydCB7IGNvbnNvbGVXYXJuIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuaW1wb3J0IHsgbWVyZ2VEZWVwIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IFZ1ZXRpZnkgZnJvbSAndnVldGlmeS90eXBlcydcbmltcG9ydCB7IFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlJ1xuaW1wb3J0IHtcbiAgVXNlclZ1ZXRpZnlQcmVzZXQsXG4gIFZ1ZXRpZnlQcmVzZXQsXG59IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvcHJlc2V0cydcblxuZXhwb3J0IGNsYXNzIFByZXNldHMgZXh0ZW5kcyBTZXJ2aWNlIHtcbiAgc3RhdGljIHByb3BlcnR5OiAncHJlc2V0cycgPSAncHJlc2V0cydcblxuICBjb25zdHJ1Y3RvciAoXG4gICAgcGFyZW50UHJlc2V0OiBQYXJ0aWFsPFVzZXJWdWV0aWZ5UHJlc2V0PixcbiAgICBwYXJlbnQ6IFZ1ZXRpZnksXG4gICkge1xuICAgIHN1cGVyKClcblxuICAgIC8vIFRoZSBkZWZhdWx0IHByZXNldFxuICAgIGNvbnN0IGRlZmF1bHRQcmVzZXQgPSBtZXJnZURlZXAoe30sIFByZXNldClcbiAgICAvLyBUaGUgdXNlciBwcm92aWRlZCBwcmVzZXRcbiAgICBjb25zdCB7IHVzZXJQcmVzZXQgfSA9IHBhcmVudFxuICAgIC8vIFRoZSB1c2VyIHByb3ZpZGVkIGdsb2JhbCBwcmVzZXRcbiAgICBjb25zdCB7XG4gICAgICBwcmVzZXQ6IGdsb2JhbFByZXNldCA9IHt9LFxuICAgICAgLi4ucHJlc2V0XG4gICAgfSA9IHVzZXJQcmVzZXRcblxuICAgIGlmIChnbG9iYWxQcmVzZXQucHJlc2V0ICE9IG51bGwpIHtcbiAgICAgIGNvbnNvbGVXYXJuKCdHbG9iYWwgcHJlc2V0cyBkbyBub3Qgc3VwcG9ydCB0aGUgKipwcmVzZXQqKiBvcHRpb24sIGl0IGNhbiBiZSBzYWZlbHkgb21pdHRlZCcpXG4gICAgfVxuXG4gICAgcGFyZW50LnByZXNldCA9IG1lcmdlRGVlcChcbiAgICAgIG1lcmdlRGVlcChkZWZhdWx0UHJlc2V0LCBnbG9iYWxQcmVzZXQpLFxuICAgICAgcHJlc2V0XG4gICAgKSBhcyBWdWV0aWZ5UHJlc2V0XG4gIH1cbn1cbiIsIi8vIEV4dGVuc2lvbnNcbmltcG9ydCB7IFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVGFyZ2V0UHJvcFZhbHVlcywgVGFyZ2V0UHJvcCwgQXBwbGljYXRpb24gYXMgSUFwcGxpY2F0aW9uIH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9hcHBsaWNhdGlvbidcblxuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uIGV4dGVuZHMgU2VydmljZSBpbXBsZW1lbnRzIElBcHBsaWNhdGlvbiB7XG4gIHN0YXRpYyBwcm9wZXJ0eTogJ2FwcGxpY2F0aW9uJyA9ICdhcHBsaWNhdGlvbidcblxuICBiYXIgPSAwXG5cbiAgdG9wID0gMFxuXG4gIGxlZnQgPSAwXG5cbiAgaW5zZXRGb290ZXIgPSAwXG5cbiAgcmlnaHQgPSAwXG5cbiAgYm90dG9tID0gMFxuXG4gIGZvb3RlciA9IDBcblxuICBhcHBsaWNhdGlvbjogRGljdGlvbmFyeTxUYXJnZXRQcm9wVmFsdWVzPiA9IHtcbiAgICBiYXI6IHt9LFxuICAgIHRvcDoge30sXG4gICAgbGVmdDoge30sXG4gICAgaW5zZXRGb290ZXI6IHt9LFxuICAgIHJpZ2h0OiB7fSxcbiAgICBib3R0b206IHt9LFxuICAgIGZvb3Rlcjoge30sXG4gIH1cblxuICByZWdpc3RlciAoXG4gICAgdWlkOiBudW1iZXIsXG4gICAgbG9jYXRpb246IFRhcmdldFByb3AsXG4gICAgc2l6ZTogbnVtYmVyXG4gICkge1xuICAgIHRoaXMuYXBwbGljYXRpb25bbG9jYXRpb25dW3VpZF0gPSBzaXplXG5cbiAgICB0aGlzLnVwZGF0ZShsb2NhdGlvbilcbiAgfVxuXG4gIHVucmVnaXN0ZXIgKHVpZDogbnVtYmVyLCBsb2NhdGlvbjogVGFyZ2V0UHJvcCkge1xuICAgIGlmICh0aGlzLmFwcGxpY2F0aW9uW2xvY2F0aW9uXVt1aWRdID09IG51bGwpIHJldHVyblxuXG4gICAgZGVsZXRlIHRoaXMuYXBwbGljYXRpb25bbG9jYXRpb25dW3VpZF1cbiAgICB0aGlzLnVwZGF0ZShsb2NhdGlvbilcbiAgfVxuXG4gIHVwZGF0ZSAobG9jYXRpb246IFRhcmdldFByb3ApIHtcbiAgICB0aGlzW2xvY2F0aW9uXSA9IE9iamVjdC52YWx1ZXModGhpcy5hcHBsaWNhdGlvbltsb2NhdGlvbl0pXG4gICAgICAucmVkdWNlKChhY2M6IG51bWJlciwgY3VyOiBudW1iZXIpOiBudW1iZXIgPT4gKGFjYyArIGN1ciksIDApXG4gIH1cbn1cbiIsIi8vIEV4dGVuc2lvbnNcbmltcG9ydCB7IFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVnVldGlmeVByZXNldCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvcHJlc2V0cydcbmltcG9ydCB7IEJyZWFrcG9pbnQgYXMgSUJyZWFrcG9pbnQgfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL2JyZWFrcG9pbnQnXG5cbmV4cG9ydCBjbGFzcyBCcmVha3BvaW50IGV4dGVuZHMgU2VydmljZSBpbXBsZW1lbnRzIElCcmVha3BvaW50IHtcbiAgcHVibGljIHN0YXRpYyBwcm9wZXJ0eTogJ2JyZWFrcG9pbnQnID0gJ2JyZWFrcG9pbnQnXG5cbiAgLy8gUHVibGljXG4gIHB1YmxpYyB4cyA9IGZhbHNlXG5cbiAgcHVibGljIHNtID0gZmFsc2VcblxuICBwdWJsaWMgbWQgPSBmYWxzZVxuXG4gIHB1YmxpYyBsZyA9IGZhbHNlXG5cbiAgcHVibGljIHhsID0gZmFsc2VcblxuICBwdWJsaWMgeHNPbmx5ID0gZmFsc2VcblxuICBwdWJsaWMgc21Pbmx5ID0gZmFsc2VcblxuICBwdWJsaWMgc21BbmREb3duID0gZmFsc2VcblxuICBwdWJsaWMgc21BbmRVcCA9IGZhbHNlXG5cbiAgcHVibGljIG1kT25seSA9IGZhbHNlXG5cbiAgcHVibGljIG1kQW5kRG93biA9IGZhbHNlXG5cbiAgcHVibGljIG1kQW5kVXAgPSBmYWxzZVxuXG4gIHB1YmxpYyBsZ09ubHkgPSBmYWxzZVxuXG4gIHB1YmxpYyBsZ0FuZERvd24gPSBmYWxzZVxuXG4gIHB1YmxpYyBsZ0FuZFVwID0gZmFsc2VcblxuICBwdWJsaWMgeGxPbmx5ID0gZmFsc2VcblxuICAvLyBWYWx1ZSBpcyB4cyB0byBtYXRjaCB2Mi54IGZ1bmN0aW9uYWxpdHlcbiAgcHVibGljIG5hbWU6IElCcmVha3BvaW50WyduYW1lJ10gPSAneHMnXG5cbiAgcHVibGljIGhlaWdodCA9IDBcblxuICBwdWJsaWMgd2lkdGggPSAwXG5cbiAgLy8gVE9ETzogQWRkIGZ1bmN0aW9uYWxpdHkgdG8gZGV0ZWN0IHRoaXMgZHluYW1pY2FsbHkgaW4gdjNcbiAgLy8gVmFsdWUgaXMgdHJ1ZSB0byBtYXRjaCB2Mi54IGZ1bmN0aW9uYWxpdHlcbiAgcHVibGljIG1vYmlsZSA9IHRydWVcblxuICBwdWJsaWMgbW9iaWxlQnJlYWtwb2ludDogSUJyZWFrcG9pbnRbJ21vYmlsZUJyZWFrcG9pbnQnXVxuXG4gIHB1YmxpYyB0aHJlc2hvbGRzOiBJQnJlYWtwb2ludFsndGhyZXNob2xkcyddXG5cbiAgcHVibGljIHNjcm9sbEJhcldpZHRoOiBJQnJlYWtwb2ludFsnc2Nyb2xsQmFyV2lkdGgnXVxuXG4gIHByaXZhdGUgcmVzaXplVGltZW91dCA9IDBcblxuICBjb25zdHJ1Y3RvciAocHJlc2V0OiBWdWV0aWZ5UHJlc2V0KSB7XG4gICAgc3VwZXIoKVxuXG4gICAgY29uc3Qge1xuICAgICAgbW9iaWxlQnJlYWtwb2ludCxcbiAgICAgIHNjcm9sbEJhcldpZHRoLFxuICAgICAgdGhyZXNob2xkcyxcbiAgICB9ID0gcHJlc2V0W0JyZWFrcG9pbnQucHJvcGVydHldXG5cbiAgICB0aGlzLm1vYmlsZUJyZWFrcG9pbnQgPSBtb2JpbGVCcmVha3BvaW50XG4gICAgdGhpcy5zY3JvbGxCYXJXaWR0aCA9IHNjcm9sbEJhcldpZHRoXG4gICAgdGhpcy50aHJlc2hvbGRzID0gdGhyZXNob2xkc1xuICB9XG5cbiAgcHVibGljIGluaXQgKCkge1xuICAgIHRoaXMudXBkYXRlKClcblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykgcmV0dXJuXG5cbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdyZXNpemUnLFxuICAgICAgdGhpcy5vblJlc2l6ZS5iaW5kKHRoaXMpLFxuICAgICAgeyBwYXNzaXZlOiB0cnVlIH1cbiAgICApXG4gIH1cblxuICAvKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LXN0YXRlbWVudHMgKi9cbiAgcHVibGljIHVwZGF0ZSAoc3NyID0gZmFsc2UpIHtcbiAgICBjb25zdCBoZWlnaHQgPSBzc3IgPyAwIDogdGhpcy5nZXRDbGllbnRIZWlnaHQoKVxuICAgIGNvbnN0IHdpZHRoID0gc3NyID8gMCA6IHRoaXMuZ2V0Q2xpZW50V2lkdGgoKVxuXG4gICAgY29uc3QgeHMgPSB3aWR0aCA8IHRoaXMudGhyZXNob2xkcy54c1xuICAgIGNvbnN0IHNtID0gd2lkdGggPCB0aGlzLnRocmVzaG9sZHMuc20gJiYgIXhzXG4gICAgY29uc3QgbWQgPSB3aWR0aCA8ICh0aGlzLnRocmVzaG9sZHMubWQgLSB0aGlzLnNjcm9sbEJhcldpZHRoKSAmJiAhKHNtIHx8IHhzKVxuICAgIGNvbnN0IGxnID0gd2lkdGggPCAodGhpcy50aHJlc2hvbGRzLmxnIC0gdGhpcy5zY3JvbGxCYXJXaWR0aCkgJiYgIShtZCB8fCBzbSB8fCB4cylcbiAgICBjb25zdCB4bCA9IHdpZHRoID49ICh0aGlzLnRocmVzaG9sZHMubGcgLSB0aGlzLnNjcm9sbEJhcldpZHRoKVxuXG4gICAgdGhpcy5oZWlnaHQgPSBoZWlnaHRcbiAgICB0aGlzLndpZHRoID0gd2lkdGhcblxuICAgIHRoaXMueHMgPSB4c1xuICAgIHRoaXMuc20gPSBzbVxuICAgIHRoaXMubWQgPSBtZFxuICAgIHRoaXMubGcgPSBsZ1xuICAgIHRoaXMueGwgPSB4bFxuXG4gICAgdGhpcy54c09ubHkgPSB4c1xuICAgIHRoaXMuc21Pbmx5ID0gc21cbiAgICB0aGlzLnNtQW5kRG93biA9ICh4cyB8fCBzbSkgJiYgIShtZCB8fCBsZyB8fCB4bClcbiAgICB0aGlzLnNtQW5kVXAgPSAheHMgJiYgKHNtIHx8IG1kIHx8IGxnIHx8IHhsKVxuICAgIHRoaXMubWRPbmx5ID0gbWRcbiAgICB0aGlzLm1kQW5kRG93biA9ICh4cyB8fCBzbSB8fCBtZCkgJiYgIShsZyB8fCB4bClcbiAgICB0aGlzLm1kQW5kVXAgPSAhKHhzIHx8IHNtKSAmJiAobWQgfHwgbGcgfHwgeGwpXG4gICAgdGhpcy5sZ09ubHkgPSBsZ1xuICAgIHRoaXMubGdBbmREb3duID0gKHhzIHx8IHNtIHx8IG1kIHx8IGxnKSAmJiAheGxcbiAgICB0aGlzLmxnQW5kVXAgPSAhKHhzIHx8IHNtIHx8IG1kKSAmJiAobGcgfHwgeGwpXG4gICAgdGhpcy54bE9ubHkgPSB4bFxuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlICh4cyk6XG4gICAgICAgIHRoaXMubmFtZSA9ICd4cydcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgKHNtKTpcbiAgICAgICAgdGhpcy5uYW1lID0gJ3NtJ1xuICAgICAgICBicmVha1xuICAgICAgY2FzZSAobWQpOlxuICAgICAgICB0aGlzLm5hbWUgPSAnbWQnXG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlIChsZyk6XG4gICAgICAgIHRoaXMubmFtZSA9ICdsZydcbiAgICAgICAgYnJlYWtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRoaXMubmFtZSA9ICd4bCdcbiAgICAgICAgYnJlYWtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHRoaXMubW9iaWxlQnJlYWtwb2ludCA9PT0gJ251bWJlcicpIHtcbiAgICAgIHRoaXMubW9iaWxlID0gd2lkdGggPCBwYXJzZUludCh0aGlzLm1vYmlsZUJyZWFrcG9pbnQsIDEwKVxuXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBicmVha3BvaW50cyA9IHtcbiAgICAgIHhzOiAwLFxuICAgICAgc206IDEsXG4gICAgICBtZDogMixcbiAgICAgIGxnOiAzLFxuICAgICAgeGw6IDQsXG4gICAgfSBhcyBjb25zdFxuXG4gICAgY29uc3QgY3VycmVudCA9IGJyZWFrcG9pbnRzW3RoaXMubmFtZV1cbiAgICBjb25zdCBtYXggPSBicmVha3BvaW50c1t0aGlzLm1vYmlsZUJyZWFrcG9pbnRdXG5cbiAgICB0aGlzLm1vYmlsZSA9IGN1cnJlbnQgPD0gbWF4XG4gIH1cblxuICBwcml2YXRlIG9uUmVzaXplICgpIHtcbiAgICBjbGVhclRpbWVvdXQodGhpcy5yZXNpemVUaW1lb3V0KVxuXG4gICAgLy8gQWRkZWQgZGVib3VuY2UgdG8gbWF0Y2ggd2hhdFxuICAgIC8vIHYtcmVzaXplIHVzZWQgdG8gZG8gYnV0IHdhc1xuICAgIC8vIHJlbW92ZWQgZHVlIHRvIGEgbWVtb3J5IGxlYWtcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdnVldGlmeWpzL3Z1ZXRpZnkvcHVsbC8yOTk3XG4gICAgdGhpcy5yZXNpemVUaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQodGhpcy51cGRhdGUuYmluZCh0aGlzKSwgMjAwKVxuICB9XG5cbiAgLy8gQ3Jvc3MtYnJvd3NlciBzdXBwb3J0IGFzIGRlc2NyaWJlZCBpbjpcbiAgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTI0ODA4MVxuICBwcml2YXRlIGdldENsaWVudFdpZHRoICgpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAodHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJykgcmV0dXJuIDAgLy8gU1NSXG4gICAgcmV0dXJuIE1hdGgubWF4KFxuICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50IS5jbGllbnRXaWR0aCxcbiAgICAgIHdpbmRvdy5pbm5lcldpZHRoIHx8IDBcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGdldENsaWVudEhlaWdodCAoKSB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiAwIC8vIFNTUlxuICAgIHJldHVybiBNYXRoLm1heChcbiAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCEuY2xpZW50SGVpZ2h0LFxuICAgICAgd2luZG93LmlubmVySGVpZ2h0IHx8IDBcbiAgICApXG4gIH1cbn1cbiIsImltcG9ydCB7IFZ1ZXRpZnlJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5cbmNvbnN0IGljb25zOiBWdWV0aWZ5SWNvbnMgPSB7XG4gIGNvbXBsZXRlOiAnTTIxLDdMOSwxOUwzLjUsMTMuNUw0LjkxLDEyLjA5TDksMTYuMTdMMTkuNTksNS41OUwyMSw3WicsXG4gIGNhbmNlbDogJ00xMiwyQzE3LjUzLDIgMjIsNi40NyAyMiwxMkMyMiwxNy41MyAxNy41MywyMiAxMiwyMkM2LjQ3LDIyIDIsMTcuNTMgMiwxMkMyLDYuNDcgNi40NywyIDEyLDJNMTUuNTksN0wxMiwxMC41OUw4LjQxLDdMNyw4LjQxTDEwLjU5LDEyTDcsMTUuNTlMOC40MSwxN0wxMiwxMy40MUwxNS41OSwxN0wxNywxNS41OUwxMy40MSwxMkwxNyw4LjQxTDE1LjU5LDdaJyxcbiAgY2xvc2U6ICdNMTksNi40MUwxNy41OSw1TDEyLDEwLjU5TDYuNDEsNUw1LDYuNDFMMTAuNTksMTJMNSwxNy41OUw2LjQxLDE5TDEyLDEzLjQxTDE3LjU5LDE5TDE5LDE3LjU5TDEzLjQxLDEyTDE5LDYuNDFaJyxcbiAgZGVsZXRlOiAnTTEyLDJDMTcuNTMsMiAyMiw2LjQ3IDIyLDEyQzIyLDE3LjUzIDE3LjUzLDIyIDEyLDIyQzYuNDcsMjIgMiwxNy41MyAyLDEyQzIsNi40NyA2LjQ3LDIgMTIsMk0xNS41OSw3TDEyLDEwLjU5TDguNDEsN0w3LDguNDFMMTAuNTksMTJMNywxNS41OUw4LjQxLDE3TDEyLDEzLjQxTDE1LjU5LDE3TDE3LDE1LjU5TDEzLjQxLDEyTDE3LDguNDFMMTUuNTksN1onLCAvLyBkZWxldGUgKGUuZy4gdi1jaGlwIGNsb3NlKVxuICBjbGVhcjogJ00xMiwyQzE3LjUzLDIgMjIsNi40NyAyMiwxMkMyMiwxNy41MyAxNy41MywyMiAxMiwyMkM2LjQ3LDIyIDIsMTcuNTMgMiwxMkMyLDYuNDcgNi40NywyIDEyLDJNMTUuNTksN0wxMiwxMC41OUw4LjQxLDdMNyw4LjQxTDEwLjU5LDEyTDcsMTUuNTlMOC40MSwxN0wxMiwxMy40MUwxNS41OSwxN0wxNywxNS41OUwxMy40MSwxMkwxNyw4LjQxTDE1LjU5LDdaJyxcbiAgc3VjY2VzczogJ00xMiAyQzYuNSAyIDIgNi41IDIgMTJTNi41IDIyIDEyIDIyIDIyIDE3LjUgMjIgMTIgMTcuNSAyIDEyIDJNMTAgMTdMNSAxMkw2LjQxIDEwLjU5TDEwIDE0LjE3TDE3LjU5IDYuNThMMTkgOEwxMCAxN1onLFxuICBpbmZvOiAnTTEzLDlIMTFWN0gxM00xMywxN0gxMVYxMUgxM00xMiwyQzYuNDgsMiAyLDYuNDggMiwxMkMyLDE3LjUyIDYuNDgsMjIgMTIsMjJDMTcuNTIsMjIgMjIsMTcuNTIgMjIsMTJDMjIsNi40OCAxNy41MiwyIDEyLDJaTTEzLDlIMTFWN0gxM00xMywxN0gxMVYxMUgxM00xMiwyQTEwLDEwIDAgMCwwIDIsMTJBMTAsMTAgMCAwLDAgMTIsMjJBMTAsMTAgMCAwLDAgMjIsMTJBMTAsMTAgMCAwLDAgMTIsMlonLFxuICB3YXJuaW5nOiAnTTEzLDEzSDExVjdIMTNNMTMsMTdIMTFWMTVIMTNNMTIsMkExMCwxMCAwIDAsMCAyLDEyQTEwLDEwIDAgMCwwIDEyLDIyQTEwLDEwIDAgMCwwIDIyLDEyQTEwLDEwIDAgMCwwIDEyLDJaJyxcbiAgZXJyb3I6ICdNMTIsMkMxNy41MywyIDIyLDYuNDcgMjIsMTJDMjIsMTcuNTMgMTcuNTMsMjIgMTIsMjJDNi40NywyMiAyLDE3LjUzIDIsMTJDMiw2LjQ3IDYuNDcsMiAxMiwyTTE1LjU5LDdMMTIsMTAuNTlMOC40MSw3TDcsOC40MUwxMC41OSwxMkw3LDE1LjU5TDguNDEsMTdMMTIsMTMuNDFMMTUuNTksMTdMMTcsMTUuNTlMMTMuNDEsMTJMMTcsOC40MUwxNS41OSw3WicsXG4gIHByZXY6ICdNMTUuNDEsMTYuNThMMTAuODMsMTJMMTUuNDEsNy40MUwxNCw2TDgsMTJMMTQsMThMMTUuNDEsMTYuNThaJyxcbiAgbmV4dDogJ004LjU5LDE2LjU4TDEzLjE3LDEyTDguNTksNy40MUwxMCw2TDE2LDEyTDEwLDE4TDguNTksMTYuNThaJyxcbiAgY2hlY2tib3hPbjogJ00xMCwxN0w1LDEyTDYuNDEsMTAuNThMMTAsMTQuMTdMMTcuNTksNi41OEwxOSw4TTE5LDNINUMzLjg5LDMgMywzLjg5IDMsNVYxOUMzLDIwLjEgMy45LDIxIDUsMjFIMTlDMjAuMSwyMSAyMSwyMC4xIDIxLDE5VjVDMjEsMy44OSAyMC4xLDMgMTksM1onLFxuICBjaGVja2JveE9mZjogJ00xOSwzSDVDMy44OSwzIDMsMy44OSAzLDVWMTlDMywyMC4xIDMuOSwyMSA1LDIxSDE5QzIwLjEsMjEgMjEsMjAuMSAyMSwxOVY1QzIxLDMuODkgMjAuMSwzIDE5LDNNMTksNVYxOUg1VjVIMTlaJyxcbiAgY2hlY2tib3hJbmRldGVybWluYXRlOiAnTTE3LDEzSDdWMTFIMTdNMTksM0g1QzMuODksMyAzLDMuODkgMyw1VjE5QzMsMjAuMSAzLjksMjEgNSwyMUgxOUMyMC4xLDIxIDIxLDIwLjEgMjEsMTlWNUMyMSwzLjg5IDIwLjEsMyAxOSwzWicsXG4gIGRlbGltaXRlcjogJ00xMiwyQzYuNDgsMiAyLDYuNDggMiwxMkMyLDE3LjUyIDYuNDgsMjIgMTIsMjJDMTcuNTIsMjIgMjIsMTcuNTIgMjIsMTJDMjIsNi40OCAxNy41MiwyIDEyLDJaJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdNMTMsMjBIMTFWOEw1LjUsMTMuNUw0LjA4LDEyLjA4TDEyLDQuMTZMMTkuOTIsMTIuMDhMMTguNSwxMy41TDEzLDhWMjBaJyxcbiAgZXhwYW5kOiAnTTcuNDEsOC41OEwxMiwxMy4xN0wxNi41OSw4LjU4TDE4LDEwTDEyLDE2TDYsMTBMNy40MSw4LjU4WicsXG4gIG1lbnU6ICdNMyw2SDIxVjhIM1Y2TTMsMTFIMjFWMTNIM1YxMU0zLDE2SDIxVjE4SDNWMTZaJyxcbiAgc3ViZ3JvdXA6ICdNNywxMEwxMiwxNUwxNywxMEg3WicsXG4gIGRyb3Bkb3duOiAnTTcsMTBMMTIsMTVMMTcsMTBIN1onLFxuICByYWRpb09uOiAnTTEyLDIwQzcuNTgsMjAgNCwxNi40MiA0LDEyQzQsNy41OCA3LjU4LDQgMTIsNEMxNi40Miw0IDIwLDcuNTggMjAsMTJDMjAsMTYuNDIgMTYuNDIsMjAgMTIsMjBNMTIsMkM2LjQ4LDIgMiw2LjQ4IDIsMTJDMiwxNy41MiA2LjQ4LDIyIDEyLDIyQzE3LjUyLDIyIDIyLDE3LjUyIDIyLDEyQzIyLDYuNDggMTcuNTIsMiAxMiwyTTEyLDdDOS4yNCw3IDcsOS4yNCA3LDEyQzcsMTQuNzYgOS4yNCwxNyAxMiwxN0MxNC43NiwxNyAxNywxNC43NiAxNywxMkMxNyw5LjI0IDE0Ljc2LDcgMTIsN1onLFxuICByYWRpb09mZjogJ00xMiwyMEM3LjU4LDIwIDQsMTYuNDIgNCwxMkM0LDcuNTggNy41OCw0IDEyLDRDMTYuNDIsNCAyMCw3LjU4IDIwLDEyQzIwLDE2LjQyIDE2LjQyLDIwIDEyLDIwTTEyLDJDNi40OCwyIDIsNi40OCAyLDEyQzIsMTcuNTIgNi40OCwyMiAxMiwyMkMxNy41MiwyMiAyMiwxNy41MiAyMiwxMkMyMiw2LjQ4IDE3LjUyLDIgMTIsMlonLFxuICBlZGl0OiAnTTIwLjcxLDcuMDRDMjEuMSw2LjY1IDIxLjEsNiAyMC43MSw1LjYzTDE4LjM3LDMuMjlDMTgsMi45IDE3LjM1LDIuOSAxNi45NiwzLjI5TDE1LjEyLDUuMTJMMTguODcsOC44N00zLDE3LjI1VjIxSDYuNzVMMTcuODEsOS45M0wxNC4wNiw2LjE4TDMsMTcuMjVaJyxcbiAgcmF0aW5nRW1wdHk6ICdNMTIsMTUuMzlMOC4yNCwxNy42Nkw5LjIzLDEzLjM4TDUuOTEsMTAuNUwxMC4yOSwxMC4xM0wxMiw2LjA5TDEzLjcxLDEwLjEzTDE4LjA5LDEwLjVMMTQuNzcsMTMuMzhMMTUuNzYsMTcuNjZNMjIsOS4yNEwxNC44MSw4LjYzTDEyLDJMOS4xOSw4LjYzTDIsOS4yNEw3LjQ1LDEzLjk3TDUuODIsMjFMMTIsMTcuMjdMMTguMTgsMjFMMTYuNTQsMTMuOTdMMjIsOS4yNFonLFxuICByYXRpbmdGdWxsOiAnTTEyLDE3LjI3TDE4LjE4LDIxTDE2LjU0LDEzLjk3TDIyLDkuMjRMMTQuODEsOC42MkwxMiwyTDkuMTksOC42MkwyLDkuMjRMNy40NSwxMy45N0w1LjgyLDIxTDEyLDE3LjI3WicsXG4gIHJhdGluZ0hhbGY6ICdNMTIsMTUuNFY2LjFMMTMuNzEsMTAuMTNMMTguMDksMTAuNUwxNC43NywxMy4zOUwxNS43NiwxNy42N00yMiw5LjI0TDE0LjgxLDguNjNMMTIsMkw5LjE5LDguNjNMMiw5LjI0TDcuNDUsMTMuOTdMNS44MiwyMUwxMiwxNy4yN0wxOC4xOCwyMUwxNi41NCwxMy45N0wyMiw5LjI0WicsXG4gIGxvYWRpbmc6ICdNMTksOEwxNSwxMkgxOEMxOCwxNS4zMSAxNS4zMSwxOCAxMiwxOEMxMSwxOCAxMC4wMywxNy43NSA5LjIsMTcuM0w3Ljc0LDE4Ljc2QzguOTcsMTkuNTQgMTAuNDMsMjAgMTIsMjBDMTYuNDIsMjAgMjAsMTYuNDIgMjAsMTJIMjNNNiwxMkM2LDguNjkgOC42OSw2IDEyLDZDMTMsNiAxMy45Nyw2LjI1IDE0LjgsNi43TDE2LjI2LDUuMjRDMTUuMDMsNC40NiAxMy41Nyw0IDEyLDRDNy41OCw0IDQsNy41OCA0LDEySDFMNSwxNkw5LDEyJyxcbiAgZmlyc3Q6ICdNMTguNDEsMTYuNTlMMTMuODIsMTJMMTguNDEsNy40MUwxNyw2TDExLDEyTDE3LDE4TDE4LjQxLDE2LjU5TTYsNkg4VjE4SDZWNlonLFxuICBsYXN0OiAnTTUuNTksNy40MUwxMC4xOCwxMkw1LjU5LDE2LjU5TDcsMThMMTMsMTJMNyw2TDUuNTksNy40MU0xNiw2SDE4VjE4SDE2VjZaJyxcbiAgdW5mb2xkOiAnTTEyLDE4LjE3TDguODMsMTVMNy40MiwxNi40MUwxMiwyMUwxNi41OSwxNi40MUwxNS4xNywxNU0xMiw1LjgzTDE1LjE3LDlMMTYuNTgsNy41OUwxMiwzTDcuNDEsNy41OUw4LjgzLDlMMTIsNS44M1onLFxuICBmaWxlOiAnTTE2LjUsNlYxNy41QzE2LjUsMTkuNzEgMTQuNzEsMjEuNSAxMi41LDIxLjVDMTAuMjksMjEuNSA4LjUsMTkuNzEgOC41LDE3LjVWNUM4LjUsMy42MiA5LjYyLDIuNSAxMSwyLjVDMTIuMzgsMi41IDEzLjUsMy42MiAxMy41LDVWMTUuNUMxMy41LDE2LjA1IDEzLjA1LDE2LjUgMTIuNSwxNi41QzExLjk1LDE2LjUgMTEuNSwxNi4wNSAxMS41LDE1LjVWNkgxMFYxNS41QzEwLDE2Ljg4IDExLjEyLDE4IDEyLjUsMThDMTMuODgsMTggMTUsMTYuODggMTUsMTUuNVY1QzE1LDIuNzkgMTMuMjEsMSAxMSwxQzguNzksMSA3LDIuNzkgNyw1VjE3LjVDNywyMC41NCA5LjQ2LDIzIDEyLjUsMjNDMTUuNTQsMjMgMTgsMjAuNTQgMTgsMTcuNVY2SDE2LjVaJyxcbiAgcGx1czogJ00xOSwxM0gxM1YxOUgxMVYxM0g1VjExSDExVjVIMTNWMTFIMTlWMTNaJyxcbiAgbWludXM6ICdNMTksMTNINVYxMUgxOVYxM1onLFxufVxuXG5leHBvcnQgZGVmYXVsdCBpY29uc1xuIiwiaW1wb3J0IHsgVnVldGlmeUljb25zIH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9pY29ucydcblxuY29uc3QgaWNvbnM6IFZ1ZXRpZnlJY29ucyA9IHtcbiAgY29tcGxldGU6ICdjaGVjaycsXG4gIGNhbmNlbDogJ2NhbmNlbCcsXG4gIGNsb3NlOiAnY2xvc2UnLFxuICBkZWxldGU6ICdjYW5jZWwnLCAvLyBkZWxldGUgKGUuZy4gdi1jaGlwIGNsb3NlKVxuICBjbGVhcjogJ2NsZWFyJyxcbiAgc3VjY2VzczogJ2NoZWNrX2NpcmNsZScsXG4gIGluZm86ICdpbmZvJyxcbiAgd2FybmluZzogJ3ByaW9yaXR5X2hpZ2gnLFxuICBlcnJvcjogJ3dhcm5pbmcnLFxuICBwcmV2OiAnY2hldnJvbl9sZWZ0JyxcbiAgbmV4dDogJ2NoZXZyb25fcmlnaHQnLFxuICBjaGVja2JveE9uOiAnY2hlY2tfYm94JyxcbiAgY2hlY2tib3hPZmY6ICdjaGVja19ib3hfb3V0bGluZV9ibGFuaycsXG4gIGNoZWNrYm94SW5kZXRlcm1pbmF0ZTogJ2luZGV0ZXJtaW5hdGVfY2hlY2tfYm94JyxcbiAgZGVsaW1pdGVyOiAnZmliZXJfbWFudWFsX3JlY29yZCcsIC8vIGZvciBjYXJvdXNlbFxuICBzb3J0OiAnYXJyb3dfdXB3YXJkJyxcbiAgZXhwYW5kOiAna2V5Ym9hcmRfYXJyb3dfZG93bicsXG4gIG1lbnU6ICdtZW51JyxcbiAgc3ViZ3JvdXA6ICdhcnJvd19kcm9wX2Rvd24nLFxuICBkcm9wZG93bjogJ2Fycm93X2Ryb3BfZG93bicsXG4gIHJhZGlvT246ICdyYWRpb19idXR0b25fY2hlY2tlZCcsXG4gIHJhZGlvT2ZmOiAncmFkaW9fYnV0dG9uX3VuY2hlY2tlZCcsXG4gIGVkaXQ6ICdlZGl0JyxcbiAgcmF0aW5nRW1wdHk6ICdzdGFyX2JvcmRlcicsXG4gIHJhdGluZ0Z1bGw6ICdzdGFyJyxcbiAgcmF0aW5nSGFsZjogJ3N0YXJfaGFsZicsXG4gIGxvYWRpbmc6ICdjYWNoZWQnLFxuICBmaXJzdDogJ2ZpcnN0X3BhZ2UnLFxuICBsYXN0OiAnbGFzdF9wYWdlJyxcbiAgdW5mb2xkOiAndW5mb2xkX21vcmUnLFxuICBmaWxlOiAnYXR0YWNoX2ZpbGUnLFxuICBwbHVzOiAnYWRkJyxcbiAgbWludXM6ICdyZW1vdmUnLFxufVxuXG5leHBvcnQgZGVmYXVsdCBpY29uc1xuIiwiaW1wb3J0IHsgVnVldGlmeUljb25zIH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9pY29ucydcblxuY29uc3QgaWNvbnM6IFZ1ZXRpZnlJY29ucyA9IHtcbiAgY29tcGxldGU6ICdtZGktY2hlY2snLFxuICBjYW5jZWw6ICdtZGktY2xvc2UtY2lyY2xlJyxcbiAgY2xvc2U6ICdtZGktY2xvc2UnLFxuICBkZWxldGU6ICdtZGktY2xvc2UtY2lyY2xlJywgLy8gZGVsZXRlIChlLmcuIHYtY2hpcCBjbG9zZSlcbiAgY2xlYXI6ICdtZGktY2xvc2UnLFxuICBzdWNjZXNzOiAnbWRpLWNoZWNrLWNpcmNsZScsXG4gIGluZm86ICdtZGktaW5mb3JtYXRpb24nLFxuICB3YXJuaW5nOiAnbWRpLWV4Y2xhbWF0aW9uJyxcbiAgZXJyb3I6ICdtZGktYWxlcnQnLFxuICBwcmV2OiAnbWRpLWNoZXZyb24tbGVmdCcsXG4gIG5leHQ6ICdtZGktY2hldnJvbi1yaWdodCcsXG4gIGNoZWNrYm94T246ICdtZGktY2hlY2tib3gtbWFya2VkJyxcbiAgY2hlY2tib3hPZmY6ICdtZGktY2hlY2tib3gtYmxhbmstb3V0bGluZScsXG4gIGNoZWNrYm94SW5kZXRlcm1pbmF0ZTogJ21kaS1taW51cy1ib3gnLFxuICBkZWxpbWl0ZXI6ICdtZGktY2lyY2xlJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdtZGktYXJyb3ctdXAnLFxuICBleHBhbmQ6ICdtZGktY2hldnJvbi1kb3duJyxcbiAgbWVudTogJ21kaS1tZW51JyxcbiAgc3ViZ3JvdXA6ICdtZGktbWVudS1kb3duJyxcbiAgZHJvcGRvd246ICdtZGktbWVudS1kb3duJyxcbiAgcmFkaW9PbjogJ21kaS1yYWRpb2JveC1tYXJrZWQnLFxuICByYWRpb09mZjogJ21kaS1yYWRpb2JveC1ibGFuaycsXG4gIGVkaXQ6ICdtZGktcGVuY2lsJyxcbiAgcmF0aW5nRW1wdHk6ICdtZGktc3Rhci1vdXRsaW5lJyxcbiAgcmF0aW5nRnVsbDogJ21kaS1zdGFyJyxcbiAgcmF0aW5nSGFsZjogJ21kaS1zdGFyLWhhbGYtZnVsbCcsXG4gIGxvYWRpbmc6ICdtZGktY2FjaGVkJyxcbiAgZmlyc3Q6ICdtZGktcGFnZS1maXJzdCcsXG4gIGxhc3Q6ICdtZGktcGFnZS1sYXN0JyxcbiAgdW5mb2xkOiAnbWRpLXVuZm9sZC1tb3JlLWhvcml6b250YWwnLFxuICBmaWxlOiAnbWRpLXBhcGVyY2xpcCcsXG4gIHBsdXM6ICdtZGktcGx1cycsXG4gIG1pbnVzOiAnbWRpLW1pbnVzJyxcbn1cblxuZXhwb3J0IGRlZmF1bHQgaWNvbnNcbiIsImltcG9ydCB7IFZ1ZXRpZnlJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5cbmNvbnN0IGljb25zOiBWdWV0aWZ5SWNvbnMgPSB7XG4gIGNvbXBsZXRlOiAnZmFzIGZhLWNoZWNrJyxcbiAgY2FuY2VsOiAnZmFzIGZhLXRpbWVzLWNpcmNsZScsXG4gIGNsb3NlOiAnZmFzIGZhLXRpbWVzJyxcbiAgZGVsZXRlOiAnZmFzIGZhLXRpbWVzLWNpcmNsZScsIC8vIGRlbGV0ZSAoZS5nLiB2LWNoaXAgY2xvc2UpXG4gIGNsZWFyOiAnZmFzIGZhLXRpbWVzLWNpcmNsZScsIC8vIGRlbGV0ZSAoZS5nLiB2LWNoaXAgY2xvc2UpXG4gIHN1Y2Nlc3M6ICdmYXMgZmEtY2hlY2stY2lyY2xlJyxcbiAgaW5mbzogJ2ZhcyBmYS1pbmZvLWNpcmNsZScsXG4gIHdhcm5pbmc6ICdmYXMgZmEtZXhjbGFtYXRpb24nLFxuICBlcnJvcjogJ2ZhcyBmYS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gIHByZXY6ICdmYXMgZmEtY2hldnJvbi1sZWZ0JyxcbiAgbmV4dDogJ2ZhcyBmYS1jaGV2cm9uLXJpZ2h0JyxcbiAgY2hlY2tib3hPbjogJ2ZhcyBmYS1jaGVjay1zcXVhcmUnLFxuICBjaGVja2JveE9mZjogJ2ZhciBmYS1zcXVhcmUnLCAvLyBub3RlICdmYXInXG4gIGNoZWNrYm94SW5kZXRlcm1pbmF0ZTogJ2ZhcyBmYS1taW51cy1zcXVhcmUnLFxuICBkZWxpbWl0ZXI6ICdmYXMgZmEtY2lyY2xlJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdmYXMgZmEtc29ydC11cCcsXG4gIGV4cGFuZDogJ2ZhcyBmYS1jaGV2cm9uLWRvd24nLFxuICBtZW51OiAnZmFzIGZhLWJhcnMnLFxuICBzdWJncm91cDogJ2ZhcyBmYS1jYXJldC1kb3duJyxcbiAgZHJvcGRvd246ICdmYXMgZmEtY2FyZXQtZG93bicsXG4gIHJhZGlvT246ICdmYXIgZmEtZG90LWNpcmNsZScsXG4gIHJhZGlvT2ZmOiAnZmFyIGZhLWNpcmNsZScsXG4gIGVkaXQ6ICdmYXMgZmEtZWRpdCcsXG4gIHJhdGluZ0VtcHR5OiAnZmFyIGZhLXN0YXInLFxuICByYXRpbmdGdWxsOiAnZmFzIGZhLXN0YXInLFxuICByYXRpbmdIYWxmOiAnZmFzIGZhLXN0YXItaGFsZicsXG4gIGxvYWRpbmc6ICdmYXMgZmEtc3luYycsXG4gIGZpcnN0OiAnZmFzIGZhLXN0ZXAtYmFja3dhcmQnLFxuICBsYXN0OiAnZmFzIGZhLXN0ZXAtZm9yd2FyZCcsXG4gIHVuZm9sZDogJ2ZhcyBmYS1hcnJvd3MtYWx0LXYnLFxuICBmaWxlOiAnZmFzIGZhLXBhcGVyY2xpcCcsXG4gIHBsdXM6ICdmYXMgZmEtcGx1cycsXG4gIG1pbnVzOiAnZmFzIGZhLW1pbnVzJyxcbn1cblxuZXhwb3J0IGRlZmF1bHQgaWNvbnNcbiIsImltcG9ydCB7IFZ1ZXRpZnlJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5cbmNvbnN0IGljb25zOiBWdWV0aWZ5SWNvbnMgPSB7XG4gIGNvbXBsZXRlOiAnZmEgZmEtY2hlY2snLFxuICBjYW5jZWw6ICdmYSBmYS10aW1lcy1jaXJjbGUnLFxuICBjbG9zZTogJ2ZhIGZhLXRpbWVzJyxcbiAgZGVsZXRlOiAnZmEgZmEtdGltZXMtY2lyY2xlJywgLy8gZGVsZXRlIChlLmcuIHYtY2hpcCBjbG9zZSlcbiAgY2xlYXI6ICdmYSBmYS10aW1lcy1jaXJjbGUnLCAvLyBkZWxldGUgKGUuZy4gdi1jaGlwIGNsb3NlKVxuICBzdWNjZXNzOiAnZmEgZmEtY2hlY2stY2lyY2xlJyxcbiAgaW5mbzogJ2ZhIGZhLWluZm8tY2lyY2xlJyxcbiAgd2FybmluZzogJ2ZhIGZhLWV4Y2xhbWF0aW9uJyxcbiAgZXJyb3I6ICdmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gIHByZXY6ICdmYSBmYS1jaGV2cm9uLWxlZnQnLFxuICBuZXh0OiAnZmEgZmEtY2hldnJvbi1yaWdodCcsXG4gIGNoZWNrYm94T246ICdmYSBmYS1jaGVjay1zcXVhcmUnLFxuICBjaGVja2JveE9mZjogJ2ZhIGZhLXNxdWFyZS1vJyxcbiAgY2hlY2tib3hJbmRldGVybWluYXRlOiAnZmEgZmEtbWludXMtc3F1YXJlJyxcbiAgZGVsaW1pdGVyOiAnZmEgZmEtY2lyY2xlJywgLy8gZm9yIGNhcm91c2VsXG4gIHNvcnQ6ICdmYSBmYS1zb3J0LXVwJyxcbiAgZXhwYW5kOiAnZmEgZmEtY2hldnJvbi1kb3duJyxcbiAgbWVudTogJ2ZhIGZhLWJhcnMnLFxuICBzdWJncm91cDogJ2ZhIGZhLWNhcmV0LWRvd24nLFxuICBkcm9wZG93bjogJ2ZhIGZhLWNhcmV0LWRvd24nLFxuICByYWRpb09uOiAnZmEgZmEtZG90LWNpcmNsZS1vJyxcbiAgcmFkaW9PZmY6ICdmYSBmYS1jaXJjbGUtbycsXG4gIGVkaXQ6ICdmYSBmYS1wZW5jaWwnLFxuICByYXRpbmdFbXB0eTogJ2ZhIGZhLXN0YXItbycsXG4gIHJhdGluZ0Z1bGw6ICdmYSBmYS1zdGFyJyxcbiAgcmF0aW5nSGFsZjogJ2ZhIGZhLXN0YXItaGFsZi1vJyxcbiAgbG9hZGluZzogJ2ZhIGZhLXJlZnJlc2gnLFxuICBmaXJzdDogJ2ZhIGZhLXN0ZXAtYmFja3dhcmQnLFxuICBsYXN0OiAnZmEgZmEtc3RlcC1mb3J3YXJkJyxcbiAgdW5mb2xkOiAnZmEgZmEtYW5nbGUtZG91YmxlLWRvd24nLFxuICBmaWxlOiAnZmEgZmEtcGFwZXJjbGlwJyxcbiAgcGx1czogJ2ZhIGZhLXBsdXMnLFxuICBtaW51czogJ2ZhIGZhLW1pbnVzJyxcbn1cblxuZXhwb3J0IGRlZmF1bHQgaWNvbnNcbiIsImltcG9ydCB7IFZ1ZXRpZnlJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICd2dWUnXG5pbXBvcnQgaWNvbnMgZnJvbSAnLi9mYSdcblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRUb0NvbXBvbmVudERlY2xhcmF0aW9ucyAoXG4gIGNvbXBvbmVudDogQ29tcG9uZW50IHwgc3RyaW5nLFxuICBpY29uU2V0OiBWdWV0aWZ5SWNvbnMsXG4pIHtcbiAgY29uc3QgcmVzdWx0OiBQYXJ0aWFsPFZ1ZXRpZnlJY29ucz4gPSB7fVxuXG4gIGZvciAoY29uc3Qga2V5IGluIGljb25TZXQpIHtcbiAgICByZXN1bHRba2V5XSA9IHtcbiAgICAgIGNvbXBvbmVudCxcbiAgICAgIHByb3BzOiB7XG4gICAgICAgIGljb246IChpY29uU2V0W2tleV0gYXMgc3RyaW5nKS5zcGxpdCgnIGZhLScpLFxuICAgICAgfSxcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzdWx0IGFzIFZ1ZXRpZnlJY29uc1xufVxuXG5leHBvcnQgZGVmYXVsdCBjb252ZXJ0VG9Db21wb25lbnREZWNsYXJhdGlvbnMoJ2ZvbnQtYXdlc29tZS1pY29uJywgaWNvbnMpXG4iLCJpbXBvcnQgbWRpU3ZnIGZyb20gJy4vbWRpLXN2ZydcbmltcG9ydCBtZCBmcm9tICcuL21kJ1xuaW1wb3J0IG1kaSBmcm9tICcuL21kaSdcbmltcG9ydCBmYSBmcm9tICcuL2ZhJ1xuaW1wb3J0IGZhNCBmcm9tICcuL2ZhNCdcbmltcG9ydCBmYVN2ZyBmcm9tICcuL2ZhLXN2ZydcblxuZXhwb3J0IGRlZmF1bHQgT2JqZWN0LmZyZWV6ZSh7XG4gIG1kaVN2ZyxcbiAgbWQsXG4gIG1kaSxcbiAgZmEsXG4gIGZhNCxcbiAgZmFTdmcsXG59KVxuIiwiLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgbWVyZ2VEZWVwIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVnVldGlmeVByZXNldCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvcHJlc2V0cydcbmltcG9ydCB7IEljb25zIGFzIElJY29ucyB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvaWNvbnMnXG5cbi8vIFByZXNldHNcbmltcG9ydCBwcmVzZXRzIGZyb20gJy4vcHJlc2V0cydcblxuZXhwb3J0IGNsYXNzIEljb25zIGV4dGVuZHMgU2VydmljZSBpbXBsZW1lbnRzIElJY29ucyB7XG4gIHN0YXRpYyBwcm9wZXJ0eTogJ2ljb25zJyA9ICdpY29ucydcblxuICBwdWJsaWMgaWNvbmZvbnQ6IElJY29uc1snaWNvbmZvbnQnXVxuXG4gIHB1YmxpYyB2YWx1ZXM6IElJY29uc1sndmFsdWVzJ11cblxuICBwdWJsaWMgY29tcG9uZW50OiBJSWNvbnNbJ2NvbXBvbmVudCddXG5cbiAgY29uc3RydWN0b3IgKHByZXNldDogVnVldGlmeVByZXNldCkge1xuICAgIHN1cGVyKClcblxuICAgIGNvbnN0IHtcbiAgICAgIGljb25mb250LFxuICAgICAgdmFsdWVzLFxuICAgICAgY29tcG9uZW50LFxuICAgIH0gPSBwcmVzZXRbSWNvbnMucHJvcGVydHldXG5cbiAgICB0aGlzLmNvbXBvbmVudCA9IGNvbXBvbmVudFxuICAgIHRoaXMuaWNvbmZvbnQgPSBpY29uZm9udFxuICAgIHRoaXMudmFsdWVzID0gbWVyZ2VEZWVwKFxuICAgICAgcHJlc2V0c1tpY29uZm9udF0sXG4gICAgICB2YWx1ZXNcbiAgICApIGFzIElJY29uc1sndmFsdWVzJ11cbiAgfVxufVxuIiwiLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IHsgU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UnXG5cbi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgZ2V0T2JqZWN0VmFsdWVCeVBhdGggfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5pbXBvcnQgeyBjb25zb2xlRXJyb3IsIGNvbnNvbGVXYXJuIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVnVldGlmeVByZXNldCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvcHJlc2V0cydcbmltcG9ydCB7XG4gIFZ1ZXRpZnlMb2NhbGUsXG4gIExhbmcgYXMgSUxhbmcsXG59IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvbGFuZydcblxuY29uc3QgTEFOR19QUkVGSVggPSAnJHZ1ZXRpZnkuJ1xuY29uc3QgZmFsbGJhY2sgPSBTeW1ib2woJ0xhbmcgZmFsbGJhY2snKVxuXG5mdW5jdGlvbiBnZXRUcmFuc2xhdGlvbiAoXG4gIGxvY2FsZTogVnVldGlmeUxvY2FsZSxcbiAga2V5OiBzdHJpbmcsXG4gIHVzaW5nRGVmYXVsdCA9IGZhbHNlLFxuICBkZWZhdWx0TG9jYWxlOiBWdWV0aWZ5TG9jYWxlXG4pOiBzdHJpbmcge1xuICBjb25zdCBzaG9ydEtleSA9IGtleS5yZXBsYWNlKExBTkdfUFJFRklYLCAnJylcbiAgbGV0IHRyYW5zbGF0aW9uID0gZ2V0T2JqZWN0VmFsdWVCeVBhdGgobG9jYWxlLCBzaG9ydEtleSwgZmFsbGJhY2spIGFzIHN0cmluZyB8IHR5cGVvZiBmYWxsYmFja1xuXG4gIGlmICh0cmFuc2xhdGlvbiA9PT0gZmFsbGJhY2spIHtcbiAgICBpZiAodXNpbmdEZWZhdWx0KSB7XG4gICAgICBjb25zb2xlRXJyb3IoYFRyYW5zbGF0aW9uIGtleSBcIiR7c2hvcnRLZXl9XCIgbm90IGZvdW5kIGluIGZhbGxiYWNrYClcbiAgICAgIHRyYW5zbGF0aW9uID0ga2V5XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGVXYXJuKGBUcmFuc2xhdGlvbiBrZXkgXCIke3Nob3J0S2V5fVwiIG5vdCBmb3VuZCwgZmFsbGluZyBiYWNrIHRvIGRlZmF1bHRgKVxuICAgICAgdHJhbnNsYXRpb24gPSBnZXRUcmFuc2xhdGlvbihkZWZhdWx0TG9jYWxlLCBrZXksIHRydWUsIGRlZmF1bHRMb2NhbGUpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRyYW5zbGF0aW9uXG59XG5cbmV4cG9ydCBjbGFzcyBMYW5nIGV4dGVuZHMgU2VydmljZSBpbXBsZW1lbnRzIElMYW5nIHtcbiAgc3RhdGljIHByb3BlcnR5OiAnbGFuZycgPSAnbGFuZydcblxuICBwdWJsaWMgY3VycmVudDogSUxhbmdbJ2N1cnJlbnQnXVxuXG4gIHB1YmxpYyBkZWZhdWx0TG9jYWxlID0gJ2VuJ1xuXG4gIHB1YmxpYyBsb2NhbGVzOiBJTGFuZ1snbG9jYWxlcyddXG5cbiAgcHJpdmF0ZSB0cmFuc2xhdG9yOiBJTGFuZ1sndCddXG5cbiAgY29uc3RydWN0b3IgKHByZXNldDogVnVldGlmeVByZXNldCkge1xuICAgIHN1cGVyKClcblxuICAgIGNvbnN0IHtcbiAgICAgIGN1cnJlbnQsXG4gICAgICBsb2NhbGVzLFxuICAgICAgdCxcbiAgICB9ID0gcHJlc2V0W0xhbmcucHJvcGVydHldXG5cbiAgICB0aGlzLmN1cnJlbnQgPSBjdXJyZW50XG4gICAgdGhpcy5sb2NhbGVzID0gbG9jYWxlc1xuICAgIHRoaXMudHJhbnNsYXRvciA9IHQgfHwgdGhpcy5kZWZhdWx0VHJhbnNsYXRvclxuICB9XG5cbiAgcHVibGljIGN1cnJlbnRMb2NhbGUgKGtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgdHJhbnNsYXRpb24gPSB0aGlzLmxvY2FsZXNbdGhpcy5jdXJyZW50XVxuICAgIGNvbnN0IGRlZmF1bHRMb2NhbGUgPSB0aGlzLmxvY2FsZXNbdGhpcy5kZWZhdWx0TG9jYWxlXVxuXG4gICAgcmV0dXJuIGdldFRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uLCBrZXksIGZhbHNlLCBkZWZhdWx0TG9jYWxlKVxuICB9XG5cbiAgcHVibGljIHQgKGtleTogc3RyaW5nLCAuLi5wYXJhbXM6IGFueVtdKSB7XG4gICAgaWYgKCFrZXkuc3RhcnRzV2l0aChMQU5HX1BSRUZJWCkpIHJldHVybiB0aGlzLnJlcGxhY2Uoa2V5LCBwYXJhbXMpXG5cbiAgICByZXR1cm4gdGhpcy50cmFuc2xhdG9yKGtleSwgLi4ucGFyYW1zKVxuICB9XG5cbiAgcHJpdmF0ZSBkZWZhdWx0VHJhbnNsYXRvciAoa2V5OiBzdHJpbmcsIC4uLnBhcmFtczogYW55W10pIHtcbiAgICByZXR1cm4gdGhpcy5yZXBsYWNlKHRoaXMuY3VycmVudExvY2FsZShrZXkpLCBwYXJhbXMpXG4gIH1cblxuICBwcml2YXRlIHJlcGxhY2UgKHN0cjogc3RyaW5nLCBwYXJhbXM6IGFueVtdKSB7XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlKC9cXHsoXFxkKylcXH0vZywgKG1hdGNoOiBzdHJpbmcsIGluZGV4OiBzdHJpbmcpID0+IHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICByZXR1cm4gU3RyaW5nKHBhcmFtc1sraW5kZXhdKVxuICAgIH0pXG4gIH1cbn1cbiIsImltcG9ydCB7IFhZWiwgTEFCIH0gZnJvbSAnLi4vY29sb3JVdGlscydcblxuY29uc3QgZGVsdGEgPSAwLjIwNjg5NjU1MTcyNDEzNzkzIC8vIDbDtzI5XG5cbmNvbnN0IGNpZWxhYkZvcndhcmRUcmFuc2Zvcm0gPSAodDogbnVtYmVyKTogbnVtYmVyID0+IChcbiAgdCA+IGRlbHRhICoqIDNcbiAgICA/IE1hdGguY2JydCh0KVxuICAgIDogKHQgLyAoMyAqIGRlbHRhICoqIDIpKSArIDQgLyAyOVxuKVxuXG5jb25zdCBjaWVsYWJSZXZlcnNlVHJhbnNmb3JtID0gKHQ6IG51bWJlcik6IG51bWJlciA9PiAoXG4gIHQgPiBkZWx0YVxuICAgID8gdCAqKiAzXG4gICAgOiAoMyAqIGRlbHRhICoqIDIpICogKHQgLSA0IC8gMjkpXG4pXG5cbmV4cG9ydCBmdW5jdGlvbiBmcm9tWFlaICh4eXo6IFhZWik6IExBQiB7XG4gIGNvbnN0IHRyYW5zZm9ybSA9IGNpZWxhYkZvcndhcmRUcmFuc2Zvcm1cbiAgY29uc3QgdHJhbnNmb3JtZWRZID0gdHJhbnNmb3JtKHh5elsxXSlcblxuICByZXR1cm4gW1xuICAgIDExNiAqIHRyYW5zZm9ybWVkWSAtIDE2LFxuICAgIDUwMCAqICh0cmFuc2Zvcm0oeHl6WzBdIC8gMC45NTA0NykgLSB0cmFuc2Zvcm1lZFkpLFxuICAgIDIwMCAqICh0cmFuc2Zvcm1lZFkgLSB0cmFuc2Zvcm0oeHl6WzJdIC8gMS4wODg4MykpLFxuICBdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b1hZWiAobGFiOiBMQUIpOiBYWVoge1xuICBjb25zdCB0cmFuc2Zvcm0gPSBjaWVsYWJSZXZlcnNlVHJhbnNmb3JtXG4gIGNvbnN0IExuID0gKGxhYlswXSArIDE2KSAvIDExNlxuICByZXR1cm4gW1xuICAgIHRyYW5zZm9ybShMbiArIGxhYlsxXSAvIDUwMCkgKiAwLjk1MDQ3LFxuICAgIHRyYW5zZm9ybShMbiksXG4gICAgdHJhbnNmb3JtKExuIC0gbGFiWzJdIC8gMjAwKSAqIDEuMDg4ODMsXG4gIF1cbn1cbiIsImltcG9ydCB7IGtleXMgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5pbXBvcnQgeyBjb2xvclRvSW50LCBpbnRUb0hleCwgY29sb3JUb0hleCwgQ29sb3JJbnQgfSBmcm9tICcuLi8uLi91dGlsL2NvbG9yVXRpbHMnXG5pbXBvcnQgKiBhcyBzUkdCIGZyb20gJy4uLy4uL3V0aWwvY29sb3IvdHJhbnNmb3JtU1JHQidcbmltcG9ydCAqIGFzIExBQiBmcm9tICcuLi8uLi91dGlsL2NvbG9yL3RyYW5zZm9ybUNJRUxBQidcbmltcG9ydCB7XG4gIFZ1ZXRpZnlQYXJzZWRUaGVtZSxcbiAgVnVldGlmeVRoZW1lSXRlbSxcbn0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy90aGVtZSdcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlIChcbiAgdGhlbWU6IFJlY29yZDxzdHJpbmcsIFZ1ZXRpZnlUaGVtZUl0ZW0+LFxuICBpc0l0ZW0gPSBmYWxzZSxcbiAgdmFyaWF0aW9ucyA9IHRydWUsXG4pOiBWdWV0aWZ5UGFyc2VkVGhlbWUge1xuICBjb25zdCB7IGFuY2hvciwgLi4udmFyaWFudCB9ID0gdGhlbWVcbiAgY29uc3QgY29sb3JzID0gT2JqZWN0LmtleXModmFyaWFudClcbiAgY29uc3QgcGFyc2VkVGhlbWU6IGFueSA9IHt9XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xvcnMubGVuZ3RoOyArK2kpIHtcbiAgICBjb25zdCBuYW1lID0gY29sb3JzW2ldXG4gICAgY29uc3QgdmFsdWUgPSB0aGVtZVtuYW1lXVxuXG4gICAgaWYgKHZhbHVlID09IG51bGwpIGNvbnRpbnVlXG5cbiAgICBpZiAoIXZhcmlhdGlvbnMpIHtcbiAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0geyBiYXNlOiBpbnRUb0hleChjb2xvclRvSW50KHZhbHVlKSkgfVxuICAgIH0gZWxzZSBpZiAoaXNJdGVtKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKG5hbWUgPT09ICdiYXNlJyB8fCBuYW1lLnN0YXJ0c1dpdGgoJ2xpZ2h0ZW4nKSB8fCBuYW1lLnN0YXJ0c1dpdGgoJ2RhcmtlbicpKSB7XG4gICAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0gY29sb3JUb0hleCh2YWx1ZSlcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0gcGFyc2UodmFsdWUsIHRydWUsIHZhcmlhdGlvbnMpXG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnNlZFRoZW1lW25hbWVdID0gZ2VuVmFyaWF0aW9ucyhuYW1lLCBjb2xvclRvSW50KHZhbHVlKSlcbiAgICB9XG4gIH1cblxuICBpZiAoIWlzSXRlbSkge1xuICAgIHBhcnNlZFRoZW1lLmFuY2hvciA9IGFuY2hvciB8fCBwYXJzZWRUaGVtZS5iYXNlIHx8IHBhcnNlZFRoZW1lLnByaW1hcnkuYmFzZVxuICB9XG5cbiAgcmV0dXJuIHBhcnNlZFRoZW1lXG59XG5cbi8qKlxuICogR2VuZXJhdGUgdGhlIENTUyBmb3IgYSBiYXNlIGNvbG9yICgucHJpbWFyeSlcbiAqL1xuY29uc3QgZ2VuQmFzZUNvbG9yID0gKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBgXG4udi1hcHBsaWNhdGlvbiAuJHtuYW1lfSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogJHt2YWx1ZX0gIWltcG9ydGFudDtcbn1cbi52LWFwcGxpY2F0aW9uIC4ke25hbWV9LS10ZXh0IHtcbiAgY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG4gIGNhcmV0LWNvbG9yOiAke3ZhbHVlfSAhaW1wb3J0YW50O1xufWBcbn1cblxuLyoqXG4gKiBHZW5lcmF0ZSB0aGUgQ1NTIGZvciBhIHZhcmlhbnQgY29sb3IgKC5wcmltYXJ5LmRhcmtlbi0yKVxuICovXG5jb25zdCBnZW5WYXJpYW50Q29sb3IgPSAobmFtZTogc3RyaW5nLCB2YXJpYW50OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBbdHlwZSwgbl0gPSB2YXJpYW50LnNwbGl0KC8oXFxkKS8sIDIpXG4gIHJldHVybiBgXG4udi1hcHBsaWNhdGlvbiAuJHtuYW1lfS4ke3R5cGV9LSR7bn0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3ZhbHVlfSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG59XG4udi1hcHBsaWNhdGlvbiAuJHtuYW1lfS0tdGV4dC50ZXh0LS0ke3R5cGV9LSR7bn0ge1xuICBjb2xvcjogJHt2YWx1ZX0gIWltcG9ydGFudDtcbiAgY2FyZXQtY29sb3I6ICR7dmFsdWV9ICFpbXBvcnRhbnQ7XG59YFxufVxuXG5jb25zdCBnZW5Db2xvclZhcmlhYmxlTmFtZSA9IChuYW1lOiBzdHJpbmcsIHZhcmlhbnQgPSAnYmFzZScpOiBzdHJpbmcgPT4gYC0tdi0ke25hbWV9LSR7dmFyaWFudH1gXG5cbmNvbnN0IGdlbkNvbG9yVmFyaWFibGUgPSAobmFtZTogc3RyaW5nLCB2YXJpYW50ID0gJ2Jhc2UnKTogc3RyaW5nID0+IGB2YXIoJHtnZW5Db2xvclZhcmlhYmxlTmFtZShuYW1lLCB2YXJpYW50KX0pYFxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuU3R5bGVzICh0aGVtZTogVnVldGlmeVBhcnNlZFRoZW1lLCBjc3NWYXIgPSBmYWxzZSk6IHN0cmluZyB7XG4gIGNvbnN0IHsgYW5jaG9yLCAuLi52YXJpYW50IH0gPSB0aGVtZVxuICBjb25zdCBjb2xvcnMgPSBPYmplY3Qua2V5cyh2YXJpYW50KVxuXG4gIGlmICghY29sb3JzLmxlbmd0aCkgcmV0dXJuICcnXG5cbiAgbGV0IHZhcmlhYmxlc0NzcyA9ICcnXG4gIGxldCBjc3MgPSAnJ1xuXG4gIGNvbnN0IGFDb2xvciA9IGNzc1ZhciA/IGdlbkNvbG9yVmFyaWFibGUoJ2FuY2hvcicpIDogYW5jaG9yXG4gIGNzcyArPSBgLnYtYXBwbGljYXRpb24gYSB7IGNvbG9yOiAke2FDb2xvcn07IH1gXG4gIGNzc1ZhciAmJiAodmFyaWFibGVzQ3NzICs9IGAgICR7Z2VuQ29sb3JWYXJpYWJsZU5hbWUoJ2FuY2hvcicpfTogJHthbmNob3J9O1xcbmApXG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xvcnMubGVuZ3RoOyArK2kpIHtcbiAgICBjb25zdCBuYW1lID0gY29sb3JzW2ldXG4gICAgY29uc3QgdmFsdWUgPSB0aGVtZVtuYW1lXVxuXG4gICAgY3NzICs9IGdlbkJhc2VDb2xvcihuYW1lLCBjc3NWYXIgPyBnZW5Db2xvclZhcmlhYmxlKG5hbWUpIDogdmFsdWUuYmFzZSlcbiAgICBjc3NWYXIgJiYgKHZhcmlhYmxlc0NzcyArPSBgICAke2dlbkNvbG9yVmFyaWFibGVOYW1lKG5hbWUpfTogJHt2YWx1ZS5iYXNlfTtcXG5gKVxuXG4gICAgY29uc3QgdmFyaWFudHMgPSBrZXlzKHZhbHVlKVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmFyaWFudHMubGVuZ3RoOyArK2kpIHtcbiAgICAgIGNvbnN0IHZhcmlhbnQgPSB2YXJpYW50c1tpXVxuICAgICAgY29uc3QgdmFyaWFudFZhbHVlID0gdmFsdWVbdmFyaWFudF1cbiAgICAgIGlmICh2YXJpYW50ID09PSAnYmFzZScpIGNvbnRpbnVlXG5cbiAgICAgIGNzcyArPSBnZW5WYXJpYW50Q29sb3IobmFtZSwgdmFyaWFudCwgY3NzVmFyID8gZ2VuQ29sb3JWYXJpYWJsZShuYW1lLCB2YXJpYW50KSA6IHZhcmlhbnRWYWx1ZSlcbiAgICAgIGNzc1ZhciAmJiAodmFyaWFibGVzQ3NzICs9IGAgICR7Z2VuQ29sb3JWYXJpYWJsZU5hbWUobmFtZSwgdmFyaWFudCl9OiAke3ZhcmlhbnRWYWx1ZX07XFxuYClcbiAgICB9XG4gIH1cblxuICBpZiAoY3NzVmFyKSB7XG4gICAgdmFyaWFibGVzQ3NzID0gYDpyb290IHtcXG4ke3ZhcmlhYmxlc0Nzc319XFxuXFxuYFxuICB9XG5cbiAgcmV0dXJuIHZhcmlhYmxlc0NzcyArIGNzc1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuVmFyaWF0aW9ucyAobmFtZTogc3RyaW5nLCB2YWx1ZTogQ29sb3JJbnQpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgY29uc3QgdmFsdWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgIGJhc2U6IGludFRvSGV4KHZhbHVlKSxcbiAgfVxuXG4gIGZvciAobGV0IGkgPSA1OyBpID4gMDsgLS1pKSB7XG4gICAgdmFsdWVzW2BsaWdodGVuJHtpfWBdID0gaW50VG9IZXgobGlnaHRlbih2YWx1ZSwgaSkpXG4gIH1cblxuICBmb3IgKGxldCBpID0gMTsgaSA8PSA0OyArK2kpIHtcbiAgICB2YWx1ZXNbYGRhcmtlbiR7aX1gXSA9IGludFRvSGV4KGRhcmtlbih2YWx1ZSwgaSkpXG4gIH1cblxuICByZXR1cm4gdmFsdWVzXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsaWdodGVuICh2YWx1ZTogQ29sb3JJbnQsIGFtb3VudDogbnVtYmVyKTogQ29sb3JJbnQge1xuICBjb25zdCBsYWIgPSBMQUIuZnJvbVhZWihzUkdCLnRvWFlaKHZhbHVlKSlcbiAgbGFiWzBdID0gbGFiWzBdICsgYW1vdW50ICogMTBcbiAgcmV0dXJuIHNSR0IuZnJvbVhZWihMQUIudG9YWVoobGFiKSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGRhcmtlbiAodmFsdWU6IENvbG9ySW50LCBhbW91bnQ6IG51bWJlcik6IENvbG9ySW50IHtcbiAgY29uc3QgbGFiID0gTEFCLmZyb21YWVooc1JHQi50b1hZWih2YWx1ZSkpXG4gIGxhYlswXSA9IGxhYlswXSAtIGFtb3VudCAqIDEwXG4gIHJldHVybiBzUkdCLmZyb21YWVooTEFCLnRvWFlaKGxhYikpXG59XG4iLCIvKiBlc2xpbnQtZGlzYWJsZSBuby1tdWx0aS1zcGFjZXMgKi9cbi8vIEV4dGVuc2lvbnNcbmltcG9ydCB7IFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlJ1xuXG4vLyBVdGlsaXRpZXNcbmltcG9ydCAqIGFzIFRoZW1lVXRpbHMgZnJvbSAnLi91dGlscydcbmltcG9ydCB7IGdldE5lc3RlZFZhbHVlIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5pbXBvcnQgeyBWdWV0aWZ5UHJlc2V0IH0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcy9wcmVzZXRzJ1xuaW1wb3J0IHtcbiAgVnVldGlmeVBhcnNlZFRoZW1lLFxuICBWdWV0aWZ5VGhlbWVzLFxuICBWdWV0aWZ5VGhlbWVWYXJpYW50LFxuICBUaGVtZSBhcyBJVGhlbWUsXG59IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvdGhlbWUnXG5cbmV4cG9ydCBjbGFzcyBUaGVtZSBleHRlbmRzIFNlcnZpY2Uge1xuICBzdGF0aWMgcHJvcGVydHk6ICd0aGVtZScgPSAndGhlbWUnXG5cbiAgcHVibGljIGRpc2FibGVkID0gZmFsc2VcblxuICBwdWJsaWMgb3B0aW9uczogSVRoZW1lWydvcHRpb25zJ11cblxuICBwdWJsaWMgc3R5bGVFbD86IEhUTUxTdHlsZUVsZW1lbnRcblxuICBwdWJsaWMgdGhlbWVzOiBWdWV0aWZ5VGhlbWVzXG5cbiAgcHVibGljIGRlZmF1bHRzOiBWdWV0aWZ5VGhlbWVzXG5cbiAgcHJpdmF0ZSBpc0RhcmsgPSBudWxsIGFzIGJvb2xlYW4gfCBudWxsXG5cbiAgcHJpdmF0ZSB1bndhdGNoID0gbnVsbCBhcyAoKCkgPT4gdm9pZCkgfCBudWxsXG5cbiAgcHJpdmF0ZSB2dWVNZXRhID0gbnVsbCBhcyBhbnkgfCBudWxsXG5cbiAgY29uc3RydWN0b3IgKHByZXNldDogVnVldGlmeVByZXNldCkge1xuICAgIHN1cGVyKClcblxuICAgIGNvbnN0IHtcbiAgICAgIGRhcmssXG4gICAgICBkaXNhYmxlLFxuICAgICAgb3B0aW9ucyxcbiAgICAgIHRoZW1lcyxcbiAgICB9ID0gcHJlc2V0W1RoZW1lLnByb3BlcnR5XVxuXG4gICAgdGhpcy5kYXJrID0gQm9vbGVhbihkYXJrKVxuICAgIHRoaXMuZGVmYXVsdHMgPSB0aGlzLnRoZW1lcyA9IHRoZW1lc1xuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnNcblxuICAgIGlmIChkaXNhYmxlKSB7XG4gICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZVxuXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICB0aGlzLnRoZW1lcyA9IHtcbiAgICAgIGRhcms6IHRoaXMuZmlsbFZhcmlhbnQodGhlbWVzLmRhcmssIHRydWUpLFxuICAgICAgbGlnaHQ6IHRoaXMuZmlsbFZhcmlhbnQodGhlbWVzLmxpZ2h0LCBmYWxzZSksXG4gICAgfVxuICB9XG5cbiAgLy8gV2hlbiBzZXR0aW5nIGNzcywgY2hlY2sgZm9yIGVsZW1lbnQgYW5kIGFwcGx5IG5ldyB2YWx1ZXNcbiAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGFjY2Vzc29yLXBhaXJzICovXG4gIHNldCBjc3MgKHZhbDogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMudnVlTWV0YSkge1xuICAgICAgaWYgKHRoaXMuaXNWdWVNZXRhMjMpIHtcbiAgICAgICAgdGhpcy5hcHBseVZ1ZU1ldGEyMygpXG4gICAgICB9XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5jaGVja09yQ3JlYXRlU3R5bGVFbGVtZW50KCkgJiYgKHRoaXMuc3R5bGVFbCEuaW5uZXJIVE1MID0gdmFsKVxuICB9XG5cbiAgc2V0IGRhcmsgKHZhbDogYm9vbGVhbikge1xuICAgIGNvbnN0IG9sZERhcmsgPSB0aGlzLmlzRGFya1xuXG4gICAgdGhpcy5pc0RhcmsgPSB2YWxcbiAgICAvLyBPbmx5IGFwcGx5IHRoZW1lIGFmdGVyIGRhcmtcbiAgICAvLyBoYXMgYWxyZWFkeSBiZWVuIHNldCBiZWZvcmVcbiAgICBvbGREYXJrICE9IG51bGwgJiYgdGhpcy5hcHBseVRoZW1lKClcbiAgfVxuXG4gIGdldCBkYXJrICgpIHtcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLmlzRGFyaylcbiAgfVxuXG4gIC8vIEFwcGx5IGN1cnJlbnQgdGhlbWUgZGVmYXVsdFxuICAvLyBvbmx5IGNhbGxlZCBvbiBjbGllbnQgc2lkZVxuICBwdWJsaWMgYXBwbHlUaGVtZSAoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybiB0aGlzLmNsZWFyQ3NzKClcblxuICAgIHRoaXMuY3NzID0gdGhpcy5nZW5lcmF0ZWRTdHlsZXNcbiAgfVxuXG4gIHB1YmxpYyBjbGVhckNzcyAoKTogdm9pZCB7XG4gICAgdGhpcy5jc3MgPSAnJ1xuICB9XG5cbiAgLy8gSW5pdGlhbGl6ZSB0aGVtZSBmb3IgU1NSIGFuZCBTUEFcbiAgLy8gQXR0YWNoIHRvIHNzckNvbnRleHQgaGVhZCBvclxuICAvLyBhcHBseSBuZXcgdGhlbWUgdG8gZG9jdW1lbnRcbiAgcHVibGljIGluaXQgKHJvb3Q6IFZ1ZSwgc3NyQ29udGV4dD86IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm5cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKChyb290IGFzIGFueSkuJG1ldGEpIHtcbiAgICAgIHRoaXMuaW5pdFZ1ZU1ldGEocm9vdClcbiAgICB9IGVsc2UgaWYgKHNzckNvbnRleHQpIHtcbiAgICAgIHRoaXMuaW5pdFNTUihzc3JDb250ZXh0KVxuICAgIH1cblxuICAgIHRoaXMuaW5pdFRoZW1lKHJvb3QpXG4gIH1cblxuICAvLyBBbGxvd3MgZm9yIHlvdSB0byBzZXQgdGFyZ2V0IHRoZW1lXG4gIHB1YmxpYyBzZXRUaGVtZSAodGhlbWU6ICdsaWdodCcgfCAnZGFyaycsIHZhbHVlOiBvYmplY3QpIHtcbiAgICB0aGlzLnRoZW1lc1t0aGVtZV0gPSBPYmplY3QuYXNzaWduKHRoaXMudGhlbWVzW3RoZW1lXSwgdmFsdWUpXG4gICAgdGhpcy5hcHBseVRoZW1lKClcbiAgfVxuXG4gIC8vIFJlc2V0IHRoZW1lIGRlZmF1bHRzXG4gIHB1YmxpYyByZXNldFRoZW1lcyAoKSB7XG4gICAgdGhpcy50aGVtZXMubGlnaHQgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRlZmF1bHRzLmxpZ2h0KVxuICAgIHRoaXMudGhlbWVzLmRhcmsgPSBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmRlZmF1bHRzLmRhcmspXG4gICAgdGhpcy5hcHBseVRoZW1lKClcbiAgfVxuXG4gIC8vIENoZWNrIGZvciBleGlzdGVuY2Ugb2Ygc3R5bGUgZWxlbWVudFxuICBwcml2YXRlIGNoZWNrT3JDcmVhdGVTdHlsZUVsZW1lbnQgKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuc3R5bGVFbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXQnKSBhcyBIVE1MU3R5bGVFbGVtZW50XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmICh0aGlzLnN0eWxlRWwpIHJldHVybiB0cnVlXG5cbiAgICB0aGlzLmdlblN0eWxlRWxlbWVudCgpIC8vIElmIGRvZXNuJ3QgaGF2ZSBpdCwgY3JlYXRlIGl0XG5cbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLnN0eWxlRWwpXG4gIH1cblxuICBwcml2YXRlIGZpbGxWYXJpYW50IChcbiAgICB0aGVtZTogUGFydGlhbDxWdWV0aWZ5VGhlbWVWYXJpYW50PiA9IHt9LFxuICAgIGRhcms6IGJvb2xlYW5cbiAgKTogVnVldGlmeVRoZW1lVmFyaWFudCB7XG4gICAgY29uc3QgZGVmYXVsdFRoZW1lID0gdGhpcy50aGVtZXNbZGFyayA/ICdkYXJrJyA6ICdsaWdodCddXG5cbiAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxcbiAgICAgIGRlZmF1bHRUaGVtZSxcbiAgICAgIHRoZW1lXG4gICAgKVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIHN0eWxlIGVsZW1lbnRcbiAgLy8gaWYgYXBwbGljYWJsZVxuICBwcml2YXRlIGdlblN0eWxlRWxlbWVudCAoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICB0aGlzLnN0eWxlRWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpXG4gICAgdGhpcy5zdHlsZUVsLnR5cGUgPSAndGV4dC9jc3MnXG4gICAgdGhpcy5zdHlsZUVsLmlkID0gJ3Z1ZXRpZnktdGhlbWUtc3R5bGVzaGVldCdcblxuICAgIGlmICh0aGlzLm9wdGlvbnMuY3NwTm9uY2UpIHtcbiAgICAgIHRoaXMuc3R5bGVFbC5zZXRBdHRyaWJ1dGUoJ25vbmNlJywgdGhpcy5vcHRpb25zLmNzcE5vbmNlKVxuICAgIH1cblxuICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodGhpcy5zdHlsZUVsKVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0VnVlTWV0YSAocm9vdDogYW55KSB7XG4gICAgdGhpcy52dWVNZXRhID0gcm9vdC4kbWV0YSgpXG4gICAgaWYgKHRoaXMuaXNWdWVNZXRhMjMpIHtcbiAgICAgIC8vIHZ1ZS1tZXRhIG5lZWRzIHRvIGFwcGx5IGFmdGVyIG1vdW50ZWQoKVxuICAgICAgcm9vdC4kbmV4dFRpY2soKCkgPT4ge1xuICAgICAgICB0aGlzLmFwcGx5VnVlTWV0YTIzKClcbiAgICAgIH0pXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBtZXRhS2V5TmFtZSA9IHR5cGVvZiB0aGlzLnZ1ZU1ldGEuZ2V0T3B0aW9ucyA9PT0gJ2Z1bmN0aW9uJyA/IHRoaXMudnVlTWV0YS5nZXRPcHRpb25zKCkua2V5TmFtZSA6ICdtZXRhSW5mbydcbiAgICBjb25zdCBtZXRhSW5mbyA9IHJvb3QuJG9wdGlvbnNbbWV0YUtleU5hbWVdIHx8IHt9XG5cbiAgICByb290LiRvcHRpb25zW21ldGFLZXlOYW1lXSA9ICgpID0+IHtcbiAgICAgIG1ldGFJbmZvLnN0eWxlID0gbWV0YUluZm8uc3R5bGUgfHwgW11cblxuICAgICAgY29uc3QgdnVldGlmeVN0eWxlc2hlZXQgPSBtZXRhSW5mby5zdHlsZS5maW5kKChzOiBhbnkpID0+IHMuaWQgPT09ICd2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXQnKVxuXG4gICAgICBpZiAoIXZ1ZXRpZnlTdHlsZXNoZWV0KSB7XG4gICAgICAgIG1ldGFJbmZvLnN0eWxlLnB1c2goe1xuICAgICAgICAgIGNzc1RleHQ6IHRoaXMuZ2VuZXJhdGVkU3R5bGVzLFxuICAgICAgICAgIHR5cGU6ICd0ZXh0L2NzcycsXG4gICAgICAgICAgaWQ6ICd2dWV0aWZ5LXRoZW1lLXN0eWxlc2hlZXQnLFxuICAgICAgICAgIG5vbmNlOiAodGhpcy5vcHRpb25zIHx8IHt9KS5jc3BOb25jZSxcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZ1ZXRpZnlTdHlsZXNoZWV0LmNzc1RleHQgPSB0aGlzLmdlbmVyYXRlZFN0eWxlc1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbWV0YUluZm9cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFwcGx5VnVlTWV0YTIzICgpIHtcbiAgICBjb25zdCB7IHNldCB9ID0gdGhpcy52dWVNZXRhLmFkZEFwcCgndnVldGlmeScpXG5cbiAgICBzZXQoe1xuICAgICAgc3R5bGU6IFt7XG4gICAgICAgIGNzc1RleHQ6IHRoaXMuZ2VuZXJhdGVkU3R5bGVzLFxuICAgICAgICB0eXBlOiAndGV4dC9jc3MnLFxuICAgICAgICBpZDogJ3Z1ZXRpZnktdGhlbWUtc3R5bGVzaGVldCcsXG4gICAgICAgIG5vbmNlOiB0aGlzLm9wdGlvbnMuY3NwTm9uY2UsXG4gICAgICB9XSxcbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0U1NSIChzc3JDb250ZXh0PzogYW55KSB7XG4gICAgLy8gU1NSXG4gICAgY29uc3Qgbm9uY2UgPSB0aGlzLm9wdGlvbnMuY3NwTm9uY2UgPyBgIG5vbmNlPVwiJHt0aGlzLm9wdGlvbnMuY3NwTm9uY2V9XCJgIDogJydcbiAgICBzc3JDb250ZXh0LmhlYWQgPSBzc3JDb250ZXh0LmhlYWQgfHwgJydcbiAgICBzc3JDb250ZXh0LmhlYWQgKz0gYDxzdHlsZSB0eXBlPVwidGV4dC9jc3NcIiBpZD1cInZ1ZXRpZnktdGhlbWUtc3R5bGVzaGVldFwiJHtub25jZX0+JHt0aGlzLmdlbmVyYXRlZFN0eWxlc308L3N0eWxlPmBcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFRoZW1lIChyb290OiBWdWUpIHtcbiAgICAvLyBPbmx5IHdhdGNoIGZvciByZWFjdGl2aXR5IG9uIGNsaWVudCBzaWRlXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpIHJldHVyblxuXG4gICAgLy8gSWYgd2UgZ2V0IGhlcmUgc29tZWhvdywgZW5zdXJlXG4gICAgLy8gZXhpc3RpbmcgaW5zdGFuY2UgaXMgcmVtb3ZlZFxuICAgIGlmICh0aGlzLnVud2F0Y2gpIHtcbiAgICAgIHRoaXMudW53YXRjaCgpXG4gICAgICB0aGlzLnVud2F0Y2ggPSBudWxsXG4gICAgfVxuXG4gICAgLy8gVE9ETzogVXBkYXRlIHRvIHVzZSBSRkMgaWYgbWVyZ2VkXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3Z1ZWpzL3JmY3MvYmxvYi9hZHZhbmNlZC1yZWFjdGl2aXR5LWFwaS9hY3RpdmUtcmZjcy8wMDAwLWFkdmFuY2VkLXJlYWN0aXZpdHktYXBpLm1kXG4gICAgcm9vdC4kb25jZSgnaG9vazpjcmVhdGVkJywgKCkgPT4ge1xuICAgICAgY29uc3Qgb2JzID0gVnVlLm9ic2VydmFibGUoeyB0aGVtZXM6IHRoaXMudGhlbWVzIH0pXG4gICAgICB0aGlzLnVud2F0Y2ggPSByb290LiR3YXRjaCgoKSA9PiBvYnMudGhlbWVzLCAoKSA9PiB0aGlzLmFwcGx5VGhlbWUoKSwgeyBkZWVwOiB0cnVlIH0pXG4gICAgfSlcbiAgICB0aGlzLmFwcGx5VGhlbWUoKVxuICB9XG5cbiAgZ2V0IGN1cnJlbnRUaGVtZSAoKSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5kYXJrID8gJ2RhcmsnIDogJ2xpZ2h0J1xuXG4gICAgcmV0dXJuIHRoaXMudGhlbWVzW3RhcmdldF1cbiAgfVxuXG4gIGdldCBnZW5lcmF0ZWRTdHlsZXMgKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdGhlbWUgPSB0aGlzLnBhcnNlZFRoZW1lXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5vcHRpb25zIHx8IHt9XG4gICAgbGV0IGNzc1xuXG4gICAgaWYgKG9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICBjc3MgPSBvcHRpb25zLnRoZW1lQ2FjaGUuZ2V0KHRoZW1lKVxuICAgICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgICBpZiAoY3NzICE9IG51bGwpIHJldHVybiBjc3NcbiAgICB9XG5cbiAgICBjc3MgPSBUaGVtZVV0aWxzLmdlblN0eWxlcyh0aGVtZSwgb3B0aW9ucy5jdXN0b21Qcm9wZXJ0aWVzKVxuXG4gICAgaWYgKG9wdGlvbnMubWluaWZ5VGhlbWUgIT0gbnVsbCkge1xuICAgICAgY3NzID0gb3B0aW9ucy5taW5pZnlUaGVtZShjc3MpXG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMudGhlbWVDYWNoZSAhPSBudWxsKSB7XG4gICAgICBvcHRpb25zLnRoZW1lQ2FjaGUuc2V0KHRoZW1lLCBjc3MpXG4gICAgfVxuXG4gICAgcmV0dXJuIGNzc1xuICB9XG5cbiAgZ2V0IHBhcnNlZFRoZW1lICgpOiBWdWV0aWZ5UGFyc2VkVGhlbWUge1xuICAgIHJldHVybiBUaGVtZVV0aWxzLnBhcnNlKFxuICAgICAgdGhpcy5jdXJyZW50VGhlbWUgfHwge30sXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBnZXROZXN0ZWRWYWx1ZSh0aGlzLm9wdGlvbnMsIFsndmFyaWF0aW9ucyddLCB0cnVlKVxuICAgIClcbiAgfVxuXG4gIC8vIElzIHVzaW5nIHYyLjMgb2YgdnVlLW1ldGFcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL251eHQvdnVlLW1ldGEvcmVsZWFzZXMvdGFnL3YyLjMuMFxuICBwcml2YXRlIGdldCBpc1Z1ZU1ldGEyMyAoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiB0aGlzLnZ1ZU1ldGEuYWRkQXBwID09PSAnZnVuY3Rpb24nXG4gIH1cbn1cbiIsImltcG9ydCB7IGluc3RhbGwgfSBmcm9tICcuL2luc3RhbGwnXG5cbi8vIFR5cGVzXG5pbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcbmltcG9ydCB7XG4gIFVzZXJWdWV0aWZ5UHJlc2V0LFxuICBWdWV0aWZ5UHJlc2V0LFxufSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL3ByZXNldHMnXG5pbXBvcnQge1xuICBWdWV0aWZ5U2VydmljZSxcbiAgVnVldGlmeVNlcnZpY2VDb250cmFjdCxcbn0gZnJvbSAndnVldGlmeS90eXBlcy9zZXJ2aWNlcydcblxuLy8gU2VydmljZXNcbmltcG9ydCAqIGFzIHNlcnZpY2VzIGZyb20gJy4vc2VydmljZXMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZ1ZXRpZnkge1xuICBzdGF0aWMgaW5zdGFsbCA9IGluc3RhbGxcblxuICBzdGF0aWMgaW5zdGFsbGVkID0gZmFsc2VcblxuICBzdGF0aWMgdmVyc2lvbiA9IF9fVlVFVElGWV9WRVJTSU9OX19cblxuICBzdGF0aWMgY29uZmlnID0ge1xuICAgIHNpbGVudDogZmFsc2UsXG4gIH1cblxuICBwdWJsaWMgZnJhbWV3b3JrOiBEaWN0aW9uYXJ5PFZ1ZXRpZnlTZXJ2aWNlQ29udHJhY3Q+ID0ge1xuICAgIGlzSHlkcmF0aW5nOiBmYWxzZSxcbiAgfSBhcyBhbnlcblxuICBwdWJsaWMgaW5zdGFsbGVkOiBzdHJpbmdbXSA9IFtdXG5cbiAgcHVibGljIHByZXNldCA9IHt9IGFzIFZ1ZXRpZnlQcmVzZXRcblxuICBwdWJsaWMgdXNlclByZXNldDogVXNlclZ1ZXRpZnlQcmVzZXQgPSB7fVxuXG4gIGNvbnN0cnVjdG9yICh1c2VyUHJlc2V0OiBVc2VyVnVldGlmeVByZXNldCA9IHt9KSB7XG4gICAgdGhpcy51c2VyUHJlc2V0ID0gdXNlclByZXNldFxuXG4gICAgdGhpcy51c2Uoc2VydmljZXMuUHJlc2V0cylcbiAgICB0aGlzLnVzZShzZXJ2aWNlcy5BcHBsaWNhdGlvbilcbiAgICB0aGlzLnVzZShzZXJ2aWNlcy5CcmVha3BvaW50KVxuICAgIHRoaXMudXNlKHNlcnZpY2VzLkdvdG8pXG4gICAgdGhpcy51c2Uoc2VydmljZXMuSWNvbnMpXG4gICAgdGhpcy51c2Uoc2VydmljZXMuTGFuZylcbiAgICB0aGlzLnVzZShzZXJ2aWNlcy5UaGVtZSlcbiAgfVxuXG4gIC8vIENhbGxlZCBvbiB0aGUgbmV3IHZ1ZXRpZnkgaW5zdGFuY2VcbiAgLy8gYm9vdHN0cmFwIGluIGluc3RhbGwgYmVmb3JlQ3JlYXRlXG4gIC8vIEV4cG9zZXMgc3NyQ29udGV4dCBpZiBhdmFpbGFibGVcbiAgaW5pdCAocm9vdDogVnVlLCBzc3JDb250ZXh0Pzogb2JqZWN0KSB7XG4gICAgdGhpcy5pbnN0YWxsZWQuZm9yRWFjaChwcm9wZXJ0eSA9PiB7XG4gICAgICBjb25zdCBzZXJ2aWNlID0gdGhpcy5mcmFtZXdvcmtbcHJvcGVydHldXG5cbiAgICAgIHNlcnZpY2UuZnJhbWV3b3JrID0gdGhpcy5mcmFtZXdvcmtcblxuICAgICAgc2VydmljZS5pbml0KHJvb3QsIHNzckNvbnRleHQpXG4gICAgfSlcblxuICAgIC8vIHJ0bCBpcyBub3QgaW5zdGFsbGVkIGFuZFxuICAgIC8vIHdpbGwgbmV2ZXIgYmUgY2FsbGVkIGJ5XG4gICAgLy8gdGhlIGluaXQgcHJvY2Vzc1xuICAgIHRoaXMuZnJhbWV3b3JrLnJ0bCA9IEJvb2xlYW4odGhpcy5wcmVzZXQucnRsKSBhcyBhbnlcbiAgfVxuXG4gIC8vIEluc3RhbnRpYXRlIGEgVnVldGlmeVNlcnZpY2VcbiAgdXNlIChTZXJ2aWNlOiBWdWV0aWZ5U2VydmljZSkge1xuICAgIGNvbnN0IHByb3BlcnR5ID0gU2VydmljZS5wcm9wZXJ0eVxuXG4gICAgaWYgKHRoaXMuaW5zdGFsbGVkLmluY2x1ZGVzKHByb3BlcnR5KSkgcmV0dXJuXG5cbiAgICAvLyBUT0RPIG1heWJlIGEgc3BlY2lmaWMgdHlwZSBmb3IgYXJnIDI/XG4gICAgdGhpcy5mcmFtZXdvcmtbcHJvcGVydHldID0gbmV3IFNlcnZpY2UodGhpcy5wcmVzZXQsIHRoaXMgYXMgYW55KVxuICAgIHRoaXMuaW5zdGFsbGVkLnB1c2gocHJvcGVydHkpXG4gIH1cbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///127\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return inject; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return provide; });\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);\n/* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(8);\n\n\n\n\nfunction generateWarning(child, parent) {\n return function () {\n return Object(_util_console__WEBPACK_IMPORTED_MODULE_2__[/* consoleWarn */ "c"])("The ".concat(child, " component must be used inside a ").concat(parent));\n };\n}\n\nfunction inject(namespace, child, parent) {\n var defaultImpl = child && parent ? {\n register: generateWarning(child, parent),\n unregister: generateWarning(child, parent)\n } : null;\n return vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].extend({\n name: \'registrable-inject\',\n inject: Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, namespace, {\n default: defaultImpl\n })\n });\n}\nfunction provide(namespace) {\n var self = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].extend({\n name: \'registrable-provide\',\n provide: function provide() {\n return Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, namespace, self ? this : {\n register: this.register,\n unregister: this.unregister\n });\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9yZWdpc3RyYWJsZS9pbmRleC50cz9iZWRhIl0sIm5hbWVzIjpbImdlbmVyYXRlV2FybmluZyIsImNoaWxkIiwicGFyZW50IiwiY29uc29sZVdhcm4iLCJpbmplY3QiLCJuYW1lc3BhY2UiLCJkZWZhdWx0SW1wbCIsInJlZ2lzdGVyIiwidW5yZWdpc3RlciIsIlZ1ZSIsImV4dGVuZCIsIm5hbWUiLCJkZWZhdWx0IiwicHJvdmlkZSIsInNlbGYiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBRUE7O0FBRUEsU0FBU0EsZUFBVCxDQUEwQkMsS0FBMUIsRUFBeUNDLE1BQXpDLEVBQXVEO0FBQ3JELFNBQU87QUFBQSxXQUFNQyx5RUFBVyxlQUFRRixLQUFSLDhDQUFpREMsTUFBakQsRUFBakI7QUFBQSxHQUFQO0FBQ0Q7O0FBU0ssU0FBVUUsTUFBVixDQUVIQyxTQUZHLEVBRVdKLEtBRlgsRUFFMkJDLE1BRjNCLEVBRTBDO0FBQzlDLE1BQU1JLFdBQVcsR0FBR0wsS0FBSyxJQUFJQyxNQUFULEdBQWtCO0FBQ3BDSyxZQUFRLEVBQUVQLGVBQWUsQ0FBQ0MsS0FBRCxFQUFRQyxNQUFSLENBRFc7QUFFcENNLGNBQVUsRUFBRVIsZUFBZSxDQUFDQyxLQUFELEVBQVFDLE1BQVI7QUFGUyxHQUFsQixHQUdoQixJQUhKO0FBS0EsU0FBT08sbURBQUcsQ0FBQ0MsTUFBSixDQUFXO0FBQ2hCQyxRQUFJLEVBQUUsb0JBRFU7QUFHaEJQLFVBQU0sRUFBRSxzR0FDTEMsU0FERyxFQUNTO0FBQ1hPLGFBQU8sRUFBRU47QUFERSxLQURUO0FBSFUsR0FBWCxDQUFQO0FBU0Q7QUFFSyxTQUFVTyxPQUFWLENBQW1CUixTQUFuQixFQUFrRDtBQUFBLE1BQVpTLElBQVksdUVBQUwsS0FBSztBQUN0RCxTQUFPTCxtREFBRyxDQUFDQyxNQUFKLENBQVc7QUFDaEJDLFFBQUksRUFBRSxxQkFEVTtBQUdoQkUsV0FIZ0IscUJBR1Q7QUFDTCxtSEFDR1IsU0FESCxFQUNlUyxJQUFJLEdBQUcsSUFBSCxHQUFVO0FBQ3pCUCxnQkFBUSxFQUFHLEtBQWFBLFFBREM7QUFFekJDLGtCQUFVLEVBQUcsS0FBYUE7QUFGRCxPQUQ3QjtBQU1EO0FBVmUsR0FBWCxDQUFQO0FBWUQiLCJmaWxlIjoiMTI5LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5pbXBvcnQgeyBWdWVDb25zdHJ1Y3RvciB9IGZyb20gJ3Z1ZS90eXBlcy92dWUnXG5pbXBvcnQgeyBjb25zb2xlV2FybiB9IGZyb20gJy4uLy4uL3V0aWwvY29uc29sZSdcblxuZnVuY3Rpb24gZ2VuZXJhdGVXYXJuaW5nIChjaGlsZDogc3RyaW5nLCBwYXJlbnQ6IHN0cmluZykge1xuICByZXR1cm4gKCkgPT4gY29uc29sZVdhcm4oYFRoZSAke2NoaWxkfSBjb21wb25lbnQgbXVzdCBiZSB1c2VkIGluc2lkZSBhICR7cGFyZW50fWApXG59XG5cbmV4cG9ydCB0eXBlIFJlZ2lzdHJhYmxlPFQgZXh0ZW5kcyBzdHJpbmcsIEMgZXh0ZW5kcyBWdWVDb25zdHJ1Y3RvciB8IG51bGwgPSBudWxsPiA9IFZ1ZUNvbnN0cnVjdG9yPFZ1ZSAmIHtcbiAgW0sgaW4gVF06IEMgZXh0ZW5kcyBWdWVDb25zdHJ1Y3RvciA/IEluc3RhbmNlVHlwZTxDPiA6IHtcbiAgICByZWdpc3RlciAoLi4ucHJvcHM6IGFueVtdKTogdm9pZFxuICAgIHVucmVnaXN0ZXIgKHNlbGY6IGFueSk6IHZvaWRcbiAgfVxufT5cblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdDxcbiAgVCBleHRlbmRzIHN0cmluZywgQyBleHRlbmRzIFZ1ZUNvbnN0cnVjdG9yIHwgbnVsbCA9IG51bGxcbj4gKG5hbWVzcGFjZTogVCwgY2hpbGQ/OiBzdHJpbmcsIHBhcmVudD86IHN0cmluZyk6IFJlZ2lzdHJhYmxlPFQsIEM+IHtcbiAgY29uc3QgZGVmYXVsdEltcGwgPSBjaGlsZCAmJiBwYXJlbnQgPyB7XG4gICAgcmVnaXN0ZXI6IGdlbmVyYXRlV2FybmluZyhjaGlsZCwgcGFyZW50KSxcbiAgICB1bnJlZ2lzdGVyOiBnZW5lcmF0ZVdhcm5pbmcoY2hpbGQsIHBhcmVudCksXG4gIH0gOiBudWxsXG5cbiAgcmV0dXJuIFZ1ZS5leHRlbmQoe1xuICAgIG5hbWU6ICdyZWdpc3RyYWJsZS1pbmplY3QnLFxuXG4gICAgaW5qZWN0OiB7XG4gICAgICBbbmFtZXNwYWNlXToge1xuICAgICAgICBkZWZhdWx0OiBkZWZhdWx0SW1wbCxcbiAgICAgIH0sXG4gICAgfSxcbiAgfSlcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGUgKG5hbWVzcGFjZTogc3RyaW5nLCBzZWxmID0gZmFsc2UpIHtcbiAgcmV0dXJuIFZ1ZS5leHRlbmQoe1xuICAgIG5hbWU6ICdyZWdpc3RyYWJsZS1wcm92aWRlJyxcblxuICAgIHByb3ZpZGUgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBbbmFtZXNwYWNlXTogc2VsZiA/IHRoaXMgOiB7XG4gICAgICAgICAgcmVnaXN0ZXI6ICh0aGlzIGFzIGFueSkucmVnaXN0ZXIsXG4gICAgICAgICAgdW5yZWdpc3RlcjogKHRoaXMgYXMgYW55KS51bnJlZ2lzdGVyLFxuICAgICAgICB9LFxuICAgICAgfVxuICAgIH0sXG4gIH0pXG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///129\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return VGrid; });\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es6_string_starts_with_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(67);\n/* harmony import */ var core_js_modules_es6_string_starts_with_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_string_starts_with_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2);\n\n\n\n// Types\n\nfunction VGrid(name) {\n /* @vue/component */\n return vue__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].extend({\n name: "v-".concat(name),\n functional: true,\n props: {\n id: String,\n tag: {\n type: String,\n default: \'div\'\n }\n },\n render: function render(h, _ref) {\n var props = _ref.props,\n data = _ref.data,\n children = _ref.children;\n data.staticClass = "".concat(name, " ").concat(data.staticClass || \'\').trim();\n var attrs = data.attrs;\n\n if (attrs) {\n // reset attrs to extract utility clases like pa-3\n data.attrs = {};\n var classes = Object.keys(attrs).filter(function (key) {\n // TODO: Remove once resolved\n // https://github.com/vuejs/vue/issues/7841\n if (key === \'slot\') return false;\n var value = attrs[key]; // add back data attributes like data-test="foo" but do not\n // add them as classes\n\n if (key.startsWith(\'data-\')) {\n data.attrs[key] = value;\n return false;\n }\n\n return value || typeof value === \'string\';\n });\n if (classes.length) data.staticClass += " ".concat(classes.join(\' \'));\n }\n\n if (props.id) {\n data.domProps = data.domProps || {};\n data.domProps.id = props.id;\n }\n\n return h(props.tag, data, children);\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkdyaWQvZ3JpZC50cz9mMzZhIl0sIm5hbWVzIjpbIlZHcmlkIiwibmFtZSIsIlZ1ZSIsImV4dGVuZCIsImZ1bmN0aW9uYWwiLCJwcm9wcyIsImlkIiwiU3RyaW5nIiwidGFnIiwidHlwZSIsImRlZmF1bHQiLCJyZW5kZXIiLCJoIiwiZGF0YSIsImNoaWxkcmVuIiwic3RhdGljQ2xhc3MiLCJ0cmltIiwiYXR0cnMiLCJjbGFzc2VzIiwiT2JqZWN0Iiwia2V5cyIsImZpbHRlciIsImtleSIsInZhbHVlIiwic3RhcnRzV2l0aCIsImxlbmd0aCIsImpvaW4iLCJkb21Qcm9wcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBRWMsU0FBVUEsS0FBVixDQUFpQkMsSUFBakIsRUFBNkI7QUFDekM7QUFDQSxTQUFPQyxtREFBRyxDQUFDQyxNQUFKLENBQVc7QUFDaEJGLFFBQUksY0FBT0EsSUFBUCxDQURZO0FBR2hCRyxjQUFVLEVBQUUsSUFISTtBQUtoQkMsU0FBSyxFQUFFO0FBQ0xDLFFBQUUsRUFBRUMsTUFEQztBQUVMQyxTQUFHLEVBQUU7QUFDSEMsWUFBSSxFQUFFRixNQURIO0FBRUhHLGVBQU8sRUFBRTtBQUZOO0FBRkEsS0FMUztBQWFoQkMsVUFiZ0Isa0JBYVJDLENBYlEsUUFhb0I7QUFBQSxVQUF2QlAsS0FBdUIsUUFBdkJBLEtBQXVCO0FBQUEsVUFBaEJRLElBQWdCLFFBQWhCQSxJQUFnQjtBQUFBLFVBQVZDLFFBQVUsUUFBVkEsUUFBVTtBQUNsQ0QsVUFBSSxDQUFDRSxXQUFMLEdBQW9CLFVBQUdkLElBQUgsY0FBV1ksSUFBSSxDQUFDRSxXQUFMLElBQW9CLEVBQS9CLEVBQXFDQyxJQUFyQyxFQUFwQjtBQUVBLFVBQVFDLEtBQVIsR0FBa0JKLElBQWxCLENBQVFJLEtBQVI7O0FBQ0EsVUFBSUEsS0FBSixFQUFXO0FBQ1Q7QUFDQUosWUFBSSxDQUFDSSxLQUFMLEdBQWEsRUFBYjtBQUNBLFlBQU1DLE9BQU8sR0FBR0MsTUFBTSxDQUFDQyxJQUFQLENBQVlILEtBQVosRUFBbUJJLE1BQW5CLENBQTBCLGFBQUcsRUFBRztBQUM5QztBQUNBO0FBQ0EsY0FBSUMsR0FBRyxLQUFLLE1BQVosRUFBb0IsT0FBTyxLQUFQO0FBRXBCLGNBQU1DLEtBQUssR0FBR04sS0FBSyxDQUFDSyxHQUFELENBQW5CLENBTDhDLENBTzlDO0FBQ0E7O0FBQ0EsY0FBSUEsR0FBRyxDQUFDRSxVQUFKLENBQWUsT0FBZixDQUFKLEVBQTZCO0FBQzNCWCxnQkFBSSxDQUFDSSxLQUFMLENBQVlLLEdBQVosSUFBbUJDLEtBQW5CO0FBQ0EsbUJBQU8sS0FBUDtBQUNEOztBQUVELGlCQUFPQSxLQUFLLElBQUksT0FBT0EsS0FBUCxLQUFpQixRQUFqQztBQWRjLFVBQWhCO0FBaUJBLFlBQUlMLE9BQU8sQ0FBQ08sTUFBWixFQUFvQlosSUFBSSxDQUFDRSxXQUFMLGVBQXdCRyxPQUFPLENBQUNRLElBQVIsQ0FBYSxHQUFiLENBQXhCO0FBQ3JCOztBQUVELFVBQUlyQixLQUFLLENBQUNDLEVBQVYsRUFBYztBQUNaTyxZQUFJLENBQUNjLFFBQUwsR0FBZ0JkLElBQUksQ0FBQ2MsUUFBTCxJQUFpQixFQUFqQztBQUNBZCxZQUFJLENBQUNjLFFBQUwsQ0FBY3JCLEVBQWQsR0FBbUJELEtBQUssQ0FBQ0MsRUFBekI7QUFDRDs7QUFFRCxhQUFPTSxDQUFDLENBQUNQLEtBQUssQ0FBQ0csR0FBUCxFQUFZSyxJQUFaLEVBQWtCQyxRQUFsQixDQUFSO0FBQ0Q7QUE5Q2UsR0FBWCxDQUFQO0FBZ0REIiwiZmlsZSI6IjEzMC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFR5cGVzXG5pbXBvcnQgVnVlLCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBWR3JpZCAobmFtZTogc3RyaW5nKSB7XG4gIC8qIEB2dWUvY29tcG9uZW50ICovXG4gIHJldHVybiBWdWUuZXh0ZW5kKHtcbiAgICBuYW1lOiBgdi0ke25hbWV9YCxcblxuICAgIGZ1bmN0aW9uYWw6IHRydWUsXG5cbiAgICBwcm9wczoge1xuICAgICAgaWQ6IFN0cmluZyxcbiAgICAgIHRhZzoge1xuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIGRlZmF1bHQ6ICdkaXYnLFxuICAgICAgfSxcbiAgICB9LFxuXG4gICAgcmVuZGVyIChoLCB7IHByb3BzLCBkYXRhLCBjaGlsZHJlbiB9KTogVk5vZGUge1xuICAgICAgZGF0YS5zdGF0aWNDbGFzcyA9IChgJHtuYW1lfSAke2RhdGEuc3RhdGljQ2xhc3MgfHwgJyd9YCkudHJpbSgpXG5cbiAgICAgIGNvbnN0IHsgYXR0cnMgfSA9IGRhdGFcbiAgICAgIGlmIChhdHRycykge1xuICAgICAgICAvLyByZXNldCBhdHRycyB0byBleHRyYWN0IHV0aWxpdHkgY2xhc2VzIGxpa2UgcGEtM1xuICAgICAgICBkYXRhLmF0dHJzID0ge31cbiAgICAgICAgY29uc3QgY2xhc3NlcyA9IE9iamVjdC5rZXlzKGF0dHJzKS5maWx0ZXIoa2V5ID0+IHtcbiAgICAgICAgICAvLyBUT0RPOiBSZW1vdmUgb25jZSByZXNvbHZlZFxuICAgICAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS92dWVqcy92dWUvaXNzdWVzLzc4NDFcbiAgICAgICAgICBpZiAoa2V5ID09PSAnc2xvdCcpIHJldHVybiBmYWxzZVxuXG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBhdHRyc1trZXldXG5cbiAgICAgICAgICAvLyBhZGQgYmFjayBkYXRhIGF0dHJpYnV0ZXMgbGlrZSBkYXRhLXRlc3Q9XCJmb29cIiBidXQgZG8gbm90XG4gICAgICAgICAgLy8gYWRkIHRoZW0gYXMgY2xhc3Nlc1xuICAgICAgICAgIGlmIChrZXkuc3RhcnRzV2l0aCgnZGF0YS0nKSkge1xuICAgICAgICAgICAgZGF0YS5hdHRycyFba2V5XSA9IHZhbHVlXG4gICAgICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdmFsdWUgfHwgdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJ1xuICAgICAgICB9KVxuXG4gICAgICAgIGlmIChjbGFzc2VzLmxlbmd0aCkgZGF0YS5zdGF0aWNDbGFzcyArPSBgICR7Y2xhc3Nlcy5qb2luKCcgJyl9YFxuICAgICAgfVxuXG4gICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgZGF0YS5kb21Qcm9wcyA9IGRhdGEuZG9tUHJvcHMgfHwge31cbiAgICAgICAgZGF0YS5kb21Qcm9wcy5pZCA9IHByb3BzLmlkXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBoKHByb3BzLnRhZywgZGF0YSwgY2hpbGRyZW4pXG4gICAgfSxcbiAgfSlcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///130\n')},,,,,,,,,,,,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(63);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);\n\n\n\nfunction searchChildren(children) {\n var results = [];\n\n for (var index = 0; index < children.length; index++) {\n var child = children[index];\n\n if (child.isActive && child.isDependent) {\n results.push(child);\n } else {\n results.push.apply(results, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(searchChildren(child.$children)));\n }\n }\n\n return results;\n}\n/* @vue/component */\n\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])().extend({\n name: \'dependent\',\n data: function data() {\n return {\n closeDependents: true,\n isActive: false,\n isDependent: true\n };\n },\n watch: {\n isActive: function isActive(val) {\n if (val) return;\n var openDependents = this.getOpenDependents();\n\n for (var index = 0; index < openDependents.length; index++) {\n openDependents[index].isActive = false;\n }\n }\n },\n methods: {\n getOpenDependents: function getOpenDependents() {\n if (this.closeDependents) return searchChildren(this.$children);\n return [];\n },\n getOpenDependentElements: function getOpenDependentElements() {\n var result = [];\n var openDependents = this.getOpenDependents();\n\n for (var index = 0; index < openDependents.length; index++) {\n result.push.apply(result, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(openDependents[index].getClickableDependentElements()));\n }\n\n return result;\n },\n getClickableDependentElements: function getClickableDependentElements() {\n var result = [this.$el];\n if (this.$refs.content) result.push(this.$refs.content);\n if (this.overlay) result.push(this.overlay.$el);\n result.push.apply(result, Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this.getOpenDependentElements()));\n return result;\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9kZXBlbmRlbnQvaW5kZXgudHM/NDhhOCJdLCJuYW1lcyI6WyJzZWFyY2hDaGlsZHJlbiIsImNoaWxkcmVuIiwicmVzdWx0cyIsImluZGV4IiwibGVuZ3RoIiwiY2hpbGQiLCJpc0FjdGl2ZSIsImlzRGVwZW5kZW50IiwicHVzaCIsIiRjaGlsZHJlbiIsIm1peGlucyIsImV4dGVuZCIsIm5hbWUiLCJkYXRhIiwiY2xvc2VEZXBlbmRlbnRzIiwid2F0Y2giLCJ2YWwiLCJvcGVuRGVwZW5kZW50cyIsImdldE9wZW5EZXBlbmRlbnRzIiwibWV0aG9kcyIsImdldE9wZW5EZXBlbmRlbnRFbGVtZW50cyIsInJlc3VsdCIsImdldENsaWNrYWJsZURlcGVuZGVudEVsZW1lbnRzIiwiJGVsIiwiJHJlZnMiLCJjb250ZW50Iiwib3ZlcmxheSJdLCJtYXBwaW5ncyI6Ijs7O0FBRUE7O0FBZ0JBLFNBQVNBLGNBQVQsQ0FBeUJDLFFBQXpCLEVBQXdDO0FBQ3RDLE1BQU1DLE9BQU8sR0FBRyxFQUFoQjs7QUFDQSxPQUFLLElBQUlDLEtBQUssR0FBRyxDQUFqQixFQUFvQkEsS0FBSyxHQUFHRixRQUFRLENBQUNHLE1BQXJDLEVBQTZDRCxLQUFLLEVBQWxELEVBQXNEO0FBQ3BELFFBQU1FLEtBQUssR0FBR0osUUFBUSxDQUFDRSxLQUFELENBQXRCOztBQUNBLFFBQUlFLEtBQUssQ0FBQ0MsUUFBTixJQUFrQkQsS0FBSyxDQUFDRSxXQUE1QixFQUF5QztBQUN2Q0wsYUFBTyxDQUFDTSxJQUFSLENBQWFILEtBQWI7QUFERixXQUVPO0FBQ0xILGFBQU8sQ0FBQ00sSUFBUixjQUFPLHVHQUFTUixjQUFjLENBQUNLLEtBQUssQ0FBQ0ksU0FBUCxDQUF2QixFQUFQO0FBQ0Q7QUFDRjs7QUFFRCxTQUFPUCxPQUFQO0FBQ0Q7QUFFRDs7O0FBQ2VRLDZIQUFNLEdBQWtCQyxNQUF4QixDQUErQjtBQUM1Q0MsTUFBSSxFQUFFLFdBRHNDO0FBRzVDQyxNQUg0QyxrQkFHeEM7QUFDRixXQUFPO0FBQ0xDLHFCQUFlLEVBQUUsSUFEWjtBQUVMUixjQUFRLEVBQUUsS0FGTDtBQUdMQyxpQkFBVyxFQUFFO0FBSFIsS0FBUDtBQUowQztBQVc1Q1EsT0FBSyxFQUFFO0FBQ0xULFlBREssb0JBQ0tVLEdBREwsRUFDUTtBQUNYLFVBQUlBLEdBQUosRUFBUztBQUVULFVBQU1DLGNBQWMsR0FBRyxLQUFLQyxpQkFBTCxFQUF2Qjs7QUFDQSxXQUFLLElBQUlmLEtBQUssR0FBRyxDQUFqQixFQUFvQkEsS0FBSyxHQUFHYyxjQUFjLENBQUNiLE1BQTNDLEVBQW1ERCxLQUFLLEVBQXhELEVBQTREO0FBQzFEYyxzQkFBYyxDQUFDZCxLQUFELENBQWQsQ0FBc0JHLFFBQXRCLEdBQWlDLEtBQWpDO0FBQ0Q7QUFDRjtBQVJJLEdBWHFDO0FBc0I1Q2EsU0FBTyxFQUFFO0FBQ1BELHFCQURPLCtCQUNVO0FBQ2YsVUFBSSxLQUFLSixlQUFULEVBQTBCLE9BQU9kLGNBQWMsQ0FBQyxLQUFLUyxTQUFOLENBQXJCO0FBRTFCLGFBQU8sRUFBUDtBQUpLO0FBTVBXLDRCQU5PLHNDQU1pQjtBQUN0QixVQUFNQyxNQUFNLEdBQUcsRUFBZjtBQUNBLFVBQU1KLGNBQWMsR0FBRyxLQUFLQyxpQkFBTCxFQUF2Qjs7QUFFQSxXQUFLLElBQUlmLEtBQUssR0FBRyxDQUFqQixFQUFvQkEsS0FBSyxHQUFHYyxjQUFjLENBQUNiLE1BQTNDLEVBQW1ERCxLQUFLLEVBQXhELEVBQTREO0FBQzFEa0IsY0FBTSxDQUFDYixJQUFQLGFBQU0sdUdBQVNTLGNBQWMsQ0FBQ2QsS0FBRCxDQUFkLENBQXNCbUIsNkJBQXRCLEVBQVQsRUFBTjtBQUNEOztBQUVELGFBQU9ELE1BQVA7QUFkSztBQWdCUEMsaUNBaEJPLDJDQWdCc0I7QUFDM0IsVUFBTUQsTUFBTSxHQUFHLENBQUMsS0FBS0UsR0FBTixDQUFmO0FBQ0EsVUFBSSxLQUFLQyxLQUFMLENBQVdDLE9BQWYsRUFBd0JKLE1BQU0sQ0FBQ2IsSUFBUCxDQUFZLEtBQUtnQixLQUFMLENBQVdDLE9BQXZCO0FBQ3hCLFVBQUksS0FBS0MsT0FBVCxFQUFrQkwsTUFBTSxDQUFDYixJQUFQLENBQVksS0FBS2tCLE9BQUwsQ0FBYUgsR0FBekI7QUFDbEJGLFlBQU0sQ0FBQ2IsSUFBUCxhQUFNLHVHQUFTLEtBQUtZLHdCQUFMLEVBQVQsRUFBTjtBQUVBLGFBQU9DLE1BQVA7QUFDRDtBQXZCTTtBQXRCbUMsQ0FBL0IsQ0FBZiIsImZpbGUiOiIxNDMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVnVlIGZyb20gJ3Z1ZSdcblxuaW1wb3J0IG1peGlucyBmcm9tICcuLi8uLi91dGlsL21peGlucydcbmltcG9ydCB7IFZPdmVybGF5IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9WT3ZlcmxheSdcblxuaW50ZXJmYWNlIG9wdGlvbnMge1xuICAkZWw6IEhUTUxFbGVtZW50XG4gICRyZWZzOiB7XG4gICAgY29udGVudD86IEhUTUxFbGVtZW50XG4gIH1cbiAgb3ZlcmxheT86IEluc3RhbmNlVHlwZTx0eXBlb2YgVk92ZXJsYXk+XG59XG5cbmludGVyZmFjZSBEZXBlbmRlbnRJbnN0YW5jZSBleHRlbmRzIFZ1ZSB7XG4gIGlzQWN0aXZlPzogYm9vbGVhblxuICBpc0RlcGVuZGVudD86IGJvb2xlYW5cbn1cblxuZnVuY3Rpb24gc2VhcmNoQ2hpbGRyZW4gKGNoaWxkcmVuOiBWdWVbXSk6IERlcGVuZGVudEluc3RhbmNlW10ge1xuICBjb25zdCByZXN1bHRzID0gW11cbiAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGNoaWxkcmVuLmxlbmd0aDsgaW5kZXgrKykge1xuICAgIGNvbnN0IGNoaWxkID0gY2hpbGRyZW5baW5kZXhdIGFzIERlcGVuZGVudEluc3RhbmNlXG4gICAgaWYgKGNoaWxkLmlzQWN0aXZlICYmIGNoaWxkLmlzRGVwZW5kZW50KSB7XG4gICAgICByZXN1bHRzLnB1c2goY2hpbGQpXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdHMucHVzaCguLi5zZWFyY2hDaGlsZHJlbihjaGlsZC4kY2hpbGRyZW4pKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiByZXN1bHRzXG59XG5cbi8qIEB2dWUvY29tcG9uZW50ICovXG5leHBvcnQgZGVmYXVsdCBtaXhpbnM8VnVlICYgb3B0aW9ucz4oKS5leHRlbmQoe1xuICBuYW1lOiAnZGVwZW5kZW50JyxcblxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2xvc2VEZXBlbmRlbnRzOiB0cnVlLFxuICAgICAgaXNBY3RpdmU6IGZhbHNlLFxuICAgICAgaXNEZXBlbmRlbnQ6IHRydWUsXG4gICAgfVxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaXNBY3RpdmUgKHZhbCkge1xuICAgICAgaWYgKHZhbCkgcmV0dXJuXG5cbiAgICAgIGNvbnN0IG9wZW5EZXBlbmRlbnRzID0gdGhpcy5nZXRPcGVuRGVwZW5kZW50cygpXG4gICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgb3BlbkRlcGVuZGVudHMubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgIG9wZW5EZXBlbmRlbnRzW2luZGV4XS5pc0FjdGl2ZSA9IGZhbHNlXG4gICAgICB9XG4gICAgfSxcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2V0T3BlbkRlcGVuZGVudHMgKCk6IGFueVtdIHtcbiAgICAgIGlmICh0aGlzLmNsb3NlRGVwZW5kZW50cykgcmV0dXJuIHNlYXJjaENoaWxkcmVuKHRoaXMuJGNoaWxkcmVuKVxuXG4gICAgICByZXR1cm4gW11cbiAgICB9LFxuICAgIGdldE9wZW5EZXBlbmRlbnRFbGVtZW50cyAoKTogSFRNTEVsZW1lbnRbXSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBbXVxuICAgICAgY29uc3Qgb3BlbkRlcGVuZGVudHMgPSB0aGlzLmdldE9wZW5EZXBlbmRlbnRzKClcblxuICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IG9wZW5EZXBlbmRlbnRzLmxlbmd0aDsgaW5kZXgrKykge1xuICAgICAgICByZXN1bHQucHVzaCguLi5vcGVuRGVwZW5kZW50c1tpbmRleF0uZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMoKSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHJlc3VsdFxuICAgIH0sXG4gICAgZ2V0Q2xpY2thYmxlRGVwZW5kZW50RWxlbWVudHMgKCk6IEhUTUxFbGVtZW50W10ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gW3RoaXMuJGVsXVxuICAgICAgaWYgKHRoaXMuJHJlZnMuY29udGVudCkgcmVzdWx0LnB1c2godGhpcy4kcmVmcy5jb250ZW50KVxuICAgICAgaWYgKHRoaXMub3ZlcmxheSkgcmVzdWx0LnB1c2godGhpcy5vdmVybGF5LiRlbCBhcyBIVE1MRWxlbWVudClcbiAgICAgIHJlc3VsdC5wdXNoKC4uLnRoaXMuZ2V0T3BlbkRlcGVuZGVudEVsZW1lbnRzKCkpXG5cbiAgICAgIHJldHVybiByZXN1bHRcbiAgICB9LFxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///143\n')},function(module,exports,__webpack_require__){eval(';(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(16));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function (undefined) {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var Base = C_lib.Base;\n\t var X32WordArray = C_lib.WordArray;\n\n\t /**\n\t * x64 namespace.\n\t */\n\t var C_x64 = C.x64 = {};\n\n\t /**\n\t * A 64-bit word.\n\t */\n\t var X64Word = C_x64.Word = Base.extend({\n\t /**\n\t * Initializes a newly created 64-bit word.\n\t *\n\t * @param {number} high The high 32 bits.\n\t * @param {number} low The low 32 bits.\n\t *\n\t * @example\n\t *\n\t * var x64Word = CryptoJS.x64.Word.create(0x00010203, 0x04050607);\n\t */\n\t init: function (high, low) {\n\t this.high = high;\n\t this.low = low;\n\t }\n\n\t /**\n\t * Bitwise NOTs this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after negating.\n\t *\n\t * @example\n\t *\n\t * var negated = x64Word.not();\n\t */\n\t // not: function () {\n\t // var high = ~this.high;\n\t // var low = ~this.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Bitwise ANDs this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to AND with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after ANDing.\n\t *\n\t * @example\n\t *\n\t * var anded = x64Word.and(anotherX64Word);\n\t */\n\t // and: function (word) {\n\t // var high = this.high & word.high;\n\t // var low = this.low & word.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Bitwise ORs this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to OR with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after ORing.\n\t *\n\t * @example\n\t *\n\t * var ored = x64Word.or(anotherX64Word);\n\t */\n\t // or: function (word) {\n\t // var high = this.high | word.high;\n\t // var low = this.low | word.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Bitwise XORs this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to XOR with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after XORing.\n\t *\n\t * @example\n\t *\n\t * var xored = x64Word.xor(anotherX64Word);\n\t */\n\t // xor: function (word) {\n\t // var high = this.high ^ word.high;\n\t // var low = this.low ^ word.low;\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Shifts this word n bits to the left.\n\t *\n\t * @param {number} n The number of bits to shift.\n\t *\n\t * @return {X64Word} A new x64-Word object after shifting.\n\t *\n\t * @example\n\t *\n\t * var shifted = x64Word.shiftL(25);\n\t */\n\t // shiftL: function (n) {\n\t // if (n < 32) {\n\t // var high = (this.high << n) | (this.low >>> (32 - n));\n\t // var low = this.low << n;\n\t // } else {\n\t // var high = this.low << (n - 32);\n\t // var low = 0;\n\t // }\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Shifts this word n bits to the right.\n\t *\n\t * @param {number} n The number of bits to shift.\n\t *\n\t * @return {X64Word} A new x64-Word object after shifting.\n\t *\n\t * @example\n\t *\n\t * var shifted = x64Word.shiftR(7);\n\t */\n\t // shiftR: function (n) {\n\t // if (n < 32) {\n\t // var low = (this.low >>> n) | (this.high << (32 - n));\n\t // var high = this.high >>> n;\n\t // } else {\n\t // var low = this.high >>> (n - 32);\n\t // var high = 0;\n\t // }\n\n\t // return X64Word.create(high, low);\n\t // },\n\n\t /**\n\t * Rotates this word n bits to the left.\n\t *\n\t * @param {number} n The number of bits to rotate.\n\t *\n\t * @return {X64Word} A new x64-Word object after rotating.\n\t *\n\t * @example\n\t *\n\t * var rotated = x64Word.rotL(25);\n\t */\n\t // rotL: function (n) {\n\t // return this.shiftL(n).or(this.shiftR(64 - n));\n\t // },\n\n\t /**\n\t * Rotates this word n bits to the right.\n\t *\n\t * @param {number} n The number of bits to rotate.\n\t *\n\t * @return {X64Word} A new x64-Word object after rotating.\n\t *\n\t * @example\n\t *\n\t * var rotated = x64Word.rotR(7);\n\t */\n\t // rotR: function (n) {\n\t // return this.shiftR(n).or(this.shiftL(64 - n));\n\t // },\n\n\t /**\n\t * Adds this word with the passed word.\n\t *\n\t * @param {X64Word} word The x64-Word to add with this word.\n\t *\n\t * @return {X64Word} A new x64-Word object after adding.\n\t *\n\t * @example\n\t *\n\t * var added = x64Word.add(anotherX64Word);\n\t */\n\t // add: function (word) {\n\t // var low = (this.low + word.low) | 0;\n\t // var carry = (low >>> 0) < (this.low >>> 0) ? 1 : 0;\n\t // var high = (this.high + word.high + carry) | 0;\n\n\t // return X64Word.create(high, low);\n\t // }\n\t });\n\n\t /**\n\t * An array of 64-bit words.\n\t *\n\t * @property {Array} words The array of CryptoJS.x64.Word objects.\n\t * @property {number} sigBytes The number of significant bytes in this word array.\n\t */\n\t var X64WordArray = C_x64.WordArray = Base.extend({\n\t /**\n\t * Initializes a newly created word array.\n\t *\n\t * @param {Array} words (Optional) An array of CryptoJS.x64.Word objects.\n\t * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.x64.WordArray.create();\n\t *\n\t * var wordArray = CryptoJS.x64.WordArray.create([\n\t * CryptoJS.x64.Word.create(0x00010203, 0x04050607),\n\t * CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f)\n\t * ]);\n\t *\n\t * var wordArray = CryptoJS.x64.WordArray.create([\n\t * CryptoJS.x64.Word.create(0x00010203, 0x04050607),\n\t * CryptoJS.x64.Word.create(0x18191a1b, 0x1c1d1e1f)\n\t * ], 10);\n\t */\n\t init: function (words, sigBytes) {\n\t words = this.words = words || [];\n\n\t if (sigBytes != undefined) {\n\t this.sigBytes = sigBytes;\n\t } else {\n\t this.sigBytes = words.length * 8;\n\t }\n\t },\n\n\t /**\n\t * Converts this 64-bit word array to a 32-bit word array.\n\t *\n\t * @return {CryptoJS.lib.WordArray} This word array\'s data as a 32-bit word array.\n\t *\n\t * @example\n\t *\n\t * var x32WordArray = x64WordArray.toX32();\n\t */\n\t toX32: function () {\n\t // Shortcuts\n\t var x64Words = this.words;\n\t var x64WordsLength = x64Words.length;\n\n\t // Convert\n\t var x32Words = [];\n\t for (var i = 0; i < x64WordsLength; i++) {\n\t var x64Word = x64Words[i];\n\t x32Words.push(x64Word.high);\n\t x32Words.push(x64Word.low);\n\t }\n\n\t return X32WordArray.create(x32Words, this.sigBytes);\n\t },\n\n\t /**\n\t * Creates a copy of this word array.\n\t *\n\t * @return {X64WordArray} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = x64WordArray.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\n\t // Clone "words" array\n\t var words = clone.words = this.words.slice(0);\n\n\t // Clone each X64Word object\n\t var wordsLength = words.length;\n\t for (var i = 0; i < wordsLength; i++) {\n\t words[i] = words[i].clone();\n\t }\n\n\t return clone;\n\t }\n\t });\n\t}());\n\n\n\treturn CryptoJS;\n\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3J5cHRvLWpzL3g2NC1jb3JlLmpzPzMyNTIiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQ0FBQztBQUNELEtBQUssSUFBMkI7QUFDaEM7QUFDQSxxQ0FBcUMsbUJBQU8sQ0FBQyxFQUFRO0FBQ3JEO0FBQ0EsTUFBTSxFQU9KO0FBQ0YsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQixvQkFBb0IsT0FBTztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLFFBQVE7QUFDNUI7QUFDQSxxQkFBcUIsUUFBUTtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0EsYUFBYTs7QUFFYjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsUUFBUTtBQUM1QjtBQUNBLHFCQUFxQixRQUFRO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixRQUFRO0FBQzVCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0Esb0JBQW9CLE9BQU87QUFDM0I7QUFDQSxxQkFBcUIsUUFBUTtBQUM3QjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxpQkFBaUI7QUFDakI7QUFDQTtBQUNBOztBQUVBO0FBQ0EsYUFBYTs7QUFFYjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQjtBQUNBLHFCQUFxQixRQUFRO0FBQzdCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLGlCQUFpQjtBQUNqQjtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixPQUFPO0FBQzNCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixPQUFPO0FBQzNCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxhQUFhOztBQUViO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixRQUFRO0FBQzVCO0FBQ0EscUJBQXFCLFFBQVE7QUFDN0I7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxNQUFNOztBQUVOO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixNQUFNO0FBQ3pCLG1CQUFtQixPQUFPO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsTUFBTTtBQUMxQixvQkFBb0IsT0FBTztBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxjQUFjO0FBQ2Q7QUFDQTtBQUNBLFVBQVU7O0FBRVY7QUFDQTtBQUNBO0FBQ0EscUJBQXFCLHVCQUF1QjtBQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDRCQUE0QixvQkFBb0I7QUFDaEQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxVQUFVOztBQUVWO0FBQ0E7QUFDQTtBQUNBLHFCQUFxQixhQUFhO0FBQ2xDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLDRCQUE0QixpQkFBaUI7QUFDN0M7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOLEVBQUU7OztBQUdGOztBQUVBLENBQUMiLCJmaWxlIjoiMTQ0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiOyhmdW5jdGlvbiAocm9vdCwgZmFjdG9yeSkge1xuXHRpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIpIHtcblx0XHQvLyBDb21tb25KU1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cyA9IGZhY3RvcnkocmVxdWlyZShcIi4vY29yZVwiKSk7XG5cdH1cblx0ZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gXCJmdW5jdGlvblwiICYmIGRlZmluZS5hbWQpIHtcblx0XHQvLyBBTURcblx0XHRkZWZpbmUoW1wiLi9jb3JlXCJdLCBmYWN0b3J5KTtcblx0fVxuXHRlbHNlIHtcblx0XHQvLyBHbG9iYWwgKGJyb3dzZXIpXG5cdFx0ZmFjdG9yeShyb290LkNyeXB0b0pTKTtcblx0fVxufSh0aGlzLCBmdW5jdGlvbiAoQ3J5cHRvSlMpIHtcblxuXHQoZnVuY3Rpb24gKHVuZGVmaW5lZCkge1xuXHQgICAgLy8gU2hvcnRjdXRzXG5cdCAgICB2YXIgQyA9IENyeXB0b0pTO1xuXHQgICAgdmFyIENfbGliID0gQy5saWI7XG5cdCAgICB2YXIgQmFzZSA9IENfbGliLkJhc2U7XG5cdCAgICB2YXIgWDMyV29yZEFycmF5ID0gQ19saWIuV29yZEFycmF5O1xuXG5cdCAgICAvKipcblx0ICAgICAqIHg2NCBuYW1lc3BhY2UuXG5cdCAgICAgKi9cblx0ICAgIHZhciBDX3g2NCA9IEMueDY0ID0ge307XG5cblx0ICAgIC8qKlxuXHQgICAgICogQSA2NC1iaXQgd29yZC5cblx0ICAgICAqL1xuXHQgICAgdmFyIFg2NFdvcmQgPSBDX3g2NC5Xb3JkID0gQmFzZS5leHRlbmQoe1xuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIEluaXRpYWxpemVzIGEgbmV3bHkgY3JlYXRlZCA2NC1iaXQgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBwYXJhbSB7bnVtYmVyfSBoaWdoIFRoZSBoaWdoIDMyIGJpdHMuXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IGxvdyBUaGUgbG93IDMyIGJpdHMuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB4NjRXb3JkID0gQ3J5cHRvSlMueDY0LldvcmQuY3JlYXRlKDB4MDAwMTAyMDMsIDB4MDQwNTA2MDcpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIGluaXQ6IGZ1bmN0aW9uIChoaWdoLCBsb3cpIHtcblx0ICAgICAgICAgICAgdGhpcy5oaWdoID0gaGlnaDtcblx0ICAgICAgICAgICAgdGhpcy5sb3cgPSBsb3c7XG5cdCAgICAgICAgfVxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogQml0d2lzZSBOT1RzIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBuZWdhdGluZy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIG5lZ2F0ZWQgPSB4NjRXb3JkLm5vdCgpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIG5vdDogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IH50aGlzLmhpZ2g7XG5cdCAgICAgICAgICAgIC8vIHZhciBsb3cgPSB+dGhpcy5sb3c7XG5cblx0ICAgICAgICAgICAgLy8gcmV0dXJuIFg2NFdvcmQuY3JlYXRlKGhpZ2gsIGxvdyk7XG5cdCAgICAgICAgLy8gfSxcblxuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIEJpdHdpc2UgQU5EcyB0aGlzIHdvcmQgd2l0aCB0aGUgcGFzc2VkIHdvcmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge1g2NFdvcmR9IHdvcmQgVGhlIHg2NC1Xb3JkIHRvIEFORCB3aXRoIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBBTkRpbmcuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciBhbmRlZCA9IHg2NFdvcmQuYW5kKGFub3RoZXJYNjRXb3JkKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBhbmQ6IGZ1bmN0aW9uICh3b3JkKSB7XG5cdCAgICAgICAgICAgIC8vIHZhciBoaWdoID0gdGhpcy5oaWdoICYgd29yZC5oaWdoO1xuXHQgICAgICAgICAgICAvLyB2YXIgbG93ID0gdGhpcy5sb3cgJiB3b3JkLmxvdztcblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogQml0d2lzZSBPUnMgdGhpcyB3b3JkIHdpdGggdGhlIHBhc3NlZCB3b3JkLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtYNjRXb3JkfSB3b3JkIFRoZSB4NjQtV29yZCB0byBPUiB3aXRoIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBPUmluZy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIG9yZWQgPSB4NjRXb3JkLm9yKGFub3RoZXJYNjRXb3JkKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBvcjogZnVuY3Rpb24gKHdvcmQpIHtcblx0ICAgICAgICAgICAgLy8gdmFyIGhpZ2ggPSB0aGlzLmhpZ2ggfCB3b3JkLmhpZ2g7XG5cdCAgICAgICAgICAgIC8vIHZhciBsb3cgPSB0aGlzLmxvdyB8IHdvcmQubG93O1xuXG5cdCAgICAgICAgICAgIC8vIHJldHVybiBYNjRXb3JkLmNyZWF0ZShoaWdoLCBsb3cpO1xuXHQgICAgICAgIC8vIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBCaXR3aXNlIFhPUnMgdGhpcyB3b3JkIHdpdGggdGhlIHBhc3NlZCB3b3JkLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtYNjRXb3JkfSB3b3JkIFRoZSB4NjQtV29yZCB0byBYT1Igd2l0aCB0aGlzIHdvcmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtYNjRXb3JkfSBBIG5ldyB4NjQtV29yZCBvYmplY3QgYWZ0ZXIgWE9SaW5nLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQGV4YW1wbGVcblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqICAgICB2YXIgeG9yZWQgPSB4NjRXb3JkLnhvcihhbm90aGVyWDY0V29yZCk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgLy8geG9yOiBmdW5jdGlvbiAod29yZCkge1xuXHQgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IHRoaXMuaGlnaCBeIHdvcmQuaGlnaDtcblx0ICAgICAgICAgICAgLy8gdmFyIGxvdyA9IHRoaXMubG93IF4gd29yZC5sb3c7XG5cblx0ICAgICAgICAgICAgLy8gcmV0dXJuIFg2NFdvcmQuY3JlYXRlKGhpZ2gsIGxvdyk7XG5cdCAgICAgICAgLy8gfSxcblxuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIFNoaWZ0cyB0aGlzIHdvcmQgbiBiaXRzIHRvIHRoZSBsZWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IG4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHNoaWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHJldHVybiB7WDY0V29yZH0gQSBuZXcgeDY0LVdvcmQgb2JqZWN0IGFmdGVyIHNoaWZ0aW5nLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQGV4YW1wbGVcblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqICAgICB2YXIgc2hpZnRlZCA9IHg2NFdvcmQuc2hpZnRMKDI1KTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBzaGlmdEw6IGZ1bmN0aW9uIChuKSB7XG5cdCAgICAgICAgICAgIC8vIGlmIChuIDwgMzIpIHtcblx0ICAgICAgICAgICAgICAgIC8vIHZhciBoaWdoID0gKHRoaXMuaGlnaCA8PCBuKSB8ICh0aGlzLmxvdyA+Pj4gKDMyIC0gbikpO1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9IHRoaXMubG93IDw8IG47XG5cdCAgICAgICAgICAgIC8vIH0gZWxzZSB7XG5cdCAgICAgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IHRoaXMubG93IDw8IChuIC0gMzIpO1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9IDA7XG5cdCAgICAgICAgICAgIC8vIH1cblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogU2hpZnRzIHRoaXMgd29yZCBuIGJpdHMgdG8gdGhlIHJpZ2h0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IG4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHNoaWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHJldHVybiB7WDY0V29yZH0gQSBuZXcgeDY0LVdvcmQgb2JqZWN0IGFmdGVyIHNoaWZ0aW5nLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQGV4YW1wbGVcblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqICAgICB2YXIgc2hpZnRlZCA9IHg2NFdvcmQuc2hpZnRSKDcpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIHNoaWZ0UjogZnVuY3Rpb24gKG4pIHtcblx0ICAgICAgICAgICAgLy8gaWYgKG4gPCAzMikge1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9ICh0aGlzLmxvdyA+Pj4gbikgfCAodGhpcy5oaWdoIDw8ICgzMiAtIG4pKTtcblx0ICAgICAgICAgICAgICAgIC8vIHZhciBoaWdoID0gdGhpcy5oaWdoID4+PiBuO1xuXHQgICAgICAgICAgICAvLyB9IGVsc2Uge1xuXHQgICAgICAgICAgICAgICAgLy8gdmFyIGxvdyA9IHRoaXMuaGlnaCA+Pj4gKG4gLSAzMik7XG5cdCAgICAgICAgICAgICAgICAvLyB2YXIgaGlnaCA9IDA7XG5cdCAgICAgICAgICAgIC8vIH1cblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogUm90YXRlcyB0aGlzIHdvcmQgbiBiaXRzIHRvIHRoZSBsZWZ0LlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IG4gVGhlIG51bWJlciBvZiBiaXRzIHRvIHJvdGF0ZS5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciByb3RhdGluZy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIHJvdGF0ZWQgPSB4NjRXb3JkLnJvdEwoMjUpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIHJvdEw6IGZ1bmN0aW9uIChuKSB7XG5cdCAgICAgICAgICAgIC8vIHJldHVybiB0aGlzLnNoaWZ0TChuKS5vcih0aGlzLnNoaWZ0Uig2NCAtIG4pKTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogUm90YXRlcyB0aGlzIHdvcmQgbiBiaXRzIHRvIHRoZSByaWdodC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBwYXJhbSB7bnVtYmVyfSBuIFRoZSBudW1iZXIgb2YgYml0cyB0byByb3RhdGUuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtYNjRXb3JkfSBBIG5ldyB4NjQtV29yZCBvYmplY3QgYWZ0ZXIgcm90YXRpbmcuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciByb3RhdGVkID0geDY0V29yZC5yb3RSKDcpO1xuXHQgICAgICAgICAqL1xuXHQgICAgICAgIC8vIHJvdFI6IGZ1bmN0aW9uIChuKSB7XG5cdCAgICAgICAgICAgIC8vIHJldHVybiB0aGlzLnNoaWZ0UihuKS5vcih0aGlzLnNoaWZ0TCg2NCAtIG4pKTtcblx0ICAgICAgICAvLyB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogQWRkcyB0aGlzIHdvcmQgd2l0aCB0aGUgcGFzc2VkIHdvcmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge1g2NFdvcmR9IHdvcmQgVGhlIHg2NC1Xb3JkIHRvIGFkZCB3aXRoIHRoaXMgd29yZC5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEByZXR1cm4ge1g2NFdvcmR9IEEgbmV3IHg2NC1Xb3JkIG9iamVjdCBhZnRlciBhZGRpbmcuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciBhZGRlZCA9IHg2NFdvcmQuYWRkKGFub3RoZXJYNjRXb3JkKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICAvLyBhZGQ6IGZ1bmN0aW9uICh3b3JkKSB7XG5cdCAgICAgICAgICAgIC8vIHZhciBsb3cgPSAodGhpcy5sb3cgKyB3b3JkLmxvdykgfCAwO1xuXHQgICAgICAgICAgICAvLyB2YXIgY2FycnkgPSAobG93ID4+PiAwKSA8ICh0aGlzLmxvdyA+Pj4gMCkgPyAxIDogMDtcblx0ICAgICAgICAgICAgLy8gdmFyIGhpZ2ggPSAodGhpcy5oaWdoICsgd29yZC5oaWdoICsgY2FycnkpIHwgMDtcblxuXHQgICAgICAgICAgICAvLyByZXR1cm4gWDY0V29yZC5jcmVhdGUoaGlnaCwgbG93KTtcblx0ICAgICAgICAvLyB9XG5cdCAgICB9KTtcblxuXHQgICAgLyoqXG5cdCAgICAgKiBBbiBhcnJheSBvZiA2NC1iaXQgd29yZHMuXG5cdCAgICAgKlxuXHQgICAgICogQHByb3BlcnR5IHtBcnJheX0gd29yZHMgVGhlIGFycmF5IG9mIENyeXB0b0pTLng2NC5Xb3JkIG9iamVjdHMuXG5cdCAgICAgKiBAcHJvcGVydHkge251bWJlcn0gc2lnQnl0ZXMgVGhlIG51bWJlciBvZiBzaWduaWZpY2FudCBieXRlcyBpbiB0aGlzIHdvcmQgYXJyYXkuXG5cdCAgICAgKi9cblx0ICAgIHZhciBYNjRXb3JkQXJyYXkgPSBDX3g2NC5Xb3JkQXJyYXkgPSBCYXNlLmV4dGVuZCh7XG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogSW5pdGlhbGl6ZXMgYSBuZXdseSBjcmVhdGVkIHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge0FycmF5fSB3b3JkcyAoT3B0aW9uYWwpIEFuIGFycmF5IG9mIENyeXB0b0pTLng2NC5Xb3JkIG9iamVjdHMuXG5cdCAgICAgICAgICogQHBhcmFtIHtudW1iZXJ9IHNpZ0J5dGVzIChPcHRpb25hbCkgVGhlIG51bWJlciBvZiBzaWduaWZpY2FudCBieXRlcyBpbiB0aGUgd29yZHMuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB3b3JkQXJyYXkgPSBDcnlwdG9KUy54NjQuV29yZEFycmF5LmNyZWF0ZSgpO1xuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB3b3JkQXJyYXkgPSBDcnlwdG9KUy54NjQuV29yZEFycmF5LmNyZWF0ZShbXG5cdCAgICAgICAgICogICAgICAgICBDcnlwdG9KUy54NjQuV29yZC5jcmVhdGUoMHgwMDAxMDIwMywgMHgwNDA1MDYwNyksXG5cdCAgICAgICAgICogICAgICAgICBDcnlwdG9KUy54NjQuV29yZC5jcmVhdGUoMHgxODE5MWExYiwgMHgxYzFkMWUxZilcblx0ICAgICAgICAgKiAgICAgXSk7XG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIHdvcmRBcnJheSA9IENyeXB0b0pTLng2NC5Xb3JkQXJyYXkuY3JlYXRlKFtcblx0ICAgICAgICAgKiAgICAgICAgIENyeXB0b0pTLng2NC5Xb3JkLmNyZWF0ZSgweDAwMDEwMjAzLCAweDA0MDUwNjA3KSxcblx0ICAgICAgICAgKiAgICAgICAgIENyeXB0b0pTLng2NC5Xb3JkLmNyZWF0ZSgweDE4MTkxYTFiLCAweDFjMWQxZTFmKVxuXHQgICAgICAgICAqICAgICBdLCAxMCk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgaW5pdDogZnVuY3Rpb24gKHdvcmRzLCBzaWdCeXRlcykge1xuXHQgICAgICAgICAgICB3b3JkcyA9IHRoaXMud29yZHMgPSB3b3JkcyB8fCBbXTtcblxuXHQgICAgICAgICAgICBpZiAoc2lnQnl0ZXMgIT0gdW5kZWZpbmVkKSB7XG5cdCAgICAgICAgICAgICAgICB0aGlzLnNpZ0J5dGVzID0gc2lnQnl0ZXM7XG5cdCAgICAgICAgICAgIH0gZWxzZSB7XG5cdCAgICAgICAgICAgICAgICB0aGlzLnNpZ0J5dGVzID0gd29yZHMubGVuZ3RoICogODtcblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBDb252ZXJ0cyB0aGlzIDY0LWJpdCB3b3JkIGFycmF5IHRvIGEgMzItYml0IHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtDcnlwdG9KUy5saWIuV29yZEFycmF5fSBUaGlzIHdvcmQgYXJyYXkncyBkYXRhIGFzIGEgMzItYml0IHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciB4MzJXb3JkQXJyYXkgPSB4NjRXb3JkQXJyYXkudG9YMzIoKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICB0b1gzMjogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICAvLyBTaG9ydGN1dHNcblx0ICAgICAgICAgICAgdmFyIHg2NFdvcmRzID0gdGhpcy53b3Jkcztcblx0ICAgICAgICAgICAgdmFyIHg2NFdvcmRzTGVuZ3RoID0geDY0V29yZHMubGVuZ3RoO1xuXG5cdCAgICAgICAgICAgIC8vIENvbnZlcnRcblx0ICAgICAgICAgICAgdmFyIHgzMldvcmRzID0gW107XG5cdCAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgeDY0V29yZHNMZW5ndGg7IGkrKykge1xuXHQgICAgICAgICAgICAgICAgdmFyIHg2NFdvcmQgPSB4NjRXb3Jkc1tpXTtcblx0ICAgICAgICAgICAgICAgIHgzMldvcmRzLnB1c2goeDY0V29yZC5oaWdoKTtcblx0ICAgICAgICAgICAgICAgIHgzMldvcmRzLnB1c2goeDY0V29yZC5sb3cpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgcmV0dXJuIFgzMldvcmRBcnJheS5jcmVhdGUoeDMyV29yZHMsIHRoaXMuc2lnQnl0ZXMpO1xuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBDcmVhdGVzIGEgY29weSBvZiB0aGlzIHdvcmQgYXJyYXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtYNjRXb3JkQXJyYXl9IFRoZSBjbG9uZS5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIGNsb25lID0geDY0V29yZEFycmF5LmNsb25lKCk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgY2xvbmU6IGZ1bmN0aW9uICgpIHtcblx0ICAgICAgICAgICAgdmFyIGNsb25lID0gQmFzZS5jbG9uZS5jYWxsKHRoaXMpO1xuXG5cdCAgICAgICAgICAgIC8vIENsb25lIFwid29yZHNcIiBhcnJheVxuXHQgICAgICAgICAgICB2YXIgd29yZHMgPSBjbG9uZS53b3JkcyA9IHRoaXMud29yZHMuc2xpY2UoMCk7XG5cblx0ICAgICAgICAgICAgLy8gQ2xvbmUgZWFjaCBYNjRXb3JkIG9iamVjdFxuXHQgICAgICAgICAgICB2YXIgd29yZHNMZW5ndGggPSB3b3Jkcy5sZW5ndGg7XG5cdCAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgd29yZHNMZW5ndGg7IGkrKykge1xuXHQgICAgICAgICAgICAgICAgd29yZHNbaV0gPSB3b3Jkc1tpXS5jbG9uZSgpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgcmV0dXJuIGNsb25lO1xuXHQgICAgICAgIH1cblx0ICAgIH0pO1xuXHR9KCkpO1xuXG5cblx0cmV0dXJuIENyeXB0b0pTO1xuXG59KSk7Il0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///144\n')},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es6_string_small_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(235);\n/* harmony import */ var core_js_modules_es6_string_small_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_string_small_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);\n\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"].extend({\n name: 'sizeable',\n props: {\n large: Boolean,\n small: Boolean,\n xLarge: Boolean,\n xSmall: Boolean\n },\n computed: {\n medium: function medium() {\n return Boolean(!this.xSmall && !this.small && !this.large && !this.xLarge);\n },\n sizeableClasses: function sizeableClasses() {\n return {\n 'v-size--x-small': this.xSmall,\n 'v-size--small': this.small,\n 'v-size--default': this.medium,\n 'v-size--large': this.large,\n 'v-size--x-large': this.xLarge\n };\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9zaXplYWJsZS9pbmRleC50cz8xYTFhIl0sIm5hbWVzIjpbIlZ1ZSIsImV4dGVuZCIsIm5hbWUiLCJwcm9wcyIsImxhcmdlIiwiQm9vbGVhbiIsInNtYWxsIiwieExhcmdlIiwieFNtYWxsIiwiY29tcHV0ZWQiLCJtZWRpdW0iLCJzaXplYWJsZUNsYXNzZXMiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUVlQSw0R0FBRyxDQUFDQyxNQUFKLENBQVc7QUFDeEJDLE1BQUksRUFBRSxVQURrQjtBQUd4QkMsT0FBSyxFQUFFO0FBQ0xDLFNBQUssRUFBRUMsT0FERjtBQUVMQyxTQUFLLEVBQUVELE9BRkY7QUFHTEUsVUFBTSxFQUFFRixPQUhIO0FBSUxHLFVBQU0sRUFBRUg7QUFKSCxHQUhpQjtBQVV4QkksVUFBUSxFQUFFO0FBQ1JDLFVBRFEsb0JBQ0Y7QUFDSixhQUFPTCxPQUFPLENBQ1osQ0FBQyxLQUFLRyxNQUFOLElBQ0EsQ0FBQyxLQUFLRixLQUROLElBRUEsQ0FBQyxLQUFLRixLQUZOLElBR0EsQ0FBQyxLQUFLRyxNQUpNLENBQWQ7QUFGTTtBQVNSSSxtQkFUUSw2QkFTTztBQUNiLGFBQU87QUFDTCwyQkFBbUIsS0FBS0gsTUFEbkI7QUFFTCx5QkFBaUIsS0FBS0YsS0FGakI7QUFHTCwyQkFBbUIsS0FBS0ksTUFIbkI7QUFJTCx5QkFBaUIsS0FBS04sS0FKakI7QUFLTCwyQkFBbUIsS0FBS0c7QUFMbkIsT0FBUDtBQU9EO0FBakJPO0FBVmMsQ0FBWCxDQUFmIiwiZmlsZSI6IjE0Ni5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBWdWUgZnJvbSAndnVlJ1xuXG5leHBvcnQgZGVmYXVsdCBWdWUuZXh0ZW5kKHtcbiAgbmFtZTogJ3NpemVhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGxhcmdlOiBCb29sZWFuLFxuICAgIHNtYWxsOiBCb29sZWFuLFxuICAgIHhMYXJnZTogQm9vbGVhbixcbiAgICB4U21hbGw6IEJvb2xlYW4sXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBtZWRpdW0gKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIEJvb2xlYW4oXG4gICAgICAgICF0aGlzLnhTbWFsbCAmJlxuICAgICAgICAhdGhpcy5zbWFsbCAmJlxuICAgICAgICAhdGhpcy5sYXJnZSAmJlxuICAgICAgICAhdGhpcy54TGFyZ2VcbiAgICAgIClcbiAgICB9LFxuICAgIHNpemVhYmxlQ2xhc3NlcyAoKTogb2JqZWN0IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICd2LXNpemUtLXgtc21hbGwnOiB0aGlzLnhTbWFsbCxcbiAgICAgICAgJ3Ytc2l6ZS0tc21hbGwnOiB0aGlzLnNtYWxsLFxuICAgICAgICAndi1zaXplLS1kZWZhdWx0JzogdGhpcy5tZWRpdW0sXG4gICAgICAgICd2LXNpemUtLWxhcmdlJzogdGhpcy5sYXJnZSxcbiAgICAgICAgJ3Ytc2l6ZS0teC1sYXJnZSc6IHRoaXMueExhcmdlLFxuICAgICAgfVxuICAgIH0sXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///146\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);\n// Utilities\n // Types\n\n\n/**\n * Bootable\n * @mixin\n *\n * Used to add lazy content functionality to components\n * Looks for change in "isActive" to automatically boot\n * Otherwise can be set manually\n */\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].extend().extend({\n name: \'bootable\',\n props: {\n eager: Boolean\n },\n data: function data() {\n return {\n isBooted: false\n };\n },\n computed: {\n hasContent: function hasContent() {\n return this.isBooted || this.eager || this.isActive;\n }\n },\n watch: {\n isActive: function isActive() {\n this.isBooted = true;\n }\n },\n created: function created() {\n /* istanbul ignore next */\n if (\'lazy\' in this.$attrs) {\n Object(_util_console__WEBPACK_IMPORTED_MODULE_0__[/* removed */ "e"])(\'lazy\', this);\n }\n },\n methods: {\n showLazyContent: function showLazyContent(content) {\n return this.hasContent && content ? content() : [this.$createElement()];\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9ib290YWJsZS9pbmRleC50cz8yMDM3Il0sIm5hbWVzIjpbIlZ1ZSIsImV4dGVuZCIsIm5hbWUiLCJwcm9wcyIsImVhZ2VyIiwiQm9vbGVhbiIsImRhdGEiLCJpc0Jvb3RlZCIsImNvbXB1dGVkIiwiaGFzQ29udGVudCIsImlzQWN0aXZlIiwid2F0Y2giLCJjcmVhdGVkIiwiJGF0dHJzIiwicmVtb3ZlZCIsIm1ldGhvZHMiLCJzaG93TGF6eUNvbnRlbnQiLCJjb250ZW50IiwiJGNyZWF0ZUVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUFBO0FBQUE7QUFBQTtDQUdBOztBQUNBO0FBS0E7Ozs7Ozs7QUFPRzs7QUFDSDs7QUFDZUEsNEdBQUcsQ0FBQ0MsTUFBSixHQUErQkEsTUFBL0IsQ0FBc0M7QUFDbkRDLE1BQUksRUFBRSxVQUQ2QztBQUduREMsT0FBSyxFQUFFO0FBQ0xDLFNBQUssRUFBRUM7QUFERixHQUg0QztBQU9uREMsTUFBSSxFQUFFO0FBQUEsV0FBTztBQUNYQyxjQUFRLEVBQUU7QUFEQyxLQUFQO0FBQUEsR0FQNkM7QUFXbkRDLFVBQVEsRUFBRTtBQUNSQyxjQURRLHdCQUNFO0FBQ1IsYUFBTyxLQUFLRixRQUFMLElBQWlCLEtBQUtILEtBQXRCLElBQStCLEtBQUtNLFFBQTNDO0FBQ0Q7QUFITyxHQVh5QztBQWlCbkRDLE9BQUssRUFBRTtBQUNMRCxZQURLLHNCQUNHO0FBQ04sV0FBS0gsUUFBTCxHQUFnQixJQUFoQjtBQUNEO0FBSEksR0FqQjRDO0FBdUJuREssU0F2Qm1ELHFCQXVCNUM7QUFDTDtBQUNBLFFBQUksVUFBVSxLQUFLQyxNQUFuQixFQUEyQjtBQUN6QkMsMkVBQU8sQ0FBQyxNQUFELEVBQVMsSUFBVCxDQUFQO0FBQ0Q7QUEzQmdEO0FBOEJuREMsU0FBTyxFQUFFO0FBQ1BDLG1CQURPLDJCQUNVQyxPQURWLEVBQ2lDO0FBQ3RDLGFBQVEsS0FBS1IsVUFBTCxJQUFtQlEsT0FBbkIsR0FBOEJBLE9BQU8sRUFBckMsR0FBMEMsQ0FBQyxLQUFLQyxjQUFMLEVBQUQsQ0FBbEQ7QUFDRDtBQUhNO0FBOUIwQyxDQUF0QyxDQUFmIiwiZmlsZSI6IjE0Ny5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFV0aWxpdGllc1xuaW1wb3J0IHsgcmVtb3ZlZCB9IGZyb20gJy4uLy4uL3V0aWwvY29uc29sZSdcblxuLy8gVHlwZXNcbmltcG9ydCBWdWUsIHsgVk5vZGUgfSBmcm9tICd2dWUnXG5pbnRlcmZhY2UgVG9nZ2xlYWJsZSBleHRlbmRzIFZ1ZSB7XG4gIGlzQWN0aXZlPzogYm9vbGVhblxufVxuXG4vKipcbiAqIEJvb3RhYmxlXG4gKiBAbWl4aW5cbiAqXG4gKiBVc2VkIHRvIGFkZCBsYXp5IGNvbnRlbnQgZnVuY3Rpb25hbGl0eSB0byBjb21wb25lbnRzXG4gKiBMb29rcyBmb3IgY2hhbmdlIGluIFwiaXNBY3RpdmVcIiB0byBhdXRvbWF0aWNhbGx5IGJvb3RcbiAqIE90aGVyd2lzZSBjYW4gYmUgc2V0IG1hbnVhbGx5XG4gKi9cbi8qIEB2dWUvY29tcG9uZW50ICovXG5leHBvcnQgZGVmYXVsdCBWdWUuZXh0ZW5kPFZ1ZSAmIFRvZ2dsZWFibGU+KCkuZXh0ZW5kKHtcbiAgbmFtZTogJ2Jvb3RhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGVhZ2VyOiBCb29sZWFuLFxuICB9LFxuXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgaXNCb290ZWQ6IGZhbHNlLFxuICB9KSxcblxuICBjb21wdXRlZDoge1xuICAgIGhhc0NvbnRlbnQgKCk6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgICAgcmV0dXJuIHRoaXMuaXNCb290ZWQgfHwgdGhpcy5lYWdlciB8fCB0aGlzLmlzQWN0aXZlXG4gICAgfSxcbiAgfSxcblxuICB3YXRjaDoge1xuICAgIGlzQWN0aXZlICgpIHtcbiAgICAgIHRoaXMuaXNCb290ZWQgPSB0cnVlXG4gICAgfSxcbiAgfSxcblxuICBjcmVhdGVkICgpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGlmICgnbGF6eScgaW4gdGhpcy4kYXR0cnMpIHtcbiAgICAgIHJlbW92ZWQoJ2xhenknLCB0aGlzKVxuICAgIH1cbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgc2hvd0xhenlDb250ZW50IChjb250ZW50PzogKCkgPT4gVk5vZGVbXSk6IFZOb2RlW10ge1xuICAgICAgcmV0dXJuICh0aGlzLmhhc0NvbnRlbnQgJiYgY29udGVudCkgPyBjb250ZW50KCkgOiBbdGhpcy4kY3JlYXRlRWxlbWVudCgpXVxuICAgIH0sXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///147\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* unused harmony export Touch */\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);\n\n\nvar handleGesture = function handleGesture(wrapper) {\n var touchstartX = wrapper.touchstartX,\n touchendX = wrapper.touchendX,\n touchstartY = wrapper.touchstartY,\n touchendY = wrapper.touchendY;\n var dirRatio = 0.5;\n var minDistance = 16;\n wrapper.offsetX = touchendX - touchstartX;\n wrapper.offsetY = touchendY - touchstartY;\n\n if (Math.abs(wrapper.offsetY) < dirRatio * Math.abs(wrapper.offsetX)) {\n wrapper.left && touchendX < touchstartX - minDistance && wrapper.left(wrapper);\n wrapper.right && touchendX > touchstartX + minDistance && wrapper.right(wrapper);\n }\n\n if (Math.abs(wrapper.offsetX) < dirRatio * Math.abs(wrapper.offsetY)) {\n wrapper.up && touchendY < touchstartY - minDistance && wrapper.up(wrapper);\n wrapper.down && touchendY > touchstartY + minDistance && wrapper.down(wrapper);\n }\n};\n\nfunction _touchstart(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchstartX = touch.clientX;\n wrapper.touchstartY = touch.clientY;\n wrapper.start && wrapper.start(Object.assign(event, wrapper));\n}\n\nfunction _touchend(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchendX = touch.clientX;\n wrapper.touchendY = touch.clientY;\n wrapper.end && wrapper.end(Object.assign(event, wrapper));\n handleGesture(wrapper);\n}\n\nfunction _touchmove(event, wrapper) {\n var touch = event.changedTouches[0];\n wrapper.touchmoveX = touch.clientX;\n wrapper.touchmoveY = touch.clientY;\n wrapper.move && wrapper.move(Object.assign(event, wrapper));\n}\n\nfunction createHandlers(value) {\n var wrapper = {\n touchstartX: 0,\n touchstartY: 0,\n touchendX: 0,\n touchendY: 0,\n touchmoveX: 0,\n touchmoveY: 0,\n offsetX: 0,\n offsetY: 0,\n left: value.left,\n right: value.right,\n up: value.up,\n down: value.down,\n start: value.start,\n move: value.move,\n end: value.end\n };\n return {\n touchstart: function touchstart(e) {\n return _touchstart(e, wrapper);\n },\n touchend: function touchend(e) {\n return _touchend(e, wrapper);\n },\n touchmove: function touchmove(e) {\n return _touchmove(e, wrapper);\n }\n };\n}\n\nfunction inserted(el, binding, vnode) {\n var value = binding.value;\n var target = value.parent ? el.parentElement : el;\n var options = value.options || {\n passive: true\n }; // Needed to pass unit tests\n\n if (!target) return;\n var handlers = createHandlers(binding.value);\n target._touchHandlers = Object(target._touchHandlers);\n target._touchHandlers[vnode.context._uid] = handlers;\n Object(_util_helpers__WEBPACK_IMPORTED_MODULE_0__[/* keys */ "y"])(handlers).forEach(function (eventName) {\n target.addEventListener(eventName, handlers[eventName], options);\n });\n}\n\nfunction unbind(el, binding, vnode) {\n var target = binding.value.parent ? el.parentElement : el;\n if (!target || !target._touchHandlers) return;\n var handlers = target._touchHandlers[vnode.context._uid];\n Object(_util_helpers__WEBPACK_IMPORTED_MODULE_0__[/* keys */ "y"])(handlers).forEach(function (eventName) {\n target.removeEventListener(eventName, handlers[eventName]);\n });\n delete target._touchHandlers[vnode.context._uid];\n}\n\nvar Touch = {\n inserted: inserted,\n unbind: unbind\n};\n/* harmony default export */ __webpack_exports__["a"] = (Touch);//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2RpcmVjdGl2ZXMvdG91Y2gvaW5kZXgudHM/NGFmOSJdLCJuYW1lcyI6WyJoYW5kbGVHZXN0dXJlIiwidG91Y2hzdGFydFgiLCJ3cmFwcGVyIiwidG91Y2hlbmRYIiwidG91Y2hzdGFydFkiLCJ0b3VjaGVuZFkiLCJkaXJSYXRpbyIsIm1pbkRpc3RhbmNlIiwib2Zmc2V0WCIsIm9mZnNldFkiLCJNYXRoIiwiYWJzIiwibGVmdCIsInJpZ2h0IiwidXAiLCJkb3duIiwidG91Y2hzdGFydCIsImV2ZW50IiwidG91Y2giLCJjaGFuZ2VkVG91Y2hlcyIsImNsaWVudFgiLCJjbGllbnRZIiwic3RhcnQiLCJPYmplY3QiLCJhc3NpZ24iLCJ0b3VjaGVuZCIsImVuZCIsInRvdWNobW92ZSIsInRvdWNobW92ZVgiLCJ0b3VjaG1vdmVZIiwibW92ZSIsImNyZWF0ZUhhbmRsZXJzIiwidmFsdWUiLCJlIiwiaW5zZXJ0ZWQiLCJlbCIsImJpbmRpbmciLCJ2bm9kZSIsInRhcmdldCIsInBhcmVudCIsInBhcmVudEVsZW1lbnQiLCJvcHRpb25zIiwicGFzc2l2ZSIsImhhbmRsZXJzIiwiX3RvdWNoSGFuZGxlcnMiLCJjb250ZXh0IiwiX3VpZCIsImtleXMiLCJmb3JFYWNoIiwiYWRkRXZlbnRMaXN0ZW5lciIsImV2ZW50TmFtZSIsInVuYmluZCIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJUb3VjaCJdLCJtYXBwaW5ncyI6IkFBQ0E7QUFBQTtBQUFBOztBQWFBLElBQU1BLGFBQWEsR0FBSSxTQUFqQkEsYUFBaUIsUUFBRCxFQUEwQjtBQUM5QyxNQUFRQyxXQUFSLEdBQTJEQyxPQUEzRCxDQUFRRCxXQUFSO0FBQUEsTUFBcUJFLFNBQXJCLEdBQTJERCxPQUEzRCxDQUFxQkMsU0FBckI7QUFBQSxNQUFnQ0MsV0FBaEMsR0FBMkRGLE9BQTNELENBQWdDRSxXQUFoQztBQUFBLE1BQTZDQyxTQUE3QyxHQUEyREgsT0FBM0QsQ0FBNkNHLFNB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QUFNTyxLQUFLLEdBQUc7QUFDbkJuQixVQURtQixFQUNuQkEsUUFEbUI7QUFFbkJpQjtBQUZtQixDQUFkO0FBS1FFLDhEQUFmIiwiZmlsZSI6IjE0OC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZOb2RlRGlyZWN0aXZlLCBWTm9kZSB9IGZyb20gJ3Z1ZS90eXBlcy92bm9kZSdcbmltcG9ydCB7IGtleXMgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5pbXBvcnQgeyBUb3VjaEhhbmRsZXJzLCBUb3VjaFZhbHVlLCBUb3VjaFdyYXBwZXIgfSBmcm9tICd2dWV0aWZ5L3R5cGVzJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFRvdWNoU3RvcmVkSGFuZGxlcnMge1xuICB0b3VjaHN0YXJ0OiAoZTogVG91Y2hFdmVudCkgPT4gdm9pZFxuICB0b3VjaGVuZDogKGU6IFRvdWNoRXZlbnQpID0+IHZvaWRcbiAgdG91Y2htb3ZlOiAoZTogVG91Y2hFdmVudCkgPT4gdm9pZFxufVxuXG5pbnRlcmZhY2UgVG91Y2hWTm9kZURpcmVjdGl2ZSBleHRlbmRzIFZOb2RlRGlyZWN0aXZlIHtcbiAgdmFsdWU/OiBUb3VjaFZhbHVlXG59XG5cbmNvbnN0IGhhbmRsZUdlc3R1cmUgPSAod3JhcHBlcjogVG91Y2hXcmFwcGVyKSA9PiB7XG4gIGNvbnN0IHsgdG91Y2hzdGFydFgsIHRvdWNoZW5kWCwgdG91Y2hzdGFydFksIHRvdWNoZW5kWSB9ID0gd3JhcHBlclxuICBjb25zdCBkaXJSYXRpbyA9IDAuNVxuICBjb25zdCBtaW5EaXN0YW5jZSA9IDE2XG4gIHdyYXBwZXIub2Zmc2V0WCA9IHRvdWNoZW5kWCAtIHRvdWNoc3RhcnRYXG4gIHdyYXBwZXIub2Zmc2V0WSA9IHRvdWNoZW5kWSAtIHRvdWNoc3RhcnRZXG5cbiAgaWYgKE1hdGguYWJzKHdyYXBwZXIub2Zmc2V0WSkgPCBkaXJSYXRpbyAqIE1hdGguYWJzKHdyYXBwZXIub2Zmc2V0WCkpIHtcbiAgICB3cmFwcGVyLmxlZnQgJiYgKHRvdWNoZW5kWCA8IHRvdWNoc3RhcnRYIC0gbWluRGlzdGFuY2UpICYmIHdyYXBwZXIubGVmdCh3cmFwcGVyKVxuICAgIHdyYXBwZXIucmlnaHQgJiYgKHRvdWNoZW5kWCA+IHRvdWNoc3RhcnRYICsgbWluRGlzdGFuY2UpICYmIHdyYXBwZXIucmlnaHQod3JhcHBlcilcbiAgfVxuXG4gIGlmIChNYXRoLmFicyh3cmFwcGVyLm9mZnNldFgpIDwgZGlyUmF0aW8gKiBNYXRoLmFicyh3cmFwcGVyLm9mZnNldFkpKSB7XG4gICAgd3JhcHBlci51cCAmJiAodG91Y2hlbmRZIDwgdG91Y2hzdGFydFkgLSBtaW5EaXN0YW5jZSkgJiYgd3JhcHBlci51cCh3cmFwcGVyKVxuICAgIHdyYXBwZXIuZG93biAmJiAodG91Y2hlbmRZID4gdG91Y2hzdGFydFkgKyBtaW5EaXN0YW5jZSkgJiYgd3JhcHBlci5kb3duKHdyYXBwZXIpXG4gIH1cbn1cblxuZnVuY3Rpb24gdG91Y2hzdGFydCAoZXZlbnQ6IFRvdWNoRXZlbnQsIHdyYXBwZXI6IFRvdWNoV3JhcHBlcikge1xuICBjb25zdCB0b3VjaCA9IGV2ZW50LmNoYW5nZWRUb3VjaGVzWzBdXG4gIHdyYXBwZXIudG91Y2hzdGFydFggPSB0b3VjaC5jbGllbnRYXG4gIHdyYXBwZXIudG91Y2hzdGFydFkgPSB0b3VjaC5jbGllbnRZXG5cbiAgd3JhcHBlci5zdGFydCAmJlxuICAgIHdyYXBwZXIuc3RhcnQoT2JqZWN0LmFzc2lnbihldmVudCwgd3JhcHBlcikpXG59XG5cbmZ1bmN0aW9uIHRvdWNoZW5kIChldmVudDogVG91Y2hFdmVudCwgd3JhcHBlcjogVG91Y2hXcmFwcGVyKSB7XG4gIGNvbnN0IHRvdWNoID0gZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF1cbiAgd3JhcHBlci50b3VjaGVuZFggPSB0b3VjaC5jbGllbnRYXG4gIHdyYXBwZXIudG91Y2hlbmRZID0gdG91Y2guY2xpZW50WVxuXG4gIHdyYXBwZXIuZW5kICYmXG4gICAgd3JhcHBlci5lbmQoT2JqZWN0LmFzc2lnbihldmVudCwgd3JhcHBlcikpXG5cbiAgaGFuZGxlR2VzdHVyZSh3cmFwcGVyKVxufVxuXG5mdW5jdGlvbiB0b3VjaG1vdmUgKGV2ZW50OiBUb3VjaEV2ZW50LCB3cmFwcGVyOiBUb3VjaFdyYXBwZXIpIHtcbiAgY29uc3QgdG91Y2ggPSBldmVudC5jaGFuZ2VkVG91Y2hlc1swXVxuICB3cmFwcGVyLnRvdWNobW92ZVggPSB0b3VjaC5jbGllbnRYXG4gIHdyYXBwZXIudG91Y2htb3ZlWSA9IHRvdWNoLmNsaWVudFlcblxuICB3cmFwcGVyLm1vdmUgJiYgd3JhcHBlci5tb3ZlKE9iamVjdC5hc3NpZ24oZXZlbnQsIHdyYXBwZXIpKVxufVxuXG5mdW5jdGlvbiBjcmVhdGVIYW5kbGVycyAodmFsdWU6IFRvdWNoSGFuZGxlcnMpOiBUb3VjaFN0b3JlZEhhbmRsZXJzIHtcbiAgY29uc3Qgd3JhcHBlciA9IHtcbiAgICB0b3VjaHN0YXJ0WDogMCxcbiAgICB0b3VjaHN0YXJ0WTogMCxcbiAgICB0b3VjaGVuZFg6IDAsXG4gICAgdG91Y2hlbmRZOiAwLFxuICAgIHRvdWNobW92ZVg6IDAsXG4gICAgdG91Y2htb3ZlWTogMCxcbiAgICBvZmZzZXRYOiAwLFxuICAgIG9mZnNldFk6IDAsXG4gICAgbGVmdDogdmFsdWUubGVmdCxcbiAgICByaWdodDogdmFsdWUucmlnaHQsXG4gICAgdXA6IHZhbHVlLnVwLFxuICAgIGRvd246IHZhbHVlLmRvd24sXG4gICAgc3RhcnQ6IHZhbHVlLnN0YXJ0LFxuICAgIG1vdmU6IHZhbHVlLm1vdmUsXG4gICAgZW5kOiB2YWx1ZS5lbmQsXG4gIH1cblxuICByZXR1cm4ge1xuICAgIHRvdWNoc3RhcnQ6IChlOiBUb3VjaEV2ZW50KSA9PiB0b3VjaHN0YXJ0KGUsIHdyYXBwZXIpLFxuICAgIHRvdWNoZW5kOiAoZTogVG91Y2hFdmVudCkgPT4gdG91Y2hlbmQoZSwgd3JhcHBlciksXG4gICAgdG91Y2htb3ZlOiAoZTogVG91Y2hFdmVudCkgPT4gdG91Y2htb3ZlKGUsIHdyYXBwZXIpLFxuICB9XG59XG5cbmZ1bmN0aW9uIGluc2VydGVkIChlbDogSFRNTEVsZW1lbnQsIGJpbmRpbmc6IFRvdWNoVk5vZGVEaXJlY3RpdmUsIHZub2RlOiBWTm9kZSkge1xuICBjb25zdCB2YWx1ZSA9IGJpbmRpbmcudmFsdWUhXG4gIGNvbnN0IHRhcmdldCA9IHZhbHVlLnBhcmVudCA/IGVsLnBhcmVudEVsZW1lbnQgOiBlbFxuICBjb25zdCBvcHRpb25zID0gdmFsdWUub3B0aW9ucyB8fCB7IHBhc3NpdmU6IHRydWUgfVxuXG4gIC8vIE5lZWRlZCB0byBwYXNzIHVuaXQgdGVzdHNcbiAgaWYgKCF0YXJnZXQpIHJldHVyblxuXG4gIGNvbnN0IGhhbmRsZXJzID0gY3JlYXRlSGFuZGxlcnMoYmluZGluZy52YWx1ZSEpXG4gIHRhcmdldC5fdG91Y2hIYW5kbGVycyA9IE9iamVjdCh0YXJnZXQuX3RvdWNoSGFuZGxlcnMpXG4gIHRhcmdldC5fdG91Y2hIYW5kbGVycyFbdm5vZGUuY29udGV4dCEuX3VpZF0gPSBoYW5kbGVyc1xuXG4gIGtleXMoaGFuZGxlcnMpLmZvckVhY2goZXZlbnROYW1lID0+IHtcbiAgICB0YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIGhhbmRsZXJzW2V2ZW50TmFtZV0gYXMgRXZlbnRMaXN0ZW5lciwgb3B0aW9ucylcbiAgfSlcbn1cblxuZnVuY3Rpb24gdW5iaW5kIChlbDogSFRNTEVsZW1lbnQsIGJpbmRpbmc6IFRvdWNoVk5vZGVEaXJlY3RpdmUsIHZub2RlOiBWTm9kZSkge1xuICBjb25zdCB0YXJnZXQgPSBiaW5kaW5nLnZhbHVlIS5wYXJlbnQgPyBlbC5wYXJlbnRFbGVtZW50IDogZWxcbiAgaWYgKCF0YXJnZXQgfHwgIXRhcmdldC5fdG91Y2hIYW5kbGVycykgcmV0dXJuXG5cbiAgY29uc3QgaGFuZGxlcnMgPSB0YXJnZXQuX3RvdWNoSGFuZGxlcnNbdm5vZGUuY29udGV4dCEuX3VpZF1cbiAga2V5cyhoYW5kbGVycykuZm9yRWFjaChldmVudE5hbWUgPT4ge1xuICAgIHRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgaGFuZGxlcnNbZXZlbnROYW1lXSlcbiAgfSlcbiAgZGVsZXRlIHRhcmdldC5fdG91Y2hIYW5kbGVyc1t2bm9kZS5jb250ZXh0IS5fdWlkXVxufVxuXG5leHBvcnQgY29uc3QgVG91Y2ggPSB7XG4gIGluc2VydGVkLFxuICB1bmJpbmQsXG59XG5cbmV4cG9ydCBkZWZhdWx0IFRvdWNoXG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///148\n')},,,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2);\n\n\n\n/* harmony default export */ __webpack_exports__["a"] = (vue__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].extend({\n name: \'elevatable\',\n props: {\n elevation: [Number, String]\n },\n computed: {\n computedElevation: function computedElevation() {\n return this.elevation;\n },\n elevationClasses: function elevationClasses() {\n var elevation = this.computedElevation;\n if (elevation == null) return {};\n if (isNaN(parseInt(elevation))) return {};\n return Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, "elevation-".concat(this.elevation), true);\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9lbGV2YXRhYmxlL2luZGV4LnRzP2RjN2UiXSwibmFtZXMiOlsiVnVlIiwiZXh0ZW5kIiwibmFtZSIsInByb3BzIiwiZWxldmF0aW9uIiwiTnVtYmVyIiwiU3RyaW5nIiwiY29tcHV0ZWQiLCJjb21wdXRlZEVsZXZhdGlvbiIsImVsZXZhdGlvbkNsYXNzZXMiLCJpc05hTiIsInBhcnNlSW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTtBQUVlQSw0R0FBRyxDQUFDQyxNQUFKLENBQVc7QUFDeEJDLE1BQUksRUFBRSxZQURrQjtBQUd4QkMsT0FBSyxFQUFFO0FBQ0xDLGFBQVMsRUFBRSxDQUFDQyxNQUFELEVBQVNDLE1BQVQ7QUFETixHQUhpQjtBQU94QkMsVUFBUSxFQUFFO0FBQ1JDLHFCQURRLCtCQUNTO0FBQ2YsYUFBTyxLQUFLSixTQUFaO0FBRk07QUFJUkssb0JBSlEsOEJBSVE7QUFDZCxVQUFNTCxTQUFTLEdBQUcsS0FBS0ksaUJBQXZCO0FBRUEsVUFBSUosU0FBUyxJQUFJLElBQWpCLEVBQXVCLE9BQU8sRUFBUDtBQUN2QixVQUFJTSxLQUFLLENBQUNDLFFBQVEsQ0FBQ1AsU0FBRCxDQUFULENBQVQsRUFBZ0MsT0FBTyxFQUFQO0FBQ2hDLHVJQUF1QixLQUFLQSxTQUE1QixHQUEwQyxJQUExQztBQUNEO0FBVk87QUFQYyxDQUFYLENBQWYiLCJmaWxlIjoiMTUyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5cbmV4cG9ydCBkZWZhdWx0IFZ1ZS5leHRlbmQoe1xuICBuYW1lOiAnZWxldmF0YWJsZScsXG5cbiAgcHJvcHM6IHtcbiAgICBlbGV2YXRpb246IFtOdW1iZXIsIFN0cmluZ10sXG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjb21wdXRlZEVsZXZhdGlvbiAoKTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICAgIHJldHVybiB0aGlzLmVsZXZhdGlvblxuICAgIH0sXG4gICAgZWxldmF0aW9uQ2xhc3NlcyAoKTogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4ge1xuICAgICAgY29uc3QgZWxldmF0aW9uID0gdGhpcy5jb21wdXRlZEVsZXZhdGlvblxuXG4gICAgICBpZiAoZWxldmF0aW9uID09IG51bGwpIHJldHVybiB7fVxuICAgICAgaWYgKGlzTmFOKHBhcnNlSW50KGVsZXZhdGlvbikpKSByZXR1cm4ge31cbiAgICAgIHJldHVybiB7IFtgZWxldmF0aW9uLSR7dGhpcy5lbGV2YXRpb259YF06IHRydWUgfVxuICAgIH0sXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///152\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return applicationable; });\n/* harmony import */ var _positionable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);\n // Util\n\n\nfunction applicationable(value) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n\n /* @vue/component */\n return Object(_util_mixins__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])(Object(_positionable__WEBPACK_IMPORTED_MODULE_0__[/* factory */ \"b\"])(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n props: {\n app: Boolean\n },\n computed: {\n applicationProperty: function applicationProperty() {\n return value;\n }\n },\n watch: {\n // If previous value was app\n // reset the provided prop\n app: function app(x, prev) {\n prev ? this.removeApplication(true) : this.callUpdate();\n },\n applicationProperty: function applicationProperty(newVal, oldVal) {\n this.$vuetify.application.unregister(this._uid, oldVal);\n }\n },\n activated: function activated() {\n this.callUpdate();\n },\n created: function created() {\n for (var i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate);\n }\n\n this.callUpdate();\n },\n mounted: function mounted() {\n this.callUpdate();\n },\n deactivated: function deactivated() {\n this.removeApplication();\n },\n destroyed: function destroyed() {\n this.removeApplication();\n },\n methods: {\n callUpdate: function callUpdate() {\n if (!this.app) return;\n this.$vuetify.application.register(this._uid, this.applicationProperty, this.updateApplication());\n },\n removeApplication: function removeApplication() {\n var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n if (!force && !this.app) return;\n this.$vuetify.application.unregister(this._uid, this.applicationProperty);\n },\n updateApplication: function updateApplication() {\n return 0;\n }\n }\n });\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9hcHBsaWNhdGlvbmFibGUvaW5kZXgudHM/NGZjYSJdLCJuYW1lcyI6WyJhcHBsaWNhdGlvbmFibGUiLCJ2YWx1ZSIsImV2ZW50cyIsIm1peGlucyIsIlBvc2l0aW9uYWJsZUZhY3RvcnkiLCJleHRlbmQiLCJuYW1lIiwicHJvcHMiLCJhcHAiLCJCb29sZWFuIiwiY29tcHV0ZWQiLCJhcHBsaWNhdGlvblByb3BlcnR5Iiwid2F0Y2giLCJ4IiwicHJldiIsInJlbW92ZUFwcGxpY2F0aW9uIiwiY2FsbFVwZGF0ZSIsIm5ld1ZhbCIsIm9sZFZhbCIsIiR2dWV0aWZ5IiwiYXBwbGljYXRpb24iLCJ1bnJlZ2lzdGVyIiwiX3VpZCIsImFjdGl2YXRlZCIsImNyZWF0ZWQiLCJpIiwibGVuZ3RoIiwiJHdhdGNoIiwibW91bnRlZCIsImRlYWN0aXZhdGVkIiwiZGVzdHJveWVkIiwibWV0aG9kcyIsInJlZ2lzdGVyIiwidXBkYXRlQXBwbGljYXRpb24iLCJmb3JjZSJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0NBR0E7O0FBQ0E7QUFFYyxTQUFVQSxlQUFWLENBQTJCQyxLQUEzQixFQUFtRTtBQUFBLE1BQXJCQyxNQUFxQix1RUFBRixFQUFFOztBQUMvRTtBQUNBLFNBQU9DLG9FQUFNLENBQUNDLHFFQUFtQixDQUFDLENBQUMsVUFBRCxFQUFhLE9BQWIsQ0FBRCxDQUFwQixDQUFOLENBQW1EQyxNQUFuRCxDQUEwRDtBQUMvREMsUUFBSSxFQUFFLGlCQUR5RDtBQUcvREMsU0FBSyxFQUFFO0FBQ0xDLFNBQUcsRUFBRUM7QUFEQSxLQUh3RDtBQU8vREMsWUFBUSxFQUFFO0FBQ1JDLHlCQURRLGlDQUNXO0FBQ2pCLGVBQU9WLEtBQVA7QUFDRDtBQUhPLEtBUHFEO0FBYS9EVyxTQUFLLEVBQUU7QUFDTDtBQUNBO0FBQ0FKLFNBSEssZUFHQUssQ0FIQSxFQUdZQyxJQUhaLEVBR3lCO0FBQzVCQSxZQUFJLEdBQ0EsS0FBS0MsaUJBQUwsQ0FBdUIsSUFBdkIsQ0FEQSxHQUVBLEtBQUtDLFVBQUwsRUFGSjtBQUpHO0FBUUxMLHlCQVJLLCtCQVFnQk0sTUFSaEIsRUFRd0JDLE1BUnhCLEVBUThCO0FBQ2pDLGFBQUtDLFFBQUwsQ0FBY0MsV0FBZCxDQUEwQkMsVUFBMUIsQ0FBcUMsS0FBS0MsSUFBMUMsRUFBZ0RKLE1BQWhEO0FBQ0Q7QUFWSSxLQWJ3RDtBQTBCL0RLLGFBMUIrRCx1QkEwQnREO0FBQ1AsV0FBS1AsVUFBTDtBQTNCNkQ7QUE4Qi9EUSxXQTlCK0QscUJBOEJ4RDtBQUNMLFdBQUssSUFBSUMsQ0FBQyxHQUFHLENBQVIsRUFBV0MsTUFBTSxHQUFHeEIsTUFBTSxDQUFDd0IsTUFBaEMsRUFBd0NELENBQUMsR0FBR0MsTUFBNUMsRUFBb0RELENBQUMsRUFBckQsRUFBeUQ7QUFDdkQsYUFBS0UsTUFBTCxDQUFZekIsTUFBTSxDQUFDdUIsQ0FBRCxDQUFsQixFQUF1QixLQUFLVCxVQUE1QjtBQUNEOztBQUNELFdBQUtBLFVBQUw7QUFsQzZEO0FBcUMvRFksV0FyQytELHFCQXFDeEQ7QUFDTCxXQUFLWixVQUFMO0FBdEM2RDtBQXlDL0RhLGVBekMrRCx5QkF5Q3BEO0FBQ1QsV0FBS2QsaUJBQUw7QUExQzZEO0FBNkMvRGUsYUE3QytELHVCQTZDdEQ7QUFDUCxXQUFLZixpQkFBTDtBQTlDNkQ7QUFpRC9EZ0IsV0FBTyxFQUFFO0FBQ1BmLGdCQURPLHdCQUNHO0FBQ1IsWUFBSSxDQUFDLEtBQUtSLEdBQVYsRUFBZTtBQUVmLGFBQUtXLFFBQUwsQ0FBY0MsV0FBZCxDQUEwQlksUUFBMUIsQ0FDRSxLQUFLVixJQURQLEVBRUUsS0FBS1gsbUJBRlAsRUFHRSxLQUFLc0IsaUJBQUwsRUFIRjtBQUpLO0FBVVBsQix1QkFWTywrQkFVeUI7QUFBQSxZQUFibUIsS0FBYSx1RUFBTCxLQUFLO0FBQzlCLFlBQUksQ0FBQ0EsS0FBRCxJQUFVLENBQUMsS0FBSzFCLEdBQXBCLEVBQXlCO0FBRXpCLGFBQUtXLFFBQUwsQ0FBY0MsV0FBZCxDQUEwQkMsVUFBMUIsQ0FDRSxLQUFLQyxJQURQLEVBRUUsS0FBS1gsbUJBRlA7QUFiSztBQWtCUHNCLHVCQUFpQixFQUFFO0FBQUEsZUFBTSxDQUFOO0FBQUE7QUFsQlo7QUFqRHNELEdBQTFELENBQVA7QUFzRUQiLCJmaWxlIjoiMTUzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmFjdG9yeSBhcyBQb3NpdGlvbmFibGVGYWN0b3J5IH0gZnJvbSAnLi4vcG9zaXRpb25hYmxlJ1xuaW1wb3J0IHsgVGFyZ2V0UHJvcCB9IGZyb20gJ3Z1ZXRpZnkvdHlwZXMvc2VydmljZXMvYXBwbGljYXRpb24nXG5cbi8vIFV0aWxcbmltcG9ydCBtaXhpbnMgZnJvbSAnLi4vLi4vdXRpbC9taXhpbnMnXG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFwcGxpY2F0aW9uYWJsZSAodmFsdWU6IFRhcmdldFByb3AsIGV2ZW50czogc3RyaW5nW10gPSBbXSkge1xuICAvKiBAdnVlL2NvbXBvbmVudCAqL1xuICByZXR1cm4gbWl4aW5zKFBvc2l0aW9uYWJsZUZhY3RvcnkoWydhYnNvbHV0ZScsICdmaXhlZCddKSkuZXh0ZW5kKHtcbiAgICBuYW1lOiAnYXBwbGljYXRpb25hYmxlJyxcblxuICAgIHByb3BzOiB7XG4gICAgICBhcHA6IEJvb2xlYW4sXG4gICAgfSxcblxuICAgIGNvbXB1dGVkOiB7XG4gICAgICBhcHBsaWNhdGlvblByb3BlcnR5ICgpOiBUYXJnZXRQcm9wIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlXG4gICAgICB9LFxuICAgIH0sXG5cbiAgICB3YXRjaDoge1xuICAgICAgLy8gSWYgcHJldmlvdXMgdmFsdWUgd2FzIGFwcFxuICAgICAgLy8gcmVzZXQgdGhlIHByb3ZpZGVkIHByb3BcbiAgICAgIGFwcCAoeDogYm9vbGVhbiwgcHJldjogYm9vbGVhbikge1xuICAgICAgICBwcmV2XG4gICAgICAgICAgPyB0aGlzLnJlbW92ZUFwcGxpY2F0aW9uKHRydWUpXG4gICAgICAgICAgOiB0aGlzLmNhbGxVcGRhdGUoKVxuICAgICAgfSxcbiAgICAgIGFwcGxpY2F0aW9uUHJvcGVydHkgKG5ld1ZhbCwgb2xkVmFsKSB7XG4gICAgICAgIHRoaXMuJHZ1ZXRpZnkuYXBwbGljYXRpb24udW5yZWdpc3Rlcih0aGlzLl91aWQsIG9sZFZhbClcbiAgICAgIH0sXG4gICAgfSxcblxuICAgIGFjdGl2YXRlZCAoKSB7XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKVxuICAgIH0sXG5cbiAgICBjcmVhdGVkICgpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwLCBsZW5ndGggPSBldmVudHMubGVuZ3RoOyBpIDwgbGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdGhpcy4kd2F0Y2goZXZlbnRzW2ldLCB0aGlzLmNhbGxVcGRhdGUpXG4gICAgICB9XG4gICAgICB0aGlzLmNhbGxVcGRhdGUoKVxuICAgIH0sXG5cbiAgICBtb3VudGVkICgpIHtcbiAgICAgIHRoaXMuY2FsbFVwZGF0ZSgpXG4gICAgfSxcblxuICAgIGRlYWN0aXZhdGVkICgpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXBwbGljYXRpb24oKVxuICAgIH0sXG5cbiAgICBkZXN0cm95ZWQgKCkge1xuICAgICAgdGhpcy5yZW1vdmVBcHBsaWNhdGlvbigpXG4gICAgfSxcblxuICAgIG1ldGhvZHM6IHtcbiAgICAgIGNhbGxVcGRhdGUgKCkge1xuICAgICAgICBpZiAoIXRoaXMuYXBwKSByZXR1cm5cblxuICAgICAgICB0aGlzLiR2dWV0aWZ5LmFwcGxpY2F0aW9uLnJlZ2lzdGVyKFxuICAgICAgICAgIHRoaXMuX3VpZCxcbiAgICAgICAgICB0aGlzLmFwcGxpY2F0aW9uUHJvcGVydHksXG4gICAgICAgICAgdGhpcy51cGRhdGVBcHBsaWNhdGlvbigpXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgICByZW1vdmVBcHBsaWNhdGlvbiAoZm9yY2UgPSBmYWxzZSkge1xuICAgICAgICBpZiAoIWZvcmNlICYmICF0aGlzLmFwcCkgcmV0dXJuXG5cbiAgICAgICAgdGhpcy4kdnVldGlmeS5hcHBsaWNhdGlvbi51bnJlZ2lzdGVyKFxuICAgICAgICAgIHRoaXMuX3VpZCxcbiAgICAgICAgICB0aGlzLmFwcGxpY2F0aW9uUHJvcGVydHlcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIHVwZGF0ZUFwcGxpY2F0aW9uOiAoKSA9PiAwLFxuICAgIH0sXG4gIH0pXG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///153\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* unused harmony export VToolbarItems */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return VToolbarTitle; });\n/* harmony import */ var _VToolbar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(54);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);\n// Components\n // Utilities\n\n\nvar VToolbarTitle = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-toolbar__title\');\nvar VToolbarItems = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-toolbar__items\');\n\n/* unused harmony default export */ var _unused_webpack_default_export = ({\n $_vuetify_subcomponents: {\n VToolbar: _VToolbar__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"],\n VToolbarItems: VToolbarItems,\n VToolbarTitle: VToolbarTitle\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVlRvb2xiYXIvaW5kZXgudHM/YWEzZCJdLCJuYW1lcyI6WyJWVG9vbGJhclRpdGxlIiwiY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCIsIlZUb29sYmFySXRlbXMiLCIkX3Z1ZXRpZnlfc3ViY29tcG9uZW50cyIsIlZUb29sYmFyIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0NBR0E7O0FBQ0E7QUFFQSxJQUFNQSxhQUFhLEdBQUdDLG9GQUFzQixDQUFDLGtCQUFELENBQTVDO0FBQ0EsSUFBTUMsYUFBYSxHQUFHRCxvRkFBc0IsQ0FBQyxrQkFBRCxDQUE1QztBQUVBO0FBTWU7QUFDYkUseUJBQXVCLEVBQUU7QUFDdkJDLFlBRHVCLEVBQ3ZCQSx5REFEdUI7QUFFdkJGLGlCQUZ1QixFQUV2QkEsYUFGdUI7QUFHdkJGO0FBSHVCO0FBRFosQ0FBZiIsImZpbGUiOiIxNTQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb21wb25lbnRzXG5pbXBvcnQgVlRvb2xiYXIgZnJvbSAnLi9WVG9vbGJhcidcblxuLy8gVXRpbGl0aWVzXG5pbXBvcnQgeyBjcmVhdGVTaW1wbGVGdW5jdGlvbmFsIH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG5jb25zdCBWVG9vbGJhclRpdGxlID0gY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCgndi10b29sYmFyX190aXRsZScpXG5jb25zdCBWVG9vbGJhckl0ZW1zID0gY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCgndi10b29sYmFyX19pdGVtcycpXG5cbmV4cG9ydCB7XG4gIFZUb29sYmFyLFxuICBWVG9vbGJhckl0ZW1zLFxuICBWVG9vbGJhclRpdGxlLFxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gICRfdnVldGlmeV9zdWJjb21wb25lbnRzOiB7XG4gICAgVlRvb2xiYXIsXG4gICAgVlRvb2xiYXJJdGVtcyxcbiAgICBWVG9vbGJhclRpdGxlLFxuICB9LFxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///154\n')},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return VCardActions; });\n/* unused harmony export VCardSubtitle */\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return VCardText; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return VCardTitle; });\n/* harmony import */ var _VCard__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(189);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);\n\n\nvar VCardActions = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-card__actions\');\nvar VCardSubtitle = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-card__subtitle\');\nvar VCardText = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-card__text\');\nvar VCardTitle = Object(_util_helpers__WEBPACK_IMPORTED_MODULE_1__[/* createSimpleFunctional */ "j"])(\'v-card__title\');\n\n/* unused harmony default export */ var _unused_webpack_default_export = ({\n $_vuetify_subcomponents: {\n VCard: _VCard__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"],\n VCardActions: VCardActions,\n VCardSubtitle: VCardSubtitle,\n VCardText: VCardText,\n VCardTitle: VCardTitle\n }\n});//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkNhcmQvaW5kZXgudHM/MGY3YiJdLCJuYW1lcyI6WyJWQ2FyZEFjdGlvbnMiLCJjcmVhdGVTaW1wbGVGdW5jdGlvbmFsIiwiVkNhcmRTdWJ0aXRsZSIsIlZDYXJkVGV4dCIsIlZDYXJkVGl0bGUiLCIkX3Z1ZXRpZnlfc3ViY29tcG9uZW50cyIsIlZDYXJkIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBRUEsSUFBTUEsWUFBWSxHQUFHQyxvRkFBc0IsQ0FBQyxpQkFBRCxDQUEzQztBQUNBLElBQU1DLGFBQWEsR0FBR0Qsb0ZBQXNCLENBQUMsa0JBQUQsQ0FBNUM7QUFDQSxJQUFNRSxTQUFTLEdBQUdGLG9GQUFzQixDQUFDLGNBQUQsQ0FBeEM7QUFDQSxJQUFNRyxVQUFVLEdBQUdILG9GQUFzQixDQUFDLGVBQUQsQ0FBekM7QUFFQTtBQVFlO0FBQ2JJLHlCQUF1QixFQUFFO0FBQ3ZCQyxTQUR1QixFQUN2QkEsc0RBRHVCO0FBRXZCTixnQkFGdUIsRUFFdkJBLFlBRnVCO0FBR3ZCRSxpQkFIdUIsRUFHdkJBLGFBSHVCO0FBSXZCQyxhQUp1QixFQUl2QkEsU0FKdUI7QUFLdkJDO0FBTHVCO0FBRFosQ0FBZiIsImZpbGUiOiIxNTYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgVkNhcmQgZnJvbSAnLi9WQ2FyZCdcbmltcG9ydCB7IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5cbmNvbnN0IFZDYXJkQWN0aW9ucyA9IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwoJ3YtY2FyZF9fYWN0aW9ucycpXG5jb25zdCBWQ2FyZFN1YnRpdGxlID0gY3JlYXRlU2ltcGxlRnVuY3Rpb25hbCgndi1jYXJkX19zdWJ0aXRsZScpXG5jb25zdCBWQ2FyZFRleHQgPSBjcmVhdGVTaW1wbGVGdW5jdGlvbmFsKCd2LWNhcmRfX3RleHQnKVxuY29uc3QgVkNhcmRUaXRsZSA9IGNyZWF0ZVNpbXBsZUZ1bmN0aW9uYWwoJ3YtY2FyZF9fdGl0bGUnKVxuXG5leHBvcnQge1xuICBWQ2FyZCxcbiAgVkNhcmRBY3Rpb25zLFxuICBWQ2FyZFN1YnRpdGxlLFxuICBWQ2FyZFRleHQsXG4gIFZDYXJkVGl0bGUsXG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgJF92dWV0aWZ5X3N1YmNvbXBvbmVudHM6IHtcbiAgICBWQ2FyZCxcbiAgICBWQ2FyZEFjdGlvbnMsXG4gICAgVkNhcmRTdWJ0aXRsZSxcbiAgICBWQ2FyZFRleHQsXG4gICAgVkNhcmRUaXRsZSxcbiAgfSxcbn1cbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///156\n')},,,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.number.constructor.js\nvar es6_number_constructor = __webpack_require__(21);\n\n// EXTERNAL MODULE: ./node_modules/vue/dist/vue.runtime.esm.js\nvar vue_runtime_esm = __webpack_require__(2);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.keys.js\nvar es6_object_keys = __webpack_require__(6);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.symbol.js\nvar es6_symbol = __webpack_require__(5);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.array.filter.js\nvar es6_array_filter = __webpack_require__(7);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js\nvar es6_object_get_own_property_descriptor = __webpack_require__(9);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js\nvar es7_object_get_own_property_descriptors = __webpack_require__(10);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(1);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.string.fixed.js\nvar es6_string_fixed = __webpack_require__(142);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/src/components/VProgressLinear/VProgressLinear.sass\nvar VProgressLinear = __webpack_require__(321);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/components/transitions/index.js + 2 modules\nvar transitions = __webpack_require__(89);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/directives/intersect/index.js\nvar intersect = __webpack_require__(99);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/colorable/index.js\nvar colorable = __webpack_require__(23);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/positionable/index.js\nvar positionable = __webpack_require__(60);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/proxyable/index.js\nvar proxyable = __webpack_require__(105);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/mixins/themeable/index.js\nvar themeable = __webpack_require__(18);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/util/helpers.js\nvar helpers = __webpack_require__(0);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/util/mixins.js\nvar mixins = __webpack_require__(3);\n\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/components/VProgressLinear/VProgressLinear.js\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(defineProperty[\"a\" /* default */])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n\n // Components\n\n // Directives\n\n // Mixins\n\n\n\n\n // Utilities\n\n\n\nvar baseMixins = Object(mixins[\"a\" /* default */])(colorable[\"a\" /* default */], Object(positionable[\"b\" /* factory */])(['absolute', 'fixed', 'top', 'bottom']), proxyable[\"a\" /* default */], themeable[\"a\" /* default */]);\n/* @vue/component */\n\n/* harmony default export */ var VProgressLinear_VProgressLinear = (baseMixins.extend({\n name: 'v-progress-linear',\n directives: {\n intersect: intersect[\"a\" /* default */]\n },\n props: {\n active: {\n type: Boolean,\n default: true\n },\n backgroundColor: {\n type: String,\n default: null\n },\n backgroundOpacity: {\n type: [Number, String],\n default: null\n },\n bufferValue: {\n type: [Number, String],\n default: 100\n },\n color: {\n type: String,\n default: 'primary'\n },\n height: {\n type: [Number, String],\n default: 4\n },\n indeterminate: Boolean,\n query: Boolean,\n reverse: Boolean,\n rounded: Boolean,\n stream: Boolean,\n striped: Boolean,\n value: {\n type: [Number, String],\n default: 0\n }\n },\n data: function data() {\n return {\n internalLazyValue: this.value || 0,\n isVisible: true\n };\n },\n computed: {\n __cachedBackground: function __cachedBackground() {\n return this.$createElement('div', this.setBackgroundColor(this.backgroundColor || this.color, {\n staticClass: 'v-progress-linear__background',\n style: this.backgroundStyle\n }));\n },\n __cachedBar: function __cachedBar() {\n return this.$createElement(this.computedTransition, [this.__cachedBarType]);\n },\n __cachedBarType: function __cachedBarType() {\n return this.indeterminate ? this.__cachedIndeterminate : this.__cachedDeterminate;\n },\n __cachedBuffer: function __cachedBuffer() {\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__buffer',\n style: this.styles\n });\n },\n __cachedDeterminate: function __cachedDeterminate() {\n return this.$createElement('div', this.setBackgroundColor(this.color, {\n staticClass: \"v-progress-linear__determinate\",\n style: {\n width: Object(helpers[\"h\" /* convertToUnit */])(this.normalizedValue, '%')\n }\n }));\n },\n __cachedIndeterminate: function __cachedIndeterminate() {\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__indeterminate',\n class: {\n 'v-progress-linear__indeterminate--active': this.active\n }\n }, [this.genProgressBar('long'), this.genProgressBar('short')]);\n },\n __cachedStream: function __cachedStream() {\n if (!this.stream) return null;\n return this.$createElement('div', this.setTextColor(this.color, {\n staticClass: 'v-progress-linear__stream',\n style: {\n width: Object(helpers[\"h\" /* convertToUnit */])(100 - this.normalizedBuffer, '%')\n }\n }));\n },\n backgroundStyle: function backgroundStyle() {\n var _ref;\n\n var backgroundOpacity = this.backgroundOpacity == null ? this.backgroundColor ? 1 : 0.3 : parseFloat(this.backgroundOpacity);\n return _ref = {\n opacity: backgroundOpacity\n }, Object(defineProperty[\"a\" /* default */])(_ref, this.isReversed ? 'right' : 'left', Object(helpers[\"h\" /* convertToUnit */])(this.normalizedValue, '%')), Object(defineProperty[\"a\" /* default */])(_ref, \"width\", Object(helpers[\"h\" /* convertToUnit */])(Math.max(0, this.normalizedBuffer - this.normalizedValue), '%')), _ref;\n },\n classes: function classes() {\n return _objectSpread({\n 'v-progress-linear--absolute': this.absolute,\n 'v-progress-linear--fixed': this.fixed,\n 'v-progress-linear--query': this.query,\n 'v-progress-linear--reactive': this.reactive,\n 'v-progress-linear--reverse': this.isReversed,\n 'v-progress-linear--rounded': this.rounded,\n 'v-progress-linear--striped': this.striped,\n 'v-progress-linear--visible': this.isVisible\n }, this.themeClasses);\n },\n computedTransition: function computedTransition() {\n return this.indeterminate ? transitions[\"c\" /* VFadeTransition */] : transitions[\"e\" /* VSlideXTransition */];\n },\n isReversed: function isReversed() {\n return this.$vuetify.rtl !== this.reverse;\n },\n normalizedBuffer: function normalizedBuffer() {\n return this.normalize(this.bufferValue);\n },\n normalizedValue: function normalizedValue() {\n return this.normalize(this.internalLazyValue);\n },\n reactive: function reactive() {\n return Boolean(this.$listeners.change);\n },\n styles: function styles() {\n var styles = {};\n\n if (!this.active) {\n styles.height = 0;\n }\n\n if (!this.indeterminate && parseFloat(this.normalizedBuffer) !== 100) {\n styles.width = Object(helpers[\"h\" /* convertToUnit */])(this.normalizedBuffer, '%');\n }\n\n return styles;\n }\n },\n methods: {\n genContent: function genContent() {\n var slot = Object(helpers[\"s\" /* getSlot */])(this, 'default', {\n value: this.internalLazyValue\n });\n if (!slot) return null;\n return this.$createElement('div', {\n staticClass: 'v-progress-linear__content'\n }, slot);\n },\n genListeners: function genListeners() {\n var listeners = this.$listeners;\n\n if (this.reactive) {\n listeners.click = this.onClick;\n }\n\n return listeners;\n },\n genProgressBar: function genProgressBar(name) {\n return this.$createElement('div', this.setBackgroundColor(this.color, {\n staticClass: 'v-progress-linear__indeterminate',\n class: Object(defineProperty[\"a\" /* default */])({}, name, true)\n }));\n },\n onClick: function onClick(e) {\n if (!this.reactive) return;\n\n var _this$$el$getBounding = this.$el.getBoundingClientRect(),\n width = _this$$el$getBounding.width;\n\n this.internalValue = e.offsetX / width * 100;\n },\n onObserve: function onObserve(entries, observer, isIntersecting) {\n this.isVisible = isIntersecting;\n },\n normalize: function normalize(value) {\n if (value < 0) return 0;\n if (value > 100) return 100;\n return parseFloat(value);\n }\n },\n render: function render(h) {\n var data = {\n staticClass: 'v-progress-linear',\n attrs: {\n role: 'progressbar',\n 'aria-valuemin': 0,\n 'aria-valuemax': this.normalizedBuffer,\n 'aria-valuenow': this.indeterminate ? undefined : this.normalizedValue\n },\n class: this.classes,\n directives: [{\n name: 'intersect',\n value: this.onObserve\n }],\n style: {\n bottom: this.bottom ? 0 : undefined,\n height: this.active ? Object(helpers[\"h\" /* convertToUnit */])(this.height) : 0,\n top: this.top ? 0 : undefined\n },\n on: this.genListeners()\n };\n return h('div', data, [this.__cachedStream, this.__cachedBackground, this.__cachedBuffer, this.__cachedBar, this.genContent()]);\n }\n}));\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/components/VProgressLinear/index.js\n\n\n/* harmony default export */ var components_VProgressLinear = (VProgressLinear_VProgressLinear);\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/mixins/loadable/index.js\n\n\n\n/**\n * Loadable\n *\n * @mixin\n *\n * Used to add linear progress bar to components\n * Can use a default bar with a specific color\n * or designate a custom progress linear bar\n */\n\n/* @vue/component */\n\n/* harmony default export */ var loadable = __webpack_exports__[\"a\"] = (vue_runtime_esm[\"a\" /* default */].extend().extend({\n name: 'loadable',\n props: {\n loading: {\n type: [Boolean, String],\n default: false\n },\n loaderHeight: {\n type: [Number, String],\n default: 2\n }\n },\n methods: {\n genProgress: function genProgress() {\n if (this.loading === false) return null;\n return this.$slots.progress || this.$createElement(components_VProgressLinear, {\n props: {\n absolute: true,\n color: this.loading === true || this.loading === '' ? this.color || 'primary' : this.loading,\n height: this.loaderHeight,\n indeterminate: true\n }\n });\n }\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVlByb2dyZXNzTGluZWFyL1ZQcm9ncmVzc0xpbmVhci50cz8yOTNjIiwid2VicGFjazovLy8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9WUHJvZ3Jlc3NMaW5lYXIvaW5kZXgudHM/NWQ3ZCIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL21peGlucy9sb2FkYWJsZS9pbmRleC50cz8xMmQ5Il0sIm5hbWVzIjpbImJhc2VNaXhpbnMiLCJtaXhpbnMiLCJDb2xvcmFibGUiLCJQb3NpdGlvbmFibGVGYWN0b3J5IiwiUHJveHlhYmxlIiwiVGhlbWVhYmxlIiwiZXh0ZW5kIiwibmFtZSIsImRpcmVjdGl2ZXMiLCJpbnRlcnNlY3QiLCJwcm9wcyIsImFjdGl2ZSIsInR5cGUiLCJCb29sZWFuIiwiZGVmYXVsdCIsImJhY2tncm91bmRDb2xvciIsIlN0cmluZyIsImJhY2tncm91bmRPcGFjaXR5IiwiTnVtYmVyIiwiYnVmZmVyVmFsdWUiLCJjb2xvciIsImhlaWdodCIsImluZGV0ZXJtaW5hdGUiLCJxdWVyeSIsInJldmVyc2UiLCJyb3VuZGVkIiwic3RyZWFtIiwic3RyaXBlZCIsInZhbHVlIiwiZGF0YSIsImludGVybmFsTGF6eVZhbHVlIiwiaXNWaXNpYmxlIiwiY29tcHV0ZWQiLCJfX2NhY2hlZEJhY2tncm91bmQiLCIkY3JlYXRlRWxlbWVudCIsInNldEJhY2tncm91bmRDb2xvciIsInN0YXRpY0NsYXNzIiwic3R5bGUiLCJiYWNrZ3JvdW5kU3R5bGUiLCJfX2NhY2hlZEJhciIsImNvbXB1dGVkVHJhbnNpdGlvbiIsIl9fY2FjaGVkQmFyVHlwZSIsIl9fY2FjaGVkSW5kZXRlcm1pbmF0ZSIsIl9fY2FjaGVkRGV0ZXJtaW5hdGUiLCJfX2NhY2hlZEJ1ZmZlciIsInN0eWxlcyIsIndpZHRoIiwiY29udmVydFRvVW5pdCIsIm5vcm1hbGl6ZWRWYWx1ZSIsImNsYXNzIiwiZ2VuUHJvZ3Jlc3NCYXIiLCJfX2NhY2hlZFN0cmVhbSIsInNldFRleHRDb2xvciIsIm5vcm1hbGl6ZWRCdWZmZXIiLCJwYXJzZUZsb2F0Iiwib3BhY2l0eSIsImlzUmV2ZXJzZWQiLCJNYXRoIiwibWF4IiwiY2xhc3NlcyIsImFic29sdXRlIiwiZml4ZWQiLCJyZWFjdGl2ZSIsInRoZW1lQ2xhc3NlcyIsIlZGYWRlVHJhbnNpdGlvbiIsIlZTbGlkZVhUcmFuc2l0aW9uIiwiJHZ1ZXRpZnkiLCJydGwiLCJub3JtYWxpemUiLCIkbGlzdGVuZXJzIiwiY2hhbmdlIiwibWV0aG9kcyIsImdlbkNvbnRlbnQiLCJzbG90IiwiZ2V0U2xvdCIsImdlbkxpc3RlbmVycyIsImxpc3RlbmVycyIsImNsaWNrIiwib25DbGljayIsImUiLCIkZWwiLCJnZXRCb3VuZGluZ0NsaWVudFJlY3QiLCJpbnRlcm5hbFZhbHVlIiwib2Zmc2V0WCIsIm9uT2JzZXJ2ZSIsImVudHJpZXMiLCJvYnNlcnZlciIsImlzSW50ZXJzZWN0aW5nIiwicmVuZGVyIiwiaCIsImF0dHJzIiwicm9sZSIsInVuZGVmaW5lZCIsImJvdHRvbSIsInRvcCIsIm9uIiwiVlByb2dyZXNzTGluZWFyIiwiVnVlIiwibG9hZGluZyIsImxvYWRlckhlaWdodCIsImdlblByb2dyZXNzIiwiJHNsb3RzIiwicHJvZ3Jlc3MiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUVBOztDQU1BOztDQUdBOztBQUNBO0FBQ0E7QUFDQTtDQUdBOztBQUNBO0FBQ0E7QUFNQSxJQUFNQSxVQUFVLEdBQUdDLGlDQUFNLENBQ3ZCQyw0QkFEdUIsRUFFdkJDLHVDQUFtQixDQUFDLENBQUMsVUFBRCxFQUFhLE9BQWIsRUFBc0IsS0FBdEIsRUFBNkIsUUFBN0IsQ0FBRCxDQUZJLEVBR3ZCQyw0QkFIdUIsRUFJdkJDLDRCQUp1QixDQUF6QjtBQU9BOztBQUNlTCw4RUFBVSxDQUFDTSxNQUFYLENBQWtCO0FBQy9C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TUFBSSxFQUFFLFVBRHNDO0FBRzVDRyxPQUFLLEVBQUU7QUFDTHdGLFdBQU8sRUFBRTtBQUNQdEYsVUFBSSxFQUFFLENBQUNDLE9BQUQsRUFBVUcsTUFBVixDQURDO0FBRVBGLGFBQU8sRUFBRTtBQUZGLEtBREo7QUFLTHFGLGdCQUFZLEVBQUU7QUFDWnZGLFVBQUksRUFBRSxDQUFDTSxNQUFELEVBQVNGLE1BQVQsQ0FETTtBQUVaRixhQUFPLEVBQUU7QUFGRztBQUxULEdBSHFDO0FBYzVDeUQsU0FBTyxFQUFFO0FBQ1A2QixlQURPLHlCQUNJO0FBQ1QsVUFBSSxLQUFLRixPQUFMLEtBQWlCLEtBQXJCLEVBQTRCLE9BQU8sSUFBUDtBQUU1QixhQUFPLEtBQUtHLE1BQUwsQ0FBWUMsUUFBWixJQUF3QixLQUFLcEUsY0FBTCxDQUFvQjhELDBCQUFwQixFQUFxQztBQUNsRXRGLGFBQUssRUFBRTtBQUNMa0Qsa0JBQVEsRUFBRSxJQURMO0FBRUx4QyxlQUFLLEVBQUcsS0FBSzhFLE9BQUwsS0FBaUIsSUFBakIsSUFBeUIsS0FBS0EsT0FBTCxLQUFpQixFQUExQyxHQUNILEtBQUs5RSxLQUFMLElBQWMsU0FEWCxHQUVKLEtBQUs4RSxPQUpKO0FBS0w3RSxnQkFBTSxFQUFFLEtBQUs4RSxZQUxSO0FBTUw3RSx1QkFBYSxFQUFFO0FBTlY7QUFEMkQsT0FBckMsQ0FBL0I7QUFVRDtBQWRNO0FBZG1DLENBQS9CLENBQWYiLCJmaWxlIjoiMTU5LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICcuL1ZQcm9ncmVzc0xpbmVhci5zYXNzJ1xuXG4vLyBDb21wb25lbnRzXG5pbXBvcnQge1xuICBWRmFkZVRyYW5zaXRpb24sXG4gIFZTbGlkZVhUcmFuc2l0aW9uLFxufSBmcm9tICcuLi90cmFuc2l0aW9ucydcblxuLy8gRGlyZWN0aXZlc1xuaW1wb3J0IGludGVyc2VjdCBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2ludGVyc2VjdCdcblxuLy8gTWl4aW5zXG5pbXBvcnQgQ29sb3JhYmxlIGZyb20gJy4uLy4uL21peGlucy9jb2xvcmFibGUnXG5pbXBvcnQgeyBmYWN0b3J5IGFzIFBvc2l0aW9uYWJsZUZhY3RvcnkgfSBmcm9tICcuLi8uLi9taXhpbnMvcG9zaXRpb25hYmxlJ1xuaW1wb3J0IFByb3h5YWJsZSBmcm9tICcuLi8uLi9taXhpbnMvcHJveHlhYmxlJ1xuaW1wb3J0IFRoZW1lYWJsZSBmcm9tICcuLi8uLi9taXhpbnMvdGhlbWVhYmxlJ1xuXG4vLyBVdGlsaXRpZXNcbmltcG9ydCB7IGNvbnZlcnRUb1VuaXQsIGdldFNsb3QgfSBmcm9tICcuLi8uLi91dGlsL2hlbHBlcnMnXG5pbXBvcnQgbWl4aW5zIGZyb20gJy4uLy4uL3V0aWwvbWl4aW5zJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgRnVuY3Rpb25hbENvbXBvbmVudE9wdGlvbnMgfSBmcm9tICd2dWUvdHlwZXMnXG5pbXBvcnQgeyBWTm9kZSB9IGZyb20gJ3Z1ZSdcblxuY29uc3QgYmFzZU1peGlucyA9IG1peGlucyhcbiAgQ29sb3JhYmxlLFxuICBQb3NpdGlvbmFibGVGYWN0b3J5KFsnYWJzb2x1dGUnLCAnZml4ZWQnLCAndG9wJywgJ2JvdHRvbSddKSxcbiAgUHJveHlhYmxlLFxuICBUaGVtZWFibGVcbilcblxuLyogQHZ1ZS9jb21wb25lbnQgKi9cbmV4cG9ydCBkZWZhdWx0IGJhc2VNaXhpbnMuZXh0ZW5kKHtcbiAgbmFtZTogJ3YtcHJvZ3Jlc3MtbGluZWFyJyxcblxuICBkaXJlY3RpdmVzOiB7IGludGVyc2VjdCB9LFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlOiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB9LFxuICAgIGJhY2tncm91bmRDb2xvcjoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogbnVsbCxcbiAgICB9LFxuICAgIGJhY2tncm91bmRPcGFjaXR5OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogbnVsbCxcbiAgICB9LFxuICAgIGJ1ZmZlclZhbHVlOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMTAwLFxuICAgIH0sXG4gICAgY29sb3I6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQ6ICdwcmltYXJ5JyxcbiAgICB9LFxuICAgIGhlaWdodDoge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDQsXG4gICAgfSxcbiAgICBpbmRldGVybWluYXRlOiBCb29sZWFuLFxuICAgIHF1ZXJ5OiBCb29sZWFuLFxuICAgIHJldmVyc2U6IEJvb2xlYW4sXG4gICAgcm91bmRlZDogQm9vbGVhbixcbiAgICBzdHJlYW06IEJvb2xlYW4sXG4gICAgc3RyaXBlZDogQm9vbGVhbixcbiAgICB2YWx1ZToge1xuICAgICAgdHlwZTogW051bWJlciwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6IDAsXG4gICAgfSxcbiAgfSxcblxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW50ZXJuYWxMYXp5VmFsdWU6IHRoaXMudmFsdWUgfHwgMCxcbiAgICAgIGlzVmlzaWJsZTogdHJ1ZSxcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBfX2NhY2hlZEJhY2tncm91bmQgKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB0aGlzLnNldEJhY2tncm91bmRDb2xvcih0aGlzLmJhY2tncm91bmRDb2xvciB8fCB0aGlzLmNvbG9yLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1saW5lYXJfX2JhY2tncm91bmQnLFxuICAgICAgICBzdHlsZTogdGhpcy5iYWNrZ3JvdW5kU3R5bGUsXG4gICAgICB9KSlcbiAgICB9LFxuICAgIF9fY2FjaGVkQmFyICgpOiBWTm9kZSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCh0aGlzLmNvbXB1dGVkVHJhbnNpdGlvbiwgW3RoaXMuX19jYWNoZWRCYXJUeXBlXSlcbiAgICB9LFxuICAgIF9fY2FjaGVkQmFyVHlwZSAoKTogVk5vZGUge1xuICAgICAgcmV0dXJuIHRoaXMuaW5kZXRlcm1pbmF0ZSA/IHRoaXMuX19jYWNoZWRJbmRldGVybWluYXRlIDogdGhpcy5fX2NhY2hlZERldGVybWluYXRlXG4gICAgfSxcbiAgICBfX2NhY2hlZEJ1ZmZlciAoKTogVk5vZGUge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd2LXByb2dyZXNzLWxpbmVhcl9fYnVmZmVyJyxcbiAgICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgfSlcbiAgICB9LFxuICAgIF9fY2FjaGVkRGV0ZXJtaW5hdGUgKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB0aGlzLnNldEJhY2tncm91bmRDb2xvcih0aGlzLmNvbG9yLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiBgdi1wcm9ncmVzcy1saW5lYXJfX2RldGVybWluYXRlYCxcbiAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICB3aWR0aDogY29udmVydFRvVW5pdCh0aGlzLm5vcm1hbGl6ZWRWYWx1ZSwgJyUnKSxcbiAgICAgICAgfSxcbiAgICAgIH0pKVxuICAgIH0sXG4gICAgX19jYWNoZWRJbmRldGVybWluYXRlICgpOiBWTm9kZSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtcHJvZ3Jlc3MtbGluZWFyX19pbmRldGVybWluYXRlJyxcbiAgICAgICAgY2xhc3M6IHtcbiAgICAgICAgICAndi1wcm9ncmVzcy1saW5lYXJfX2luZGV0ZXJtaW5hdGUtLWFjdGl2ZSc6IHRoaXMuYWN0aXZlLFxuICAgICAgICB9LFxuICAgICAgfSwgW1xuICAgICAgICB0aGlzLmdlblByb2dyZXNzQmFyKCdsb25nJyksXG4gICAgICAgIHRoaXMuZ2VuUHJvZ3Jlc3NCYXIoJ3Nob3J0JyksXG4gICAgICBdKVxuICAgIH0sXG4gICAgX19jYWNoZWRTdHJlYW0gKCk6IFZOb2RlIHwgbnVsbCB7XG4gICAgICBpZiAoIXRoaXMuc3RyZWFtKSByZXR1cm4gbnVsbFxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2JywgdGhpcy5zZXRUZXh0Q29sb3IodGhpcy5jb2xvciwge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtcHJvZ3Jlc3MtbGluZWFyX19zdHJlYW0nLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIHdpZHRoOiBjb252ZXJ0VG9Vbml0KDEwMCAtIHRoaXMubm9ybWFsaXplZEJ1ZmZlciwgJyUnKSxcbiAgICAgICAgfSxcbiAgICAgIH0pKVxuICAgIH0sXG4gICAgYmFja2dyb3VuZFN0eWxlICgpOiBvYmplY3Qge1xuICAgICAgY29uc3QgYmFja2dyb3VuZE9wYWNpdHkgPSB0aGlzLmJhY2tncm91bmRPcGFjaXR5ID09IG51bGxcbiAgICAgICAgPyAodGhpcy5iYWNrZ3JvdW5kQ29sb3IgPyAxIDogMC4zKVxuICAgICAgICA6IHBhcnNlRmxvYXQodGhpcy5iYWNrZ3JvdW5kT3BhY2l0eSlcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb3BhY2l0eTogYmFja2dyb3VuZE9wYWNpdHksXG4gICAgICAgIFt0aGlzLmlzUmV2ZXJzZWQgPyAncmlnaHQnIDogJ2xlZnQnXTogY29udmVydFRvVW5pdCh0aGlzLm5vcm1hbGl6ZWRWYWx1ZSwgJyUnKSxcbiAgICAgICAgd2lkdGg6IGNvbnZlcnRUb1VuaXQoTWF0aC5tYXgoMCwgdGhpcy5ub3JtYWxpemVkQnVmZmVyIC0gdGhpcy5ub3JtYWxpemVkVmFsdWUpLCAnJScpLFxuICAgICAgfVxuICAgIH0sXG4gICAgY2xhc3NlcyAoKTogb2JqZWN0IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgICd2LXByb2dyZXNzLWxpbmVhci0tYWJzb2x1dGUnOiB0aGlzLmFic29sdXRlLFxuICAgICAgICAndi1wcm9ncmVzcy1saW5lYXItLWZpeGVkJzogdGhpcy5maXhlZCxcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtbGluZWFyLS1xdWVyeSc6IHRoaXMucXVlcnksXG4gICAgICAgICd2LXByb2dyZXNzLWxpbmVhci0tcmVhY3RpdmUnOiB0aGlzLnJlYWN0aXZlLFxuICAgICAgICAndi1wcm9ncmVzcy1saW5lYXItLXJldmVyc2UnOiB0aGlzLmlzUmV2ZXJzZWQsXG4gICAgICAgICd2LXByb2dyZXNzLWxpbmVhci0tcm91bmRlZCc6IHRoaXMucm91bmRlZCxcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtbGluZWFyLS1zdHJpcGVkJzogdGhpcy5zdHJpcGVkLFxuICAgICAgICAndi1wcm9ncmVzcy1saW5lYXItLXZpc2libGUnOiB0aGlzLmlzVmlzaWJsZSxcbiAgICAgICAgLi4udGhpcy50aGVtZUNsYXNzZXMsXG4gICAgICB9XG4gICAgfSxcbiAgICBjb21wdXRlZFRyYW5zaXRpb24gKCk6IEZ1bmN0aW9uYWxDb21wb25lbnRPcHRpb25zIHtcbiAgICAgIHJldHVybiB0aGlzLmluZGV0ZXJtaW5hdGUgPyBWRmFkZVRyYW5zaXRpb24gOiBWU2xpZGVYVHJhbnNpdGlvblxuICAgIH0sXG4gICAgaXNSZXZlcnNlZCAoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy4kdnVldGlmeS5ydGwgIT09IHRoaXMucmV2ZXJzZVxuICAgIH0sXG4gICAgbm9ybWFsaXplZEJ1ZmZlciAoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiB0aGlzLm5vcm1hbGl6ZSh0aGlzLmJ1ZmZlclZhbHVlKVxuICAgIH0sXG4gICAgbm9ybWFsaXplZFZhbHVlICgpOiBudW1iZXIge1xuICAgICAgcmV0dXJuIHRoaXMubm9ybWFsaXplKHRoaXMuaW50ZXJuYWxMYXp5VmFsdWUpXG4gICAgfSxcbiAgICByZWFjdGl2ZSAoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gQm9vbGVhbih0aGlzLiRsaXN0ZW5lcnMuY2hhbmdlKVxuICAgIH0sXG4gICAgc3R5bGVzICgpOiBvYmplY3Qge1xuICAgICAgY29uc3Qgc3R5bGVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge31cblxuICAgICAgaWYgKCF0aGlzLmFjdGl2ZSkge1xuICAgICAgICBzdHlsZXMuaGVpZ2h0ID0gMFxuICAgICAgfVxuXG4gICAgICBpZiAoIXRoaXMuaW5kZXRlcm1pbmF0ZSAmJiBwYXJzZUZsb2F0KHRoaXMubm9ybWFsaXplZEJ1ZmZlcikgIT09IDEwMCkge1xuICAgICAgICBzdHlsZXMud2lkdGggPSBjb252ZXJ0VG9Vbml0KHRoaXMubm9ybWFsaXplZEJ1ZmZlciwgJyUnKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gc3R5bGVzXG4gICAgfSxcbiAgfSxcblxuICBtZXRob2RzOiB7XG4gICAgZ2VuQ29udGVudCAoKSB7XG4gICAgICBjb25zdCBzbG90ID0gZ2V0U2xvdCh0aGlzLCAnZGVmYXVsdCcsIHsgdmFsdWU6IHRoaXMuaW50ZXJuYWxMYXp5VmFsdWUgfSlcblxuICAgICAgaWYgKCFzbG90KSByZXR1cm4gbnVsbFxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3YtcHJvZ3Jlc3MtbGluZWFyX19jb250ZW50JyxcbiAgICAgIH0sIHNsb3QpXG4gICAgfSxcbiAgICBnZW5MaXN0ZW5lcnMgKCkge1xuICAgICAgY29uc3QgbGlzdGVuZXJzID0gdGhpcy4kbGlzdGVuZXJzXG5cbiAgICAgIGlmICh0aGlzLnJlYWN0aXZlKSB7XG4gICAgICAgIGxpc3RlbmVycy5jbGljayA9IHRoaXMub25DbGlja1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gbGlzdGVuZXJzXG4gICAgfSxcbiAgICBnZW5Qcm9ncmVzc0JhciAobmFtZTogJ2xvbmcnIHwgJ3Nob3J0Jykge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKHRoaXMuY29sb3IsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd2LXByb2dyZXNzLWxpbmVhcl9faW5kZXRlcm1pbmF0ZScsXG4gICAgICAgIGNsYXNzOiB7XG4gICAgICAgICAgW25hbWVdOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgfSkpXG4gICAgfSxcbiAgICBvbkNsaWNrIChlOiBNb3VzZUV2ZW50KSB7XG4gICAgICBpZiAoIXRoaXMucmVhY3RpdmUpIHJldHVyblxuXG4gICAgICBjb25zdCB7IHdpZHRoIH0gPSB0aGlzLiRlbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuXG4gICAgICB0aGlzLmludGVybmFsVmFsdWUgPSBlLm9mZnNldFggLyB3aWR0aCAqIDEwMFxuICAgIH0sXG4gICAgb25PYnNlcnZlIChlbnRyaWVzOiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5W10sIG9ic2VydmVyOiBJbnRlcnNlY3Rpb25PYnNlcnZlciwgaXNJbnRlcnNlY3Rpbmc6IGJvb2xlYW4pIHtcbiAgICAgIHRoaXMuaXNWaXNpYmxlID0gaXNJbnRlcnNlY3RpbmdcbiAgICB9LFxuICAgIG5vcm1hbGl6ZSAodmFsdWU6IHN0cmluZyB8IG51bWJlcikge1xuICAgICAgaWYgKHZhbHVlIDwgMCkgcmV0dXJuIDBcbiAgICAgIGlmICh2YWx1ZSA+IDEwMCkgcmV0dXJuIDEwMFxuICAgICAgcmV0dXJuIHBhcnNlRmxvYXQodmFsdWUpXG4gICAgfSxcbiAgfSxcblxuICByZW5kZXIgKGgpOiBWTm9kZSB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1saW5lYXInLFxuICAgICAgYXR0cnM6IHtcbiAgICAgICAgcm9sZTogJ3Byb2dyZXNzYmFyJyxcbiAgICAgICAgJ2FyaWEtdmFsdWVtaW4nOiAwLFxuICAgICAgICAnYXJpYS12YWx1ZW1heCc6IHRoaXMubm9ybWFsaXplZEJ1ZmZlcixcbiAgICAgICAgJ2FyaWEtdmFsdWVub3cnOiB0aGlzLmluZGV0ZXJtaW5hdGUgPyB1bmRlZmluZWQgOiB0aGlzLm5vcm1hbGl6ZWRWYWx1ZSxcbiAgICAgIH0sXG4gICAgICBjbGFzczogdGhpcy5jbGFzc2VzLFxuICAgICAgZGlyZWN0aXZlczogW3tcbiAgICAgICAgbmFtZTogJ2ludGVyc2VjdCcsXG4gICAgICAgIHZhbHVlOiB0aGlzLm9uT2JzZXJ2ZSxcbiAgICAgIH1dLFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgYm90dG9tOiB0aGlzLmJvdHRvbSA/IDAgOiB1bmRlZmluZWQsXG4gICAgICAgIGhlaWdodDogdGhpcy5hY3RpdmUgPyBjb252ZXJ0VG9Vbml0KHRoaXMuaGVpZ2h0KSA6IDAsXG4gICAgICAgIHRvcDogdGhpcy50b3AgPyAwIDogdW5kZWZpbmVkLFxuICAgICAgfSxcbiAgICAgIG9uOiB0aGlzLmdlbkxpc3RlbmVycygpLFxuICAgIH1cblxuICAgIHJldHVybiBoKCdkaXYnLCBkYXRhLCBbXG4gICAgICB0aGlzLl9fY2FjaGVkU3RyZWFtLFxuICAgICAgdGhpcy5fX2NhY2hlZEJhY2tncm91bmQsXG4gICAgICB0aGlzLl9fY2FjaGVkQnVmZmVyLFxuICAgICAgdGhpcy5fX2NhY2hlZEJhcixcbiAgICAgIHRoaXMuZ2VuQ29udGVudCgpLFxuICAgIF0pXG4gIH0sXG59KVxuIiwiaW1wb3J0IFZQcm9ncmVzc0xpbmVhciBmcm9tICcuL1ZQcm9ncmVzc0xpbmVhcidcblxuZXhwb3J0IHsgVlByb2dyZXNzTGluZWFyIH1cbmV4cG9ydCBkZWZhdWx0IFZQcm9ncmVzc0xpbmVhclxuIiwiaW1wb3J0IFZ1ZSwgeyBWTm9kZSB9IGZyb20gJ3Z1ZSdcbmltcG9ydCBWUHJvZ3Jlc3NMaW5lYXIgZnJvbSAnLi4vLi4vY29tcG9uZW50cy9WUHJvZ3Jlc3NMaW5lYXInXG5cbmludGVyZmFjZSBjb2xvcmFibGUgZXh0ZW5kcyBWdWUge1xuICBjb2xvcj86IHN0cmluZ1xufVxuXG4vKipcbiAqIExvYWRhYmxlXG4gKlxuICogQG1peGluXG4gKlxuICogVXNlZCB0byBhZGQgbGluZWFyIHByb2dyZXNzIGJhciB0byBjb21wb25lbnRzXG4gKiBDYW4gdXNlIGEgZGVmYXVsdCBiYXIgd2l0aCBhIHNwZWNpZmljIGNvbG9yXG4gKiBvciBkZXNpZ25hdGUgYSBjdXN0b20gcHJvZ3Jlc3MgbGluZWFyIGJhclxuICovXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgVnVlLmV4dGVuZDxjb2xvcmFibGU+KCkuZXh0ZW5kKHtcbiAgbmFtZTogJ2xvYWRhYmxlJyxcblxuICBwcm9wczoge1xuICAgIGxvYWRpbmc6IHtcbiAgICAgIHR5cGU6IFtCb29sZWFuLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgfSxcbiAgICBsb2FkZXJIZWlnaHQ6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAyLFxuICAgIH0sXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGdlblByb2dyZXNzICgpOiBWTm9kZSB8IFZOb2RlW10gfCBudWxsIHtcbiAgICAgIGlmICh0aGlzLmxvYWRpbmcgPT09IGZhbHNlKSByZXR1cm4gbnVsbFxuXG4gICAgICByZXR1cm4gdGhpcy4kc2xvdHMucHJvZ3Jlc3MgfHwgdGhpcy4kY3JlYXRlRWxlbWVudChWUHJvZ3Jlc3NMaW5lYXIsIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBhYnNvbHV0ZTogdHJ1ZSxcbiAgICAgICAgICBjb2xvcjogKHRoaXMubG9hZGluZyA9PT0gdHJ1ZSB8fCB0aGlzLmxvYWRpbmcgPT09ICcnKVxuICAgICAgICAgICAgPyAodGhpcy5jb2xvciB8fCAncHJpbWFyeScpXG4gICAgICAgICAgICA6IHRoaXMubG9hZGluZyxcbiAgICAgICAgICBoZWlnaHQ6IHRoaXMubG9hZGVySGVpZ2h0LFxuICAgICAgICAgIGluZGV0ZXJtaW5hdGU6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIH0sXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///159\n")},,,,,,,,,,,,,,,,,,,,,,,,function(module,exports,__webpack_require__){eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(16));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function () {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var WordArray = C_lib.WordArray;\n\t var Hasher = C_lib.Hasher;\n\t var C_algo = C.algo;\n\n\t // Reusable object\n\t var W = [];\n\n\t /**\n\t * SHA-1 hash algorithm.\n\t */\n\t var SHA1 = C_algo.SHA1 = Hasher.extend({\n\t _doReset: function () {\n\t this._hash = new WordArray.init([\n\t 0x67452301, 0xefcdab89,\n\t 0x98badcfe, 0x10325476,\n\t 0xc3d2e1f0\n\t ]);\n\t },\n\n\t _doProcessBlock: function (M, offset) {\n\t // Shortcut\n\t var H = this._hash.words;\n\n\t // Working variables\n\t var a = H[0];\n\t var b = H[1];\n\t var c = H[2];\n\t var d = H[3];\n\t var e = H[4];\n\n\t // Computation\n\t for (var i = 0; i < 80; i++) {\n\t if (i < 16) {\n\t W[i] = M[offset + i] | 0;\n\t } else {\n\t var n = W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16];\n\t W[i] = (n << 1) | (n >>> 31);\n\t }\n\n\t var t = ((a << 5) | (a >>> 27)) + e + W[i];\n\t if (i < 20) {\n\t t += ((b & c) | (~b & d)) + 0x5a827999;\n\t } else if (i < 40) {\n\t t += (b ^ c ^ d) + 0x6ed9eba1;\n\t } else if (i < 60) {\n\t t += ((b & c) | (b & d) | (c & d)) - 0x70e44324;\n\t } else /* if (i < 80) */ {\n\t t += (b ^ c ^ d) - 0x359d3e2a;\n\t }\n\n\t e = d;\n\t d = c;\n\t c = (b << 30) | (b >>> 2);\n\t b = a;\n\t a = t;\n\t }\n\n\t // Intermediate hash value\n\t H[0] = (H[0] + a) | 0;\n\t H[1] = (H[1] + b) | 0;\n\t H[2] = (H[2] + c) | 0;\n\t H[3] = (H[3] + d) | 0;\n\t H[4] = (H[4] + e) | 0;\n\t },\n\n\t _doFinalize: function () {\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\n\t var nBitsTotal = this._nDataBytes * 8;\n\t var nBitsLeft = data.sigBytes * 8;\n\n\t // Add padding\n\t dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = Math.floor(nBitsTotal / 0x100000000);\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = nBitsTotal;\n\t data.sigBytes = dataWords.length * 4;\n\n\t // Hash final blocks\n\t this._process();\n\n\t // Return final computed hash\n\t return this._hash;\n\t },\n\n\t clone: function () {\n\t var clone = Hasher.clone.call(this);\n\t clone._hash = this._hash.clone();\n\n\t return clone;\n\t }\n\t });\n\n\t /**\n\t * Shortcut function to the hasher's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hash = CryptoJS.SHA1('message');\n\t * var hash = CryptoJS.SHA1(wordArray);\n\t */\n\t C.SHA1 = Hasher._createHelper(SHA1);\n\n\t /**\n\t * Shortcut function to the HMAC's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hmac = CryptoJS.HmacSHA1(message, key);\n\t */\n\t C.HmacSHA1 = Hasher._createHmacHelper(SHA1);\n\t}());\n\n\n\treturn CryptoJS.SHA1;\n\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3J5cHRvLWpzL3NoYTEuanM/ZGYyZiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxDQUFDO0FBQ0QsS0FBSyxJQUEyQjtBQUNoQztBQUNBLHFDQUFxQyxtQkFBTyxDQUFDLEVBQVE7QUFDckQ7QUFDQSxNQUFNLEVBT0o7QUFDRixDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxVQUFVOztBQUVWO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSw0QkFBNEIsUUFBUTtBQUNwQztBQUNBO0FBQ0Esa0JBQWtCO0FBQ2xCO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxrQkFBa0I7QUFDbEI7QUFDQSxrQkFBa0I7QUFDbEI7QUFDQSxrQkFBa0I7QUFDbEI7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBVTs7QUFFVjtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsVUFBVTs7QUFFVjtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLE1BQU07O0FBRU47QUFDQTtBQUNBO0FBQ0EsZ0JBQWdCLGlCQUFpQjtBQUNqQztBQUNBLGlCQUFpQixVQUFVO0FBQzNCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxnQkFBZ0IsaUJBQWlCO0FBQ2pDLGdCQUFnQixpQkFBaUI7QUFDakM7QUFDQSxpQkFBaUIsVUFBVTtBQUMzQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsRUFBRTs7O0FBR0Y7O0FBRUEsQ0FBQyIsImZpbGUiOiIxODMuanMiLCJzb3VyY2VzQ29udGVudCI6WyI7KGZ1bmN0aW9uIChyb290LCBmYWN0b3J5KSB7XG5cdGlmICh0eXBlb2YgZXhwb3J0cyA9PT0gXCJvYmplY3RcIikge1xuXHRcdC8vIENvbW1vbkpTXG5cdFx0bW9kdWxlLmV4cG9ydHMgPSBleHBvcnRzID0gZmFjdG9yeShyZXF1aXJlKFwiLi9jb3JlXCIpKTtcblx0fVxuXHRlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSBcImZ1bmN0aW9uXCIgJiYgZGVmaW5lLmFtZCkge1xuXHRcdC8vIEFNRFxuXHRcdGRlZmluZShbXCIuL2NvcmVcIl0sIGZhY3RvcnkpO1xuXHR9XG5cdGVsc2Uge1xuXHRcdC8vIEdsb2JhbCAoYnJvd3Nlcilcblx0XHRmYWN0b3J5KHJvb3QuQ3J5cHRvSlMpO1xuXHR9XG59KHRoaXMsIGZ1bmN0aW9uIChDcnlwdG9KUykge1xuXG5cdChmdW5jdGlvbiAoKSB7XG5cdCAgICAvLyBTaG9ydGN1dHNcblx0ICAgIHZhciBDID0gQ3J5cHRvSlM7XG5cdCAgICB2YXIgQ19saWIgPSBDLmxpYjtcblx0ICAgIHZhciBXb3JkQXJyYXkgPSBDX2xpYi5Xb3JkQXJyYXk7XG5cdCAgICB2YXIgSGFzaGVyID0gQ19saWIuSGFzaGVyO1xuXHQgICAgdmFyIENfYWxnbyA9IEMuYWxnbztcblxuXHQgICAgLy8gUmV1c2FibGUgb2JqZWN0XG5cdCAgICB2YXIgVyA9IFtdO1xuXG5cdCAgICAvKipcblx0ICAgICAqIFNIQS0xIGhhc2ggYWxnb3JpdGhtLlxuXHQgICAgICovXG5cdCAgICB2YXIgU0hBMSA9IENfYWxnby5TSEExID0gSGFzaGVyLmV4dGVuZCh7XG5cdCAgICAgICAgX2RvUmVzZXQ6IGZ1bmN0aW9uICgpIHtcblx0ICAgICAgICAgICAgdGhpcy5faGFzaCA9IG5ldyBXb3JkQXJyYXkuaW5pdChbXG5cdCAgICAgICAgICAgICAgICAweDY3NDUyMzAxLCAweGVmY2RhYjg5LFxuXHQgICAgICAgICAgICAgICAgMHg5OGJhZGNmZSwgMHgxMDMyNTQ3Nixcblx0ICAgICAgICAgICAgICAgIDB4YzNkMmUxZjBcblx0ICAgICAgICAgICAgXSk7XG5cdCAgICAgICAgfSxcblxuXHQgICAgICAgIF9kb1Byb2Nlc3NCbG9jazogZnVuY3Rpb24gKE0sIG9mZnNldCkge1xuXHQgICAgICAgICAgICAvLyBTaG9ydGN1dFxuXHQgICAgICAgICAgICB2YXIgSCA9IHRoaXMuX2hhc2gud29yZHM7XG5cblx0ICAgICAgICAgICAgLy8gV29ya2luZyB2YXJpYWJsZXNcblx0ICAgICAgICAgICAgdmFyIGEgPSBIWzBdO1xuXHQgICAgICAgICAgICB2YXIgYiA9IEhbMV07XG5cdCAgICAgICAgICAgIHZhciBjID0gSFsyXTtcblx0ICAgICAgICAgICAgdmFyIGQgPSBIWzNdO1xuXHQgICAgICAgICAgICB2YXIgZSA9IEhbNF07XG5cblx0ICAgICAgICAgICAgLy8gQ29tcHV0YXRpb25cblx0ICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCA4MDsgaSsrKSB7XG5cdCAgICAgICAgICAgICAgICBpZiAoaSA8IDE2KSB7XG5cdCAgICAgICAgICAgICAgICAgICAgV1tpXSA9IE1bb2Zmc2V0ICsgaV0gfCAwO1xuXHQgICAgICAgICAgICAgICAgfSBlbHNlIHtcblx0ICAgICAgICAgICAgICAgICAgICB2YXIgbiA9IFdbaSAtIDNdIF4gV1tpIC0gOF0gXiBXW2kgLSAxNF0gXiBXW2kgLSAxNl07XG5cdCAgICAgICAgICAgICAgICAgICAgV1tpXSA9IChuIDw8IDEpIHwgKG4gPj4+IDMxKTtcblx0ICAgICAgICAgICAgICAgIH1cblxuXHQgICAgICAgICAgICAgICAgdmFyIHQgPSAoKGEgPDwgNSkgfCAoYSA+Pj4gMjcpKSArIGUgKyBXW2ldO1xuXHQgICAgICAgICAgICAgICAgaWYgKGkgPCAyMCkge1xuXHQgICAgICAgICAgICAgICAgICAgIHQgKz0gKChiICYgYykgfCAofmIgJiBkKSkgKyAweDVhODI3OTk5O1xuXHQgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpIDwgNDApIHtcblx0ICAgICAgICAgICAgICAgICAgICB0ICs9IChiIF4gYyBeIGQpICsgMHg2ZWQ5ZWJhMTtcblx0ICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaSA8IDYwKSB7XG5cdCAgICAgICAgICAgICAgICAgICAgdCArPSAoKGIgJiBjKSB8IChiICYgZCkgfCAoYyAmIGQpKSAtIDB4NzBlNDQzMjQ7XG5cdCAgICAgICAgICAgICAgICB9IGVsc2UgLyogaWYgKGkgPCA4MCkgKi8ge1xuXHQgICAgICAgICAgICAgICAgICAgIHQgKz0gKGIgXiBjIF4gZCkgLSAweDM1OWQzZTJhO1xuXHQgICAgICAgICAgICAgICAgfVxuXG5cdCAgICAgICAgICAgICAgICBlID0gZDtcblx0ICAgICAgICAgICAgICAgIGQgPSBjO1xuXHQgICAgICAgICAgICAgICAgYyA9IChiIDw8IDMwKSB8IChiID4+PiAyKTtcblx0ICAgICAgICAgICAgICAgIGIgPSBhO1xuXHQgICAgICAgICAgICAgICAgYSA9IHQ7XG5cdCAgICAgICAgICAgIH1cblxuXHQgICAgICAgICAgICAvLyBJbnRlcm1lZGlhdGUgaGFzaCB2YWx1ZVxuXHQgICAgICAgICAgICBIWzBdID0gKEhbMF0gKyBhKSB8IDA7XG5cdCAgICAgICAgICAgIEhbMV0gPSAoSFsxXSArIGIpIHwgMDtcblx0ICAgICAgICAgICAgSFsyXSA9IChIWzJdICsgYykgfCAwO1xuXHQgICAgICAgICAgICBIWzNdID0gKEhbM10gKyBkKSB8IDA7XG5cdCAgICAgICAgICAgIEhbNF0gPSAoSFs0XSArIGUpIHwgMDtcblx0ICAgICAgICB9LFxuXG5cdCAgICAgICAgX2RvRmluYWxpemU6IGZ1bmN0aW9uICgpIHtcblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRzXG5cdCAgICAgICAgICAgIHZhciBkYXRhID0gdGhpcy5fZGF0YTtcblx0ICAgICAgICAgICAgdmFyIGRhdGFXb3JkcyA9IGRhdGEud29yZHM7XG5cblx0ICAgICAgICAgICAgdmFyIG5CaXRzVG90YWwgPSB0aGlzLl9uRGF0YUJ5dGVzICogODtcblx0ICAgICAgICAgICAgdmFyIG5CaXRzTGVmdCA9IGRhdGEuc2lnQnl0ZXMgKiA4O1xuXG5cdCAgICAgICAgICAgIC8vIEFkZCBwYWRkaW5nXG5cdCAgICAgICAgICAgIGRhdGFXb3Jkc1tuQml0c0xlZnQgPj4+IDVdIHw9IDB4ODAgPDwgKDI0IC0gbkJpdHNMZWZ0ICUgMzIpO1xuXHQgICAgICAgICAgICBkYXRhV29yZHNbKCgobkJpdHNMZWZ0ICsgNjQpID4+PiA5KSA8PCA0KSArIDE0XSA9IE1hdGguZmxvb3IobkJpdHNUb3RhbCAvIDB4MTAwMDAwMDAwKTtcblx0ICAgICAgICAgICAgZGF0YVdvcmRzWygoKG5CaXRzTGVmdCArIDY0KSA+Pj4gOSkgPDwgNCkgKyAxNV0gPSBuQml0c1RvdGFsO1xuXHQgICAgICAgICAgICBkYXRhLnNpZ0J5dGVzID0gZGF0YVdvcmRzLmxlbmd0aCAqIDQ7XG5cblx0ICAgICAgICAgICAgLy8gSGFzaCBmaW5hbCBibG9ja3Ncblx0ICAgICAgICAgICAgdGhpcy5fcHJvY2VzcygpO1xuXG5cdCAgICAgICAgICAgIC8vIFJldHVybiBmaW5hbCBjb21wdXRlZCBoYXNoXG5cdCAgICAgICAgICAgIHJldHVybiB0aGlzLl9oYXNoO1xuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICBjbG9uZTogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICB2YXIgY2xvbmUgPSBIYXNoZXIuY2xvbmUuY2FsbCh0aGlzKTtcblx0ICAgICAgICAgICAgY2xvbmUuX2hhc2ggPSB0aGlzLl9oYXNoLmNsb25lKCk7XG5cblx0ICAgICAgICAgICAgcmV0dXJuIGNsb25lO1xuXHQgICAgICAgIH1cblx0ICAgIH0pO1xuXG5cdCAgICAvKipcblx0ICAgICAqIFNob3J0Y3V0IGZ1bmN0aW9uIHRvIHRoZSBoYXNoZXIncyBvYmplY3QgaW50ZXJmYWNlLlxuXHQgICAgICpcblx0ICAgICAqIEBwYXJhbSB7V29yZEFycmF5fHN0cmluZ30gbWVzc2FnZSBUaGUgbWVzc2FnZSB0byBoYXNoLlxuXHQgICAgICpcblx0ICAgICAqIEByZXR1cm4ge1dvcmRBcnJheX0gVGhlIGhhc2guXG5cdCAgICAgKlxuXHQgICAgICogQHN0YXRpY1xuXHQgICAgICpcblx0ICAgICAqIEBleGFtcGxlXG5cdCAgICAgKlxuXHQgICAgICogICAgIHZhciBoYXNoID0gQ3J5cHRvSlMuU0hBMSgnbWVzc2FnZScpO1xuXHQgICAgICogICAgIHZhciBoYXNoID0gQ3J5cHRvSlMuU0hBMSh3b3JkQXJyYXkpO1xuXHQgICAgICovXG5cdCAgICBDLlNIQTEgPSBIYXNoZXIuX2NyZWF0ZUhlbHBlcihTSEExKTtcblxuXHQgICAgLyoqXG5cdCAgICAgKiBTaG9ydGN1dCBmdW5jdGlvbiB0byB0aGUgSE1BQydzIG9iamVjdCBpbnRlcmZhY2UuXG5cdCAgICAgKlxuXHQgICAgICogQHBhcmFtIHtXb3JkQXJyYXl8c3RyaW5nfSBtZXNzYWdlIFRoZSBtZXNzYWdlIHRvIGhhc2guXG5cdCAgICAgKiBAcGFyYW0ge1dvcmRBcnJheXxzdHJpbmd9IGtleSBUaGUgc2VjcmV0IGtleS5cblx0ICAgICAqXG5cdCAgICAgKiBAcmV0dXJuIHtXb3JkQXJyYXl9IFRoZSBITUFDLlxuXHQgICAgICpcblx0ICAgICAqIEBzdGF0aWNcblx0ICAgICAqXG5cdCAgICAgKiBAZXhhbXBsZVxuXHQgICAgICpcblx0ICAgICAqICAgICB2YXIgaG1hYyA9IENyeXB0b0pTLkhtYWNTSEExKG1lc3NhZ2UsIGtleSk7XG5cdCAgICAgKi9cblx0ICAgIEMuSG1hY1NIQTEgPSBIYXNoZXIuX2NyZWF0ZUhtYWNIZWxwZXIoU0hBMSk7XG5cdH0oKSk7XG5cblxuXHRyZXR1cm4gQ3J5cHRvSlMuU0hBMTtcblxufSkpOyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///183\n")},function(module,exports,__webpack_require__){eval(";(function (root, factory) {\n\tif (true) {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(__webpack_require__(16));\n\t}\n\telse {}\n}(this, function (CryptoJS) {\n\n\t(function () {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var Base = C_lib.Base;\n\t var C_enc = C.enc;\n\t var Utf8 = C_enc.Utf8;\n\t var C_algo = C.algo;\n\n\t /**\n\t * HMAC algorithm.\n\t */\n\t var HMAC = C_algo.HMAC = Base.extend({\n\t /**\n\t * Initializes a newly created HMAC.\n\t *\n\t * @param {Hasher} hasher The hash algorithm to use.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @example\n\t *\n\t * var hmacHasher = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256, key);\n\t */\n\t init: function (hasher, key) {\n\t // Init hasher\n\t hasher = this._hasher = new hasher.init();\n\n\t // Convert string to WordArray, else assume WordArray already\n\t if (typeof key == 'string') {\n\t key = Utf8.parse(key);\n\t }\n\n\t // Shortcuts\n\t var hasherBlockSize = hasher.blockSize;\n\t var hasherBlockSizeBytes = hasherBlockSize * 4;\n\n\t // Allow arbitrary length keys\n\t if (key.sigBytes > hasherBlockSizeBytes) {\n\t key = hasher.finalize(key);\n\t }\n\n\t // Clamp excess bits\n\t key.clamp();\n\n\t // Clone key for inner and outer pads\n\t var oKey = this._oKey = key.clone();\n\t var iKey = this._iKey = key.clone();\n\n\t // Shortcuts\n\t var oKeyWords = oKey.words;\n\t var iKeyWords = iKey.words;\n\n\t // XOR keys with pad constants\n\t for (var i = 0; i < hasherBlockSize; i++) {\n\t oKeyWords[i] ^= 0x5c5c5c5c;\n\t iKeyWords[i] ^= 0x36363636;\n\t }\n\t oKey.sigBytes = iKey.sigBytes = hasherBlockSizeBytes;\n\n\t // Set initial values\n\t this.reset();\n\t },\n\n\t /**\n\t * Resets this HMAC to its initial state.\n\t *\n\t * @example\n\t *\n\t * hmacHasher.reset();\n\t */\n\t reset: function () {\n\t // Shortcut\n\t var hasher = this._hasher;\n\n\t // Reset\n\t hasher.reset();\n\t hasher.update(this._iKey);\n\t },\n\n\t /**\n\t * Updates this HMAC with a message.\n\t *\n\t * @param {WordArray|string} messageUpdate The message to append.\n\t *\n\t * @return {HMAC} This HMAC instance.\n\t *\n\t * @example\n\t *\n\t * hmacHasher.update('message');\n\t * hmacHasher.update(wordArray);\n\t */\n\t update: function (messageUpdate) {\n\t this._hasher.update(messageUpdate);\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Finalizes the HMAC computation.\n\t * Note that the finalize operation is effectively a destructive, read-once operation.\n\t *\n\t * @param {WordArray|string} messageUpdate (Optional) A final message update.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @example\n\t *\n\t * var hmac = hmacHasher.finalize();\n\t * var hmac = hmacHasher.finalize('message');\n\t * var hmac = hmacHasher.finalize(wordArray);\n\t */\n\t finalize: function (messageUpdate) {\n\t // Shortcut\n\t var hasher = this._hasher;\n\n\t // Compute HMAC\n\t var innerHash = hasher.finalize(messageUpdate);\n\t hasher.reset();\n\t var hmac = hasher.finalize(this._oKey.clone().concat(innerHash));\n\n\t return hmac;\n\t }\n\t });\n\t}());\n\n\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3J5cHRvLWpzL2htYWMuanM/NTk4MCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxDQUFDO0FBQ0QsS0FBSyxJQUEyQjtBQUNoQztBQUNBLHFDQUFxQyxtQkFBTyxDQUFDLEVBQVE7QUFDckQ7QUFDQSxNQUFNLEVBT0o7QUFDRixDQUFDOztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsT0FBTztBQUMzQixvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLDRCQUE0QixxQkFBcUI7QUFDakQ7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBLFVBQVU7O0FBRVY7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsVUFBVTs7QUFFVjtBQUNBO0FBQ0E7QUFDQSxvQkFBb0IsaUJBQWlCO0FBQ3JDO0FBQ0EscUJBQXFCLEtBQUs7QUFDMUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsVUFBVTs7QUFFVjtBQUNBO0FBQ0E7QUFDQTtBQUNBLG9CQUFvQixpQkFBaUI7QUFDckM7QUFDQSxxQkFBcUIsVUFBVTtBQUMvQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsTUFBTTtBQUNOLEVBQUU7OztBQUdGLENBQUMiLCJmaWxlIjoiMTg0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiOyhmdW5jdGlvbiAocm9vdCwgZmFjdG9yeSkge1xuXHRpZiAodHlwZW9mIGV4cG9ydHMgPT09IFwib2JqZWN0XCIpIHtcblx0XHQvLyBDb21tb25KU1xuXHRcdG1vZHVsZS5leHBvcnRzID0gZXhwb3J0cyA9IGZhY3RvcnkocmVxdWlyZShcIi4vY29yZVwiKSk7XG5cdH1cblx0ZWxzZSBpZiAodHlwZW9mIGRlZmluZSA9PT0gXCJmdW5jdGlvblwiICYmIGRlZmluZS5hbWQpIHtcblx0XHQvLyBBTURcblx0XHRkZWZpbmUoW1wiLi9jb3JlXCJdLCBmYWN0b3J5KTtcblx0fVxuXHRlbHNlIHtcblx0XHQvLyBHbG9iYWwgKGJyb3dzZXIpXG5cdFx0ZmFjdG9yeShyb290LkNyeXB0b0pTKTtcblx0fVxufSh0aGlzLCBmdW5jdGlvbiAoQ3J5cHRvSlMpIHtcblxuXHQoZnVuY3Rpb24gKCkge1xuXHQgICAgLy8gU2hvcnRjdXRzXG5cdCAgICB2YXIgQyA9IENyeXB0b0pTO1xuXHQgICAgdmFyIENfbGliID0gQy5saWI7XG5cdCAgICB2YXIgQmFzZSA9IENfbGliLkJhc2U7XG5cdCAgICB2YXIgQ19lbmMgPSBDLmVuYztcblx0ICAgIHZhciBVdGY4ID0gQ19lbmMuVXRmODtcblx0ICAgIHZhciBDX2FsZ28gPSBDLmFsZ287XG5cblx0ICAgIC8qKlxuXHQgICAgICogSE1BQyBhbGdvcml0aG0uXG5cdCAgICAgKi9cblx0ICAgIHZhciBITUFDID0gQ19hbGdvLkhNQUMgPSBCYXNlLmV4dGVuZCh7XG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogSW5pdGlhbGl6ZXMgYSBuZXdseSBjcmVhdGVkIEhNQUMuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge0hhc2hlcn0gaGFzaGVyIFRoZSBoYXNoIGFsZ29yaXRobSB0byB1c2UuXG5cdCAgICAgICAgICogQHBhcmFtIHtXb3JkQXJyYXl8c3RyaW5nfSBrZXkgVGhlIHNlY3JldCBrZXkuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIHZhciBobWFjSGFzaGVyID0gQ3J5cHRvSlMuYWxnby5ITUFDLmNyZWF0ZShDcnlwdG9KUy5hbGdvLlNIQTI1Niwga2V5KTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICBpbml0OiBmdW5jdGlvbiAoaGFzaGVyLCBrZXkpIHtcblx0ICAgICAgICAgICAgLy8gSW5pdCBoYXNoZXJcblx0ICAgICAgICAgICAgaGFzaGVyID0gdGhpcy5faGFzaGVyID0gbmV3IGhhc2hlci5pbml0KCk7XG5cblx0ICAgICAgICAgICAgLy8gQ29udmVydCBzdHJpbmcgdG8gV29yZEFycmF5LCBlbHNlIGFzc3VtZSBXb3JkQXJyYXkgYWxyZWFkeVxuXHQgICAgICAgICAgICBpZiAodHlwZW9mIGtleSA9PSAnc3RyaW5nJykge1xuXHQgICAgICAgICAgICAgICAga2V5ID0gVXRmOC5wYXJzZShrZXkpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRzXG5cdCAgICAgICAgICAgIHZhciBoYXNoZXJCbG9ja1NpemUgPSBoYXNoZXIuYmxvY2tTaXplO1xuXHQgICAgICAgICAgICB2YXIgaGFzaGVyQmxvY2tTaXplQnl0ZXMgPSBoYXNoZXJCbG9ja1NpemUgKiA0O1xuXG5cdCAgICAgICAgICAgIC8vIEFsbG93IGFyYml0cmFyeSBsZW5ndGgga2V5c1xuXHQgICAgICAgICAgICBpZiAoa2V5LnNpZ0J5dGVzID4gaGFzaGVyQmxvY2tTaXplQnl0ZXMpIHtcblx0ICAgICAgICAgICAgICAgIGtleSA9IGhhc2hlci5maW5hbGl6ZShrZXkpO1xuXHQgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgLy8gQ2xhbXAgZXhjZXNzIGJpdHNcblx0ICAgICAgICAgICAga2V5LmNsYW1wKCk7XG5cblx0ICAgICAgICAgICAgLy8gQ2xvbmUga2V5IGZvciBpbm5lciBhbmQgb3V0ZXIgcGFkc1xuXHQgICAgICAgICAgICB2YXIgb0tleSA9IHRoaXMuX29LZXkgPSBrZXkuY2xvbmUoKTtcblx0ICAgICAgICAgICAgdmFyIGlLZXkgPSB0aGlzLl9pS2V5ID0ga2V5LmNsb25lKCk7XG5cblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRzXG5cdCAgICAgICAgICAgIHZhciBvS2V5V29yZHMgPSBvS2V5LndvcmRzO1xuXHQgICAgICAgICAgICB2YXIgaUtleVdvcmRzID0gaUtleS53b3JkcztcblxuXHQgICAgICAgICAgICAvLyBYT1Iga2V5cyB3aXRoIHBhZCBjb25zdGFudHNcblx0ICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBoYXNoZXJCbG9ja1NpemU7IGkrKykge1xuXHQgICAgICAgICAgICAgICAgb0tleVdvcmRzW2ldIF49IDB4NWM1YzVjNWM7XG5cdCAgICAgICAgICAgICAgICBpS2V5V29yZHNbaV0gXj0gMHgzNjM2MzYzNjtcblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgICAgICBvS2V5LnNpZ0J5dGVzID0gaUtleS5zaWdCeXRlcyA9IGhhc2hlckJsb2NrU2l6ZUJ5dGVzO1xuXG5cdCAgICAgICAgICAgIC8vIFNldCBpbml0aWFsIHZhbHVlc1xuXHQgICAgICAgICAgICB0aGlzLnJlc2V0KCk7XG5cdCAgICAgICAgfSxcblxuXHQgICAgICAgIC8qKlxuXHQgICAgICAgICAqIFJlc2V0cyB0aGlzIEhNQUMgdG8gaXRzIGluaXRpYWwgc3RhdGUuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIGhtYWNIYXNoZXIucmVzZXQoKTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICByZXNldDogZnVuY3Rpb24gKCkge1xuXHQgICAgICAgICAgICAvLyBTaG9ydGN1dFxuXHQgICAgICAgICAgICB2YXIgaGFzaGVyID0gdGhpcy5faGFzaGVyO1xuXG5cdCAgICAgICAgICAgIC8vIFJlc2V0XG5cdCAgICAgICAgICAgIGhhc2hlci5yZXNldCgpO1xuXHQgICAgICAgICAgICBoYXNoZXIudXBkYXRlKHRoaXMuX2lLZXkpO1xuXHQgICAgICAgIH0sXG5cblx0ICAgICAgICAvKipcblx0ICAgICAgICAgKiBVcGRhdGVzIHRoaXMgSE1BQyB3aXRoIGEgbWVzc2FnZS5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBwYXJhbSB7V29yZEFycmF5fHN0cmluZ30gbWVzc2FnZVVwZGF0ZSBUaGUgbWVzc2FnZSB0byBhcHBlbmQuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcmV0dXJuIHtITUFDfSBUaGlzIEhNQUMgaW5zdGFuY2UuXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAZXhhbXBsZVxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogICAgIGhtYWNIYXNoZXIudXBkYXRlKCdtZXNzYWdlJyk7XG5cdCAgICAgICAgICogICAgIGhtYWNIYXNoZXIudXBkYXRlKHdvcmRBcnJheSk7XG5cdCAgICAgICAgICovXG5cdCAgICAgICAgdXBkYXRlOiBmdW5jdGlvbiAobWVzc2FnZVVwZGF0ZSkge1xuXHQgICAgICAgICAgICB0aGlzLl9oYXNoZXIudXBkYXRlKG1lc3NhZ2VVcGRhdGUpO1xuXG5cdCAgICAgICAgICAgIC8vIENoYWluYWJsZVxuXHQgICAgICAgICAgICByZXR1cm4gdGhpcztcblx0ICAgICAgICB9LFxuXG5cdCAgICAgICAgLyoqXG5cdCAgICAgICAgICogRmluYWxpemVzIHRoZSBITUFDIGNvbXB1dGF0aW9uLlxuXHQgICAgICAgICAqIE5vdGUgdGhhdCB0aGUgZmluYWxpemUgb3BlcmF0aW9uIGlzIGVmZmVjdGl2ZWx5IGEgZGVzdHJ1Y3RpdmUsIHJlYWQtb25jZSBvcGVyYXRpb24uXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiBAcGFyYW0ge1dvcmRBcnJheXxzdHJpbmd9IG1lc3NhZ2VVcGRhdGUgKE9wdGlvbmFsKSBBIGZpbmFsIG1lc3NhZ2UgdXBkYXRlLlxuXHQgICAgICAgICAqXG5cdCAgICAgICAgICogQHJldHVybiB7V29yZEFycmF5fSBUaGUgSE1BQy5cblx0ICAgICAgICAgKlxuXHQgICAgICAgICAqIEBleGFtcGxlXG5cdCAgICAgICAgICpcblx0ICAgICAgICAgKiAgICAgdmFyIGhtYWMgPSBobWFjSGFzaGVyLmZpbmFsaXplKCk7XG5cdCAgICAgICAgICogICAgIHZhciBobWFjID0gaG1hY0hhc2hlci5maW5hbGl6ZSgnbWVzc2FnZScpO1xuXHQgICAgICAgICAqICAgICB2YXIgaG1hYyA9IGhtYWNIYXNoZXIuZmluYWxpemUod29yZEFycmF5KTtcblx0ICAgICAgICAgKi9cblx0ICAgICAgICBmaW5hbGl6ZTogZnVuY3Rpb24gKG1lc3NhZ2VVcGRhdGUpIHtcblx0ICAgICAgICAgICAgLy8gU2hvcnRjdXRcblx0ICAgICAgICAgICAgdmFyIGhhc2hlciA9IHRoaXMuX2hhc2hlcjtcblxuXHQgICAgICAgICAgICAvLyBDb21wdXRlIEhNQUNcblx0ICAgICAgICAgICAgdmFyIGlubmVySGFzaCA9IGhhc2hlci5maW5hbGl6ZShtZXNzYWdlVXBkYXRlKTtcblx0ICAgICAgICAgICAgaGFzaGVyLnJlc2V0KCk7XG5cdCAgICAgICAgICAgIHZhciBobWFjID0gaGFzaGVyLmZpbmFsaXplKHRoaXMuX29LZXkuY2xvbmUoKS5jb25jYXQoaW5uZXJIYXNoKSk7XG5cblx0ICAgICAgICAgICAgcmV0dXJuIGhtYWM7XG5cdCAgICAgICAgfVxuXHQgICAgfSk7XG5cdH0oKSk7XG5cblxufSkpOyJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///184\n")},,function(module,exports,__webpack_require__){"use strict";eval('\n\nmodule.exports = function (url, options) {\n if (!options) {\n // eslint-disable-next-line no-param-reassign\n options = {};\n } // eslint-disable-next-line no-underscore-dangle, no-param-reassign\n\n\n url = url && url.__esModule ? url.default : url;\n\n if (typeof url !== \'string\') {\n return url;\n } // If url is already wrapped in quotes, remove them\n\n\n if (/^[\'"].*[\'"]$/.test(url)) {\n // eslint-disable-next-line no-param-reassign\n url = url.slice(1, -1);\n }\n\n if (options.hash) {\n // eslint-disable-next-line no-param-reassign\n url += options.hash;\n } // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n\n\n if (/["\'() \\t\\n]/.test(url) || options.needQuotes) {\n return "\\"".concat(url.replace(/"/g, \'\\\\"\').replace(/\\n/g, \'\\\\n\'), "\\"");\n }\n\n return url;\n};//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvY3NzLWxvYWRlci9kaXN0L3J1bnRpbWUvZ2V0VXJsLmpzPzFkZTUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQWE7O0FBRWI7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHOzs7QUFHSDs7QUFFQTtBQUNBO0FBQ0EsR0FBRzs7O0FBR0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIOzs7QUFHQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSIsImZpbGUiOiIxODYuanMiLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiAodXJsLCBvcHRpb25zKSB7XG4gIGlmICghb3B0aW9ucykge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgIG9wdGlvbnMgPSB7fTtcbiAgfSAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5kZXJzY29yZS1kYW5nbGUsIG5vLXBhcmFtLXJlYXNzaWduXG5cblxuICB1cmwgPSB1cmwgJiYgdXJsLl9fZXNNb2R1bGUgPyB1cmwuZGVmYXVsdCA6IHVybDtcblxuICBpZiAodHlwZW9mIHVybCAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdXJsO1xuICB9IC8vIElmIHVybCBpcyBhbHJlYWR5IHdyYXBwZWQgaW4gcXVvdGVzLCByZW1vdmUgdGhlbVxuXG5cbiAgaWYgKC9eWydcIl0uKlsnXCJdJC8udGVzdCh1cmwpKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXG4gICAgdXJsID0gdXJsLnNsaWNlKDEsIC0xKTtcbiAgfVxuXG4gIGlmIChvcHRpb25zLmhhc2gpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcGFyYW0tcmVhc3NpZ25cbiAgICB1cmwgKz0gb3B0aW9ucy5oYXNoO1xuICB9IC8vIFNob3VsZCB1cmwgYmUgd3JhcHBlZD9cbiAgLy8gU2VlIGh0dHBzOi8vZHJhZnRzLmNzc3dnLm9yZy9jc3MtdmFsdWVzLTMvI3VybHNcblxuXG4gIGlmICgvW1wiJygpIFxcdFxcbl0vLnRlc3QodXJsKSB8fCBvcHRpb25zLm5lZWRRdW90ZXMpIHtcbiAgICByZXR1cm4gXCJcXFwiXCIuY29uY2F0KHVybC5yZXBsYWNlKC9cIi9nLCAnXFxcXFwiJykucmVwbGFjZSgvXFxuL2csICdcXFxcbicpLCBcIlxcXCJcIik7XG4gIH1cblxuICByZXR1cm4gdXJsO1xufTsiXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///186\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(15);\n/* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(12);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es6_string_fixed_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(142);\n/* harmony import */ var core_js_modules_es6_string_fixed_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_string_fixed_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(21);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_es7_array_includes_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(32);\n/* harmony import */ var core_js_modules_es7_array_includes_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es7_array_includes_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var _src_components_VBtn_VBtn_sass__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(303);\n/* harmony import */ var _src_components_VBtn_VBtn_sass__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_src_components_VBtn_VBtn_sass__WEBPACK_IMPORTED_MODULE_11__);\n/* harmony import */ var _VSheet__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(102);\n/* harmony import */ var _VProgressCircular__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(209);\n/* harmony import */ var _mixins_groupable__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(98);\n/* harmony import */ var _mixins_toggleable__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(45);\n/* harmony import */ var _mixins_elevatable__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(152);\n/* harmony import */ var _mixins_positionable__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(60);\n/* harmony import */ var _mixins_routable__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(53);\n/* harmony import */ var _mixins_sizeable__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(146);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(3);\n/* harmony import */ var _util_console__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(8);\n\n\n\n\n\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_7__[/* default */ \"a\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n// Styles\n // Extensions\n\n // Components\n\n // Mixins\n\n\n\n\n\n\n // Utilities\n\n\n\nvar baseMixins = Object(_util_mixins__WEBPACK_IMPORTED_MODULE_20__[/* default */ \"a\"])(_VSheet__WEBPACK_IMPORTED_MODULE_12__[/* default */ \"a\"], _mixins_routable__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"], _mixins_positionable__WEBPACK_IMPORTED_MODULE_17__[/* default */ \"a\"], _mixins_sizeable__WEBPACK_IMPORTED_MODULE_19__[/* default */ \"a\"], Object(_mixins_groupable__WEBPACK_IMPORTED_MODULE_14__[/* factory */ \"a\"])('btnToggle'), Object(_mixins_toggleable__WEBPACK_IMPORTED_MODULE_15__[/* factory */ \"b\"])('inputValue')\n/* @vue/component */\n);\n/* harmony default export */ __webpack_exports__[\"a\"] = (baseMixins.extend().extend({\n name: 'v-btn',\n props: {\n activeClass: {\n type: String,\n default: function _default() {\n if (!this.btnToggle) return '';\n return this.btnToggle.activeClass;\n }\n },\n block: Boolean,\n depressed: Boolean,\n fab: Boolean,\n icon: Boolean,\n loading: Boolean,\n outlined: Boolean,\n plain: Boolean,\n retainFocusOnClick: Boolean,\n rounded: Boolean,\n tag: {\n type: String,\n default: 'button'\n },\n text: Boolean,\n tile: Boolean,\n type: {\n type: String,\n default: 'button'\n },\n value: null\n },\n data: function data() {\n return {\n proxyClass: 'v-btn--active'\n };\n },\n computed: {\n classes: function classes() {\n return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({\n 'v-btn': true\n }, _mixins_routable__WEBPACK_IMPORTED_MODULE_18__[/* default */ \"a\"].options.computed.classes.call(this)), {}, {\n 'v-btn--absolute': this.absolute,\n 'v-btn--block': this.block,\n 'v-btn--bottom': this.bottom,\n 'v-btn--disabled': this.disabled,\n 'v-btn--is-elevated': this.isElevated,\n 'v-btn--fab': this.fab,\n 'v-btn--fixed': this.fixed,\n 'v-btn--has-bg': this.hasBg,\n 'v-btn--icon': this.icon,\n 'v-btn--left': this.left,\n 'v-btn--loading': this.loading,\n 'v-btn--outlined': this.outlined,\n 'v-btn--plain': this.plain,\n 'v-btn--right': this.right,\n 'v-btn--round': this.isRound,\n 'v-btn--rounded': this.rounded,\n 'v-btn--router': this.to,\n 'v-btn--text': this.text,\n 'v-btn--tile': this.tile,\n 'v-btn--top': this.top\n }, this.themeClasses), this.groupClasses), this.elevationClasses), this.sizeableClasses);\n },\n computedElevation: function computedElevation() {\n if (this.disabled) return undefined;\n return _mixins_elevatable__WEBPACK_IMPORTED_MODULE_16__[/* default */ \"a\"].options.computed.computedElevation.call(this);\n },\n computedRipple: function computedRipple() {\n var _a;\n\n var defaultRipple = this.icon || this.fab ? {\n circle: true\n } : true;\n if (this.disabled) return false;else return (_a = this.ripple) !== null && _a !== void 0 ? _a : defaultRipple;\n },\n hasBg: function hasBg() {\n return !this.text && !this.plain && !this.outlined && !this.icon;\n },\n isElevated: function isElevated() {\n return Boolean(!this.icon && !this.text && !this.outlined && !this.depressed && !this.disabled && !this.plain && (this.elevation == null || Number(this.elevation) > 0));\n },\n isRound: function isRound() {\n return Boolean(this.icon || this.fab);\n },\n styles: function styles() {\n return _objectSpread({}, this.measurableStyles);\n }\n },\n created: function created() {\n var _this = this;\n\n var breakingProps = [['flat', 'text'], ['outline', 'outlined'], ['round', 'rounded']];\n /* istanbul ignore next */\n\n breakingProps.forEach(function (_ref) {\n var _ref2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(_ref, 2),\n original = _ref2[0],\n replacement = _ref2[1];\n\n if (_this.$attrs.hasOwnProperty(original)) Object(_util_console__WEBPACK_IMPORTED_MODULE_21__[/* breaking */ \"a\"])(original, replacement, _this);\n });\n },\n methods: {\n click: function click(e) {\n // TODO: Remove this in v3\n !this.retainFocusOnClick && !this.fab && e.detail && this.$el.blur();\n this.$emit('click', e);\n this.btnToggle && this.toggle();\n },\n genContent: function genContent() {\n return this.$createElement('span', {\n staticClass: 'v-btn__content'\n }, this.$slots.default);\n },\n genLoader: function genLoader() {\n return this.$createElement('span', {\n class: 'v-btn__loader'\n }, this.$slots.loader || [this.$createElement(_VProgressCircular__WEBPACK_IMPORTED_MODULE_13__[/* default */ \"a\"], {\n props: {\n indeterminate: true,\n size: 23,\n width: 2\n }\n })]);\n }\n },\n render: function render(h) {\n var children = [this.genContent(), this.loading && this.genLoader()];\n\n var _this$generateRouteLi = this.generateRouteLink(),\n tag = _this$generateRouteLi.tag,\n data = _this$generateRouteLi.data;\n\n var setColor = this.hasBg ? this.setBackgroundColor : this.setTextColor;\n\n if (tag === 'button') {\n data.attrs.type = this.type;\n data.attrs.disabled = this.disabled;\n }\n\n data.attrs.value = ['string', 'number'].includes(Object(_babel_runtime_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"])(this.value)) ? this.value : JSON.stringify(this.value);\n return h(tag, this.disabled ? data : setColor(this.color, data), children);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkJ0bi9WQnRuLnRzPzBlZmYiXSwibmFtZXMiOlsiYmFzZU1peGlucyIsIm1peGlucyIsIlZTaGVldCIsIlJvdXRhYmxlIiwiUG9zaXRpb25hYmxlIiwiU2l6ZWFibGUiLCJHcm91cGFibGVGYWN0b3J5IiwiVG9nZ2xlYWJsZUZhY3RvcnkiLCJleHRlbmQiLCJuYW1lIiwicHJvcHMiLCJhY3RpdmVDbGFzcyIsInR5cGUiLCJTdHJpbmciLCJkZWZhdWx0IiwiYnRuVG9nZ2xlIiwiYmxvY2siLCJCb29sZWFuIiwiZGVwcmVzc2VkIiwiZmFiIiwiaWNvbiIsImxvYWRpbmciLCJvdXRsaW5lZCIsInBsYWluIiwicmV0YWluRm9jdXNPbkNsaWNrIiwicm91bmRlZCIsInRhZyIsInRleHQiLCJ0aWxlIiwidmFsdWUiLCJkYXRhIiwicHJveHlDbGFzcyIsImNvbXB1dGVkIiwiY2xhc3NlcyIsIm9wdGlvbnMiLCJjYWxsIiwiYWJzb2x1dGUiLCJib3R0b20iLCJkaXNhYmxlZCIsImlzRWxldmF0ZWQiLCJmaXhlZCIsImhhc0JnIiwibGVmdCIsInJpZ2h0IiwiaXNSb3VuZCIsInRvIiwidG9wIiwidGhlbWVDbGFzc2VzIiwiZ3JvdXBDbGFzc2VzIiwiZWxldmF0aW9uQ2xhc3NlcyIsInNpemVhYmxlQ2xhc3NlcyIsImNvbXB1dGVkRWxldmF0aW9uIiwidW5kZWZpbmVkIiwiRWxldmF0YWJsZSIsImNvbXB1dGVkUmlwcGxlIiwiZGVmYXVsdFJpcHBsZSIsImNpcmNsZSIsInJpcHBsZSIsIl9hIiwiZWxldmF0aW9uIiwiTnVtYmVyIiwic3R5bGVzIiwibWVhc3VyYWJsZVN0eWxlcyIsImNyZWF0ZWQiLCJicmVha2luZ1Byb3BzIiwiZm9yRWFjaCIsIm9yaWdpbmFsIiwicmVwbGFjZW1lbnQiLCIkYXR0cnMiLCJoYXNPd25Qcm9wZXJ0eSIsImJyZWFraW5nIiwibWV0aG9kcyIsImNsaWNrIiwiZSIsImRldGFpbCIsIiRlbCIsImJsdXIiLCIkZW1pdCIsInRvZ2dsZSIsImdlbkNvbnRlbnQiLCIkY3JlYXRlRWxlbWVudCIsInN0YXRpY0NsYXNzIiwiJHNsb3RzIiwiZ2VuTG9hZGVyIiwiY2xhc3MiLCJsb2FkZXIiLCJWUHJvZ3Jlc3NDaXJjdWxhciIsImluZGV0ZXJtaW5hdGUiLCJzaXplIiwid2lkdGgiLCJyZW5kZXIiLCJoIiwiY2hpbGRyZW4iLCJnZW5lcmF0ZVJvdXRlTGluayIsInNldENvbG9yIiwic2V0QmFja2dyb3VuZENvbG9yIiwic2V0VGV4dENvbG9yIiwiYXR0cnMiLCJpbmNsdWRlcyIsIkpTT04iLCJzdHJpbmdpZnkiLCJjb2xvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtDQUdBOztDQUdBOztDQUdBOztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Q0FHQTs7QUFDQTtBQUNBO0FBT0EsSUFBTUEsVUFBVSxHQUFHQyxxRUFBTSxDQUN2QkMsd0RBRHVCLEVBRXZCQyxpRUFGdUIsRUFHdkJDLHFFQUh1QixFQUl2QkMsaUVBSnVCLEVBS3ZCQywwRUFBZ0IsQ0FBQyxXQUFELENBTE8sRUFNdkJDLDJFQUFpQixDQUFDLFlBQUQ7QUFDakI7QUFQdUIsQ0FBekI7QUFhZVAsbUVBQVUsQ0FBQ1EsTUFBWCxHQUE2QkEsTUFBN0IsQ0FBb0M7QUFDakRDLE1BQUksRUFBRSxPQUQyQztBQUdqREMsT0FBSyxFQUFFO0FBQ0xDLGVBQVcsRUFBRTtBQUNYQyxVQUFJLEVBQUVDLE1BREs7QUFFWEMsYUFGVyxzQkFFSjtBQUNMLFlBQUksQ0FBQyxLQUFLQyxTQUFWLEVBQXFCLE9BQU8sRUFBUDtBQUVyQixlQUFPLEtBQUtBLFNBQUwsQ0FBZUosV0FBdEI7QUFDRDtBQU5VLEtBRFI7QUFTTEssU0FBSyxFQUFFQyxPQVRGO0FBVUxDLGFBQVMsRUFBRUQsT0FWTjtBQVdMRSxPQUFHLEVBQUVGLE9BWEE7QUFZTEcsUUFBSSxFQUFFSCxPQVpEO0FB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QUZKO0FBSUEsV0FBTzhELENBQUMsQ0FBQ2pFLEdBQUQsRUFBTSxLQUFLWSxRQUFMLEdBQWdCUixJQUFoQixHQUF1QmdFLFFBQVEsQ0FBQyxLQUFLTyxLQUFOLEVBQWF2RSxJQUFiLENBQXJDLEVBQXlEOEQsUUFBekQsQ0FBUjtBQUNEO0FBcEtnRCxDQUFwQyxDQUFmIiwiZmlsZSI6IjE4Ny5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFN0eWxlc1xuaW1wb3J0ICcuL1ZCdG4uc2FzcydcblxuLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IFZTaGVldCBmcm9tICcuLi9WU2hlZXQnXG5cbi8vIENvbXBvbmVudHNcbmltcG9ydCBWUHJvZ3Jlc3NDaXJjdWxhciBmcm9tICcuLi9WUHJvZ3Jlc3NDaXJjdWxhcidcblxuLy8gTWl4aW5zXG5pbXBvcnQgeyBmYWN0b3J5IGFzIEdyb3VwYWJsZUZhY3RvcnkgfSBmcm9tICcuLi8uLi9taXhpbnMvZ3JvdXBhYmxlJ1xuaW1wb3J0IHsgZmFjdG9yeSBhcyBUb2dnbGVhYmxlRmFjdG9yeSB9IGZyb20gJy4uLy4uL21peGlucy90b2dnbGVhYmxlJ1xuaW1wb3J0IEVsZXZhdGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL2VsZXZhdGFibGUnXG5pbXBvcnQgUG9zaXRpb25hYmxlIGZyb20gJy4uLy4uL21peGlucy9wb3NpdGlvbmFibGUnXG5pbXBvcnQgUm91dGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL3JvdXRhYmxlJ1xuaW1wb3J0IFNpemVhYmxlIGZyb20gJy4uLy4uL21peGlucy9zaXplYWJsZSdcblxuLy8gVXRpbGl0aWVzXG5pbXBvcnQgbWl4aW5zLCB7IEV4dHJhY3RWdWUgfSBmcm9tICcuLi8uLi91dGlsL21peGlucydcbmltcG9ydCB7IGJyZWFraW5nIH0gZnJvbSAnLi4vLi4vdXRpbC9jb25zb2xlJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVk5vZGUgfSBmcm9tICd2dWUnXG5pbXBvcnQgeyBQcm9wVmFsaWRhdG9yLCBQcm9wVHlwZSB9IGZyb20gJ3Z1ZS90eXBlcy9vcHRpb25zJ1xuaW1wb3J0IHsgUmlwcGxlT3B0aW9ucyB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcmlwcGxlJ1xuXG5jb25zdCBiYXNlTWl4aW5zID0gbWl4aW5zKFxuICBWU2hlZXQsXG4gIFJvdXRhYmxlLFxuICBQb3NpdGlvbmFibGUsXG4gIFNpemVhYmxlLFxuICBHcm91cGFibGVGYWN0b3J5KCdidG5Ub2dnbGUnKSxcbiAgVG9nZ2xlYWJsZUZhY3RvcnkoJ2lucHV0VmFsdWUnKVxuICAvKiBAdnVlL2NvbXBvbmVudCAqL1xuKVxuaW50ZXJmYWNlIG9wdGlvbnMgZXh0ZW5kcyBFeHRyYWN0VnVlPHR5cGVvZiBiYXNlTWl4aW5zPiB7XG4gICRlbDogSFRNTEVsZW1lbnRcbn1cblxuZXhwb3J0IGRlZmF1bHQgYmFzZU1peGlucy5leHRlbmQ8b3B0aW9ucz4oKS5leHRlbmQoe1xuICBuYW1lOiAndi1idG4nLFxuXG4gIHByb3BzOiB7XG4gICAgYWN0aXZlQ2xhc3M6IHtcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgIGRlZmF1bHQgKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICghdGhpcy5idG5Ub2dnbGUpIHJldHVybiAnJ1xuXG4gICAgICAgIHJldHVybiB0aGlzLmJ0blRvZ2dsZS5hY3RpdmVDbGFzc1xuICAgICAgfSxcbiAgICB9IGFzIGFueSBhcyBQcm9wVmFsaWRhdG9yPHN0cmluZz4sXG4gICAgYmxvY2s6IEJvb2xlYW4sXG4gICAgZGVwcmVzc2VkOiBCb29sZWFuLFxuICAgIGZhYjogQm9vbGVhbixcbiAgICBpY29uOiBCb29sZWFuLFxuICAgIGxvYWRpbmc6IEJvb2xlYW4sXG4gICAgb3V0bGluZWQ6IEJvb2xlYW4sXG4gICAgcGxhaW46IEJvb2xlYW4sXG4gICAgcmV0YWluRm9jdXNPbkNsaWNrOiBCb29sZWFuLFxuICAgIHJvdW5kZWQ6IEJvb2xlYW4sXG4gICAgdGFnOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYnV0dG9uJyxcbiAgICB9LFxuICAgIHRleHQ6IEJvb2xlYW4sXG4gICAgdGlsZTogQm9vbGVhbixcbiAgICB0eXBlOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAnYnV0dG9uJyxcbiAgICB9LFxuICAgIHZhbHVlOiBudWxsIGFzIGFueSBhcyBQcm9wVHlwZTxhbnk+LFxuICB9LFxuXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgcHJveHlDbGFzczogJ3YtYnRuLS1hY3RpdmUnLFxuICB9KSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXMgKCk6IGFueSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndi1idG4nOiB0cnVlLFxuICAgICAgICAuLi5Sb3V0YWJsZS5vcHRpb25zLmNvbXB1dGVkLmNsYXNzZXMuY2FsbCh0aGlzKSxcbiAgICAgICAgJ3YtYnRuLS1hYnNvbHV0ZSc6IHRoaXMuYWJzb2x1dGUsXG4gICAgICAgICd2LWJ0bi0tYmxvY2snOiB0aGlzLmJsb2NrLFxuICAgICAgICAndi1idG4tLWJvdHRvbSc6IHRoaXMuYm90dG9tLFxuICAgICAgICAndi1idG4tLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgJ3YtYnRuLS1pcy1lbGV2YXRlZCc6IHRoaXMuaXNFbGV2YXRlZCxcbiAgICAgICAgJ3YtYnRuLS1mYWInOiB0aGlzLmZhYixcbiAgICAgICAgJ3YtYnRuLS1maXhlZCc6IHRoaXMuZml4ZWQsXG4gICAgICAgICd2LWJ0bi0taGFzLWJnJzogdGhpcy5oYXNCZyxcbiAgICAgICAgJ3YtYnRuLS1pY29uJzogdGhpcy5pY29uLFxuICAgICAgICAndi1idG4tLWxlZnQnOiB0aGlzLmxlZnQsXG4gICAgICAgICd2LWJ0bi0tbG9hZGluZyc6IHRoaXMubG9hZGluZyxcbiAgICAgICAgJ3YtYnRuLS1vdXRsaW5lZCc6IHRoaXMub3V0bGluZWQsXG4gICAgICAgICd2LWJ0bi0tcGxhaW4nOiB0aGlzLnBsYWluLFxuICAgICAgICAndi1idG4tLXJpZ2h0JzogdGhpcy5yaWdodCxcbiAgICAgICAgJ3YtYnRuLS1yb3VuZCc6IHRoaXMuaXNSb3VuZCxcbiAgICAgICAgJ3YtYnRuLS1yb3VuZGVkJzogdGhpcy5yb3VuZGVkLFxuICAgICAgICAndi1idG4tLXJvdXRlcic6IHRoaXMudG8sXG4gICAgICAgICd2LWJ0bi0tdGV4dCc6IHRoaXMudGV4dCxcbiAgICAgICAgJ3YtYnRuLS10aWxlJzogdGhpcy50aWxlLFxuICAgICAgICAndi1idG4tLXRvcCc6IHRoaXMudG9wLFxuICAgICAgICAuLi50aGlzLnRoZW1lQ2xhc3NlcyxcbiAgICAgICAgLi4udGhpcy5ncm91cENsYXNzZXMsXG4gICAgICAgIC4uLnRoaXMuZWxldmF0aW9uQ2xhc3NlcyxcbiAgICAgICAgLi4udGhpcy5zaXplYWJsZUNsYXNzZXMsXG4gICAgICB9XG4gICAgfSxcbiAgICBjb21wdXRlZEVsZXZhdGlvbiAoKTogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm4gdW5kZWZpbmVkXG5cbiAgICAgIHJldHVybiBFbGV2YXRhYmxlLm9wdGlvbnMuY29tcHV0ZWQuY29tcHV0ZWRFbGV2YXRpb24uY2FsbCh0aGlzKVxuICAgIH0sXG4gICAgY29tcHV0ZWRSaXBwbGUgKCk6IFJpcHBsZU9wdGlvbnMgfCBib29sZWFuIHtcbiAgICAgIGNvbnN0IGRlZmF1bHRSaXBwbGUgPSB0aGlzLmljb24gfHwgdGhpcy5mYWIgPyB7IGNpcmNsZTogdHJ1ZSB9IDogdHJ1ZVxuICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHJldHVybiBmYWxzZVxuICAgICAgZWxzZSByZXR1cm4gdGhpcy5yaXBwbGUgPz8gZGVmYXVsdFJpcHBsZVxuICAgIH0sXG4gICAgaGFzQmcgKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuICF0aGlzLnRleHQgJiYgIXRoaXMucGxhaW4gJiYgIXRoaXMub3V0bGluZWQgJiYgIXRoaXMuaWNvblxuICAgIH0sXG4gICAgaXNFbGV2YXRlZCAoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gQm9vbGVhbihcbiAgICAgICAgIXRoaXMuaWNvbiAmJlxuICAgICAgICAhdGhpcy50ZXh0ICYmXG4gICAgICAgICF0aGlzLm91dGxpbmVkICYmXG4gICAgICAgICF0aGlzLmRlcHJlc3NlZCAmJlxuICAgICAgICAhdGhpcy5kaXNhYmxlZCAmJlxuICAgICAgICAhdGhpcy5wbGFpbiAmJlxuICAgICAgICAodGhpcy5lbGV2YXRpb24gPT0gbnVsbCB8fCBOdW1iZXIodGhpcy5lbGV2YXRpb24pID4gMClcbiAgICAgIClcbiAgICB9LFxuICAgIGlzUm91bmQgKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIEJvb2xlYW4oXG4gICAgICAgIHRoaXMuaWNvbiB8fFxuICAgICAgICB0aGlzLmZhYlxuICAgICAgKVxuICAgIH0sXG4gICAgc3R5bGVzICgpOiBvYmplY3Qge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4udGhpcy5tZWFzdXJhYmxlU3R5bGVzLFxuICAgICAgfVxuICAgIH0sXG4gIH0sXG5cbiAgY3JlYXRlZCAoKSB7XG4gICAgY29uc3QgYnJlYWtpbmdQcm9wcyA9IFtcbiAgICAgIFsnZmxhdCcsICd0ZXh0J10sXG4gICAgICBbJ291dGxpbmUnLCAnb3V0bGluZWQnXSxcbiAgICAgIFsncm91bmQnLCAncm91bmRlZCddLFxuICAgIF1cblxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgYnJlYWtpbmdQcm9wcy5mb3JFYWNoKChbb3JpZ2luYWwsIHJlcGxhY2VtZW50XSkgPT4ge1xuICAgICAgaWYgKHRoaXMuJGF0dHJzLmhhc093blByb3BlcnR5KG9yaWdpbmFsKSkgYnJlYWtpbmcob3JpZ2luYWwsIHJlcGxhY2VtZW50LCB0aGlzKVxuICAgIH0pXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIGNsaWNrIChlOiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAvLyBUT0RPOiBSZW1vdmUgdGhpcyBpbiB2M1xuICAgICAgIXRoaXMucmV0YWluRm9jdXNPbkNsaWNrICYmICF0aGlzLmZhYiAmJiBlLmRldGFpbCAmJiB0aGlzLiRlbC5ibHVyKClcbiAgICAgIHRoaXMuJGVtaXQoJ2NsaWNrJywgZSlcblxuICAgICAgdGhpcy5idG5Ub2dnbGUgJiYgdGhpcy50b2dnbGUoKVxuICAgIH0sXG4gICAgZ2VuQ29udGVudCAoKTogVk5vZGUge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3NwYW4nLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1idG5fX2NvbnRlbnQnLFxuICAgICAgfSwgdGhpcy4kc2xvdHMuZGVmYXVsdClcbiAgICB9LFxuICAgIGdlbkxvYWRlciAoKTogVk5vZGUge1xuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ3NwYW4nLCB7XG4gICAgICAgIGNsYXNzOiAndi1idG5fX2xvYWRlcicsXG4gICAgICB9LCB0aGlzLiRzbG90cy5sb2FkZXIgfHwgW3RoaXMuJGNyZWF0ZUVsZW1lbnQoVlByb2dyZXNzQ2lyY3VsYXIsIHtcbiAgICAgICAgcHJvcHM6IHtcbiAgICAgICAgICBpbmRldGVybWluYXRlOiB0cnVlLFxuICAgICAgICAgIHNpemU6IDIzLFxuICAgICAgICAgIHdpZHRoOiAyLFxuICAgICAgICB9LFxuICAgICAgfSldKVxuICAgIH0sXG4gIH0sXG5cbiAgcmVuZGVyIChoKTogVk5vZGUge1xuICAgIGNvbnN0IGNoaWxkcmVuID0gW1xuICAgICAgdGhpcy5nZW5Db250ZW50KCksXG4gICAgICB0aGlzLmxvYWRpbmcgJiYgdGhpcy5nZW5Mb2FkZXIoKSxcbiAgICBdXG4gICAgY29uc3QgeyB0YWcsIGRhdGEgfSA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKVxuICAgIGNvbnN0IHNldENvbG9yID0gdGhpcy5oYXNCZ1xuICAgICAgPyB0aGlzLnNldEJhY2tncm91bmRDb2xvclxuICAgICAgOiB0aGlzLnNldFRleHRDb2xvclxuXG4gICAgaWYgKHRhZyA9PT0gJ2J1dHRvbicpIHtcbiAgICAgIGRhdGEuYXR0cnMhLnR5cGUgPSB0aGlzLnR5cGVcbiAgICAgIGRhdGEuYXR0cnMhLmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZFxuICAgIH1cbiAgICBkYXRhLmF0dHJzIS52YWx1ZSA9IFsnc3RyaW5nJywgJ251bWJlciddLmluY2x1ZGVzKHR5cGVvZiB0aGlzLnZhbHVlKVxuICAgICAgPyB0aGlzLnZhbHVlXG4gICAgICA6IEpTT04uc3RyaW5naWZ5KHRoaXMudmFsdWUpXG5cbiAgICByZXR1cm4gaCh0YWcsIHRoaXMuZGlzYWJsZWQgPyBkYXRhIDogc2V0Q29sb3IodGhpcy5jb2xvciwgZGF0YSksIGNoaWxkcmVuKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///187\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _src_components_VProgressCircular_VProgressCircular_sass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(317);\n/* harmony import */ var _src_components_VProgressCircular_VProgressCircular_sass__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_src_components_VProgressCircular_VProgressCircular_sass__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _directives_intersect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(99);\n/* harmony import */ var _mixins_colorable__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(0);\n\n// Styles\n // Directives\n\n // Mixins\n\n // Utils\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (_mixins_colorable__WEBPACK_IMPORTED_MODULE_3__[/* default */ \"a\"].extend({\n name: 'v-progress-circular',\n directives: {\n intersect: _directives_intersect__WEBPACK_IMPORTED_MODULE_2__[/* default */ \"a\"]\n },\n props: {\n button: Boolean,\n indeterminate: Boolean,\n rotate: {\n type: [Number, String],\n default: 0\n },\n size: {\n type: [Number, String],\n default: 32\n },\n width: {\n type: [Number, String],\n default: 4\n },\n value: {\n type: [Number, String],\n default: 0\n }\n },\n data: function data() {\n return {\n radius: 20,\n isVisible: true\n };\n },\n computed: {\n calculatedSize: function calculatedSize() {\n return Number(this.size) + (this.button ? 8 : 0);\n },\n circumference: function circumference() {\n return 2 * Math.PI * this.radius;\n },\n classes: function classes() {\n return {\n 'v-progress-circular--visible': this.isVisible,\n 'v-progress-circular--indeterminate': this.indeterminate,\n 'v-progress-circular--button': this.button\n };\n },\n normalizedValue: function normalizedValue() {\n if (this.value < 0) {\n return 0;\n }\n\n if (this.value > 100) {\n return 100;\n }\n\n return parseFloat(this.value);\n },\n strokeDashArray: function strokeDashArray() {\n return Math.round(this.circumference * 1000) / 1000;\n },\n strokeDashOffset: function strokeDashOffset() {\n return (100 - this.normalizedValue) / 100 * this.circumference + 'px';\n },\n strokeWidth: function strokeWidth() {\n return Number(this.width) / +this.size * this.viewBoxSize * 2;\n },\n styles: function styles() {\n return {\n height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_4__[/* convertToUnit */ \"h\"])(this.calculatedSize),\n width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_4__[/* convertToUnit */ \"h\"])(this.calculatedSize)\n };\n },\n svgStyles: function svgStyles() {\n return {\n transform: \"rotate(\".concat(Number(this.rotate), \"deg)\")\n };\n },\n viewBoxSize: function viewBoxSize() {\n return this.radius / (1 - Number(this.width) / +this.size);\n }\n },\n methods: {\n genCircle: function genCircle(name, offset) {\n return this.$createElement('circle', {\n class: \"v-progress-circular__\".concat(name),\n attrs: {\n fill: 'transparent',\n cx: 2 * this.viewBoxSize,\n cy: 2 * this.viewBoxSize,\n r: this.radius,\n 'stroke-width': this.strokeWidth,\n 'stroke-dasharray': this.strokeDashArray,\n 'stroke-dashoffset': offset\n }\n });\n },\n genSvg: function genSvg() {\n var children = [this.indeterminate || this.genCircle('underlay', 0), this.genCircle('overlay', this.strokeDashOffset)];\n return this.$createElement('svg', {\n style: this.svgStyles,\n attrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n viewBox: \"\".concat(this.viewBoxSize, \" \").concat(this.viewBoxSize, \" \").concat(2 * this.viewBoxSize, \" \").concat(2 * this.viewBoxSize)\n }\n }, children);\n },\n genInfo: function genInfo() {\n return this.$createElement('div', {\n staticClass: 'v-progress-circular__info'\n }, this.$slots.default);\n },\n onObserve: function onObserve(entries, observer, isIntersecting) {\n this.isVisible = isIntersecting;\n }\n },\n render: function render(h) {\n return h('div', this.setTextColor(this.color, {\n staticClass: 'v-progress-circular',\n attrs: {\n role: 'progressbar',\n 'aria-valuemin': 0,\n 'aria-valuemax': 100,\n 'aria-valuenow': this.indeterminate ? undefined : this.normalizedValue\n },\n class: this.classes,\n directives: [{\n name: 'intersect',\n value: this.onObserve\n }],\n style: this.styles,\n on: this.$listeners\n }), [this.genSvg(), this.genInfo()]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVlByb2dyZXNzQ2lyY3VsYXIvVlByb2dyZXNzQ2lyY3VsYXIudHM/MDQzNSJdLCJuYW1lcyI6WyJDb2xvcmFibGUiLCJleHRlbmQiLCJuYW1lIiwiZGlyZWN0aXZlcyIsImludGVyc2VjdCIsInByb3BzIiwiYnV0dG9uIiwiQm9vbGVhbiIsImluZGV0ZXJtaW5hdGUiLCJyb3RhdGUiLCJ0eXBlIiwiTnVtYmVyIiwiU3RyaW5nIiwiZGVmYXVsdCIsInNpemUiLCJ3aWR0aCIsInZhbHVlIiwiZGF0YSIsInJhZGl1cyIsImlzVmlzaWJsZSIsImNvbXB1dGVkIiwiY2FsY3VsYXRlZFNpemUiLCJjaXJjdW1mZXJlbmNlIiwiTWF0aCIsIlBJIiwiY2xhc3NlcyIsIm5vcm1hbGl6ZWRWYWx1ZSIsInBhcnNlRmxvYXQiLCJzdHJva2VEYXNoQXJyYXkiLCJyb3VuZCIsInN0cm9rZURhc2hPZmZzZXQiLCJzdHJva2VXaWR0aCIsInZpZXdCb3hTaXplIiwic3R5bGVzIiwiaGVpZ2h0IiwiY29udmVydFRvVW5pdCIsInN2Z1N0eWxlcyIsInRyYW5zZm9ybSIsIm1ldGhvZHMiLCJnZW5DaXJjbGUiLCJvZmZzZXQiLCIkY3JlYXRlRWxlbWVudCIsImNsYXNzIiwiYXR0cnMiLCJmaWxsIiwiY3giLCJjeSIsInIiLCJnZW5TdmciLCJjaGlsZHJlbiIsInN0eWxlIiwieG1sbnMiLCJ2aWV3Qm94IiwiZ2VuSW5mbyIsInN0YXRpY0NsYXNzIiwiJHNsb3RzIiwib25PYnNlcnZlIiwiZW50cmllcyIsIm9ic2VydmVyIiwiaXNJbnRlcnNlY3RpbmciLCJyZW5kZXIiLCJoIiwic2V0VGV4dENvbG9yIiwiY29sb3IiLCJyb2xlIiwidW5kZWZpbmVkIiwib24iLCIkbGlzdGVuZXJzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0NBR0E7O0NBR0E7O0NBR0E7O0FBQ0E7QUFLQTs7QUFDZUEsMEhBQVMsQ0FBQ0MsTUFBVixD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cENNLEdBMUZxQjtBQWlJOUJDLFFBakk4QixrQkFpSXRCQyxDQWpJc0IsRUFpSXJCO0FBQ1AsV0FBT0EsQ0FBQyxDQUFDLEtBQUQsRUFBUSxLQUFLQyxZQUFMLENBQWtCLEtBQUtDLEtBQXZCLEVBQThCO0FBQzVDVCxpQkFBVyxFQUFFLHFCQUQrQjtBQUU1Q1gsV0FBSyxFQUFFO0FBQ0xxQixZQUFJLEVBQUUsYUFERDtBQUVMLHlCQUFpQixDQUZaO0FBR0wseUJBQWlCLEdBSFo7QUFJTCx5QkFBaUIsS0FBS3hELGFBQUwsR0FBcUJ5RCxTQUFyQixHQUFpQyxLQUFLdkM7QUFKbEQsT0FGcUM7QUFRNUNnQixXQUFLLEVBQUUsS0FBS2pCLE9BUmdDO0FBUzVDdEIsZ0JBQVUsRUFBRSxDQUFDO0FBQ1hELFlBQUksRUFBRSxXQURLO0FBRVhjLGFBQUssRUFBRSxLQUFLd0M7QUFGRCxPQUFELENBVGdDO0FBYTVDTixXQUFLLEVBQUUsS0FBS2pCLE1BYmdDO0FBYzVDaUMsUUFBRSxFQUFFLEtBQUtDO0FBZG1DLEtBQTlCLENBQVIsRUFlSixDQUNGLEtBQUtuQixNQUFMLEVBREUsRUFFRixLQUFLSyxPQUFMLEVBRkUsQ0FmSSxDQUFSO0FBbUJEO0FBcko2QixDQUFqQixDQUFmIiwiZmlsZSI6IjE4OC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFN0eWxlc1xuaW1wb3J0ICcuL1ZQcm9ncmVzc0NpcmN1bGFyLnNhc3MnXG5cbi8vIERpcmVjdGl2ZXNcbmltcG9ydCBpbnRlcnNlY3QgZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9pbnRlcnNlY3QnXG5cbi8vIE1peGluc1xuaW1wb3J0IENvbG9yYWJsZSBmcm9tICcuLi8uLi9taXhpbnMvY29sb3JhYmxlJ1xuXG4vLyBVdGlsc1xuaW1wb3J0IHsgY29udmVydFRvVW5pdCB9IGZyb20gJy4uLy4uL3V0aWwvaGVscGVycydcblxuLy8gVHlwZXNcbmltcG9ydCB7IFZOb2RlLCBWTm9kZUNoaWxkcmVuIH0gZnJvbSAndnVlJ1xuXG4vKiBAdnVlL2NvbXBvbmVudCAqL1xuZXhwb3J0IGRlZmF1bHQgQ29sb3JhYmxlLmV4dGVuZCh7XG4gIG5hbWU6ICd2LXByb2dyZXNzLWNpcmN1bGFyJyxcblxuICBkaXJlY3RpdmVzOiB7IGludGVyc2VjdCB9LFxuXG4gIHByb3BzOiB7XG4gICAgYnV0dG9uOiBCb29sZWFuLFxuICAgIGluZGV0ZXJtaW5hdGU6IEJvb2xlYW4sXG4gICAgcm90YXRlOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMCxcbiAgICB9LFxuICAgIHNpemU6IHtcbiAgICAgIHR5cGU6IFtOdW1iZXIsIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAzMixcbiAgICB9LFxuICAgIHdpZHRoOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNCxcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogMCxcbiAgICB9LFxuICB9LFxuXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgcmFkaXVzOiAyMCxcbiAgICBpc1Zpc2libGU6IHRydWUsXG4gIH0pLFxuXG4gIGNvbXB1dGVkOiB7XG4gICAgY2FsY3VsYXRlZFNpemUgKCk6IG51bWJlciB7XG4gICAgICByZXR1cm4gTnVtYmVyKHRoaXMuc2l6ZSkgKyAodGhpcy5idXR0b24gPyA4IDogMClcbiAgICB9LFxuXG4gICAgY2lyY3VtZmVyZW5jZSAoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiAyICogTWF0aC5QSSAqIHRoaXMucmFkaXVzXG4gICAgfSxcblxuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndi1wcm9ncmVzcy1jaXJjdWxhci0tdmlzaWJsZSc6IHRoaXMuaXNWaXNpYmxlLFxuICAgICAgICAndi1wcm9ncmVzcy1jaXJjdWxhci0taW5kZXRlcm1pbmF0ZSc6IHRoaXMuaW5kZXRlcm1pbmF0ZSxcbiAgICAgICAgJ3YtcHJvZ3Jlc3MtY2lyY3VsYXItLWJ1dHRvbic6IHRoaXMuYnV0dG9uLFxuICAgICAgfVxuICAgIH0sXG5cbiAgICBub3JtYWxpemVkVmFsdWUgKCk6IG51bWJlciB7XG4gICAgICBpZiAodGhpcy52YWx1ZSA8IDApIHtcbiAgICAgICAgcmV0dXJuIDBcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMudmFsdWUgPiAxMDApIHtcbiAgICAgICAgcmV0dXJuIDEwMFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gcGFyc2VGbG9hdCh0aGlzLnZhbHVlKVxuICAgIH0sXG5cbiAgICBzdHJva2VEYXNoQXJyYXkgKCk6IG51bWJlciB7XG4gICAgICByZXR1cm4gTWF0aC5yb3VuZCh0aGlzLmNpcmN1bWZlcmVuY2UgKiAxMDAwKSAvIDEwMDBcbiAgICB9LFxuXG4gICAgc3Ryb2tlRGFzaE9mZnNldCAoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiAoKDEwMCAtIHRoaXMubm9ybWFsaXplZFZhbHVlKSAvIDEwMCkgKiB0aGlzLmNpcmN1bWZlcmVuY2UgKyAncHgnXG4gICAgfSxcblxuICAgIHN0cm9rZVdpZHRoICgpOiBudW1iZXIge1xuICAgICAgcmV0dXJuIE51bWJlcih0aGlzLndpZHRoKSAvICt0aGlzLnNpemUgKiB0aGlzLnZpZXdCb3hTaXplICogMlxuICAgIH0sXG5cbiAgICBzdHlsZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBoZWlnaHQ6IGNvbnZlcnRUb1VuaXQodGhpcy5jYWxjdWxhdGVkU2l6ZSksXG4gICAgICAgIHdpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMuY2FsY3VsYXRlZFNpemUpLFxuICAgICAgfVxuICAgIH0sXG5cbiAgICBzdmdTdHlsZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtOdW1iZXIodGhpcy5yb3RhdGUpfWRlZylgLFxuICAgICAgfVxuICAgIH0sXG5cbiAgICB2aWV3Qm94U2l6ZSAoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiB0aGlzLnJhZGl1cyAvICgxIC0gTnVtYmVyKHRoaXMud2lkdGgpIC8gK3RoaXMuc2l6ZSlcbiAgICB9LFxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5DaXJjbGUgKG5hbWU6IHN0cmluZywgb2Zmc2V0OiBzdHJpbmcgfCBudW1iZXIpOiBWTm9kZSB7XG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnY2lyY2xlJywge1xuICAgICAgICBjbGFzczogYHYtcHJvZ3Jlc3MtY2lyY3VsYXJfXyR7bmFtZX1gLFxuICAgICAgICBhdHRyczoge1xuICAgICAgICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXG4gICAgICAgICAgY3g6IDIgKiB0aGlzLnZpZXdCb3hTaXplLFxuICAgICAgICAgIGN5OiAyICogdGhpcy52aWV3Qm94U2l6ZSxcbiAgICAgICAgICByOiB0aGlzLnJhZGl1cyxcbiAgICAgICAgICAnc3Ryb2tlLXdpZHRoJzogdGhpcy5zdHJva2VXaWR0aCxcbiAgICAgICAgICAnc3Ryb2tlLWRhc2hhcnJheSc6IHRoaXMuc3Ryb2tlRGFzaEFycmF5LFxuICAgICAgICAgICdzdHJva2UtZGFzaG9mZnNldCc6IG9mZnNldCxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSxcbiAgICBnZW5TdmcgKCk6IFZOb2RlIHtcbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gW1xuICAgICAgICB0aGlzLmluZGV0ZXJtaW5hdGUgfHwgdGhpcy5nZW5DaXJjbGUoJ3VuZGVybGF5JywgMCksXG4gICAgICAgIHRoaXMuZ2VuQ2lyY2xlKCdvdmVybGF5JywgdGhpcy5zdHJva2VEYXNoT2Zmc2V0KSxcbiAgICAgIF0gYXMgVk5vZGVDaGlsZHJlblxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnc3ZnJywge1xuICAgICAgICBzdHlsZTogdGhpcy5zdmdTdHlsZXMsXG4gICAgICAgIGF0dHJzOiB7XG4gICAgICAgICAgeG1sbnM6ICdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycsXG4gICAgICAgICAgdmlld0JveDogYCR7dGhpcy52aWV3Qm94U2l6ZX0gJHt0aGlzLnZpZXdCb3hTaXplfSAkezIgKiB0aGlzLnZpZXdCb3hTaXplfSAkezIgKiB0aGlzLnZpZXdCb3hTaXplfWAsXG4gICAgICAgIH0sXG4gICAgICB9LCBjaGlsZHJlbilcbiAgICB9LFxuICAgIGdlbkluZm8gKCk6IFZOb2RlIHtcbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiAndi1wcm9ncmVzcy1jaXJjdWxhcl9faW5mbycsXG4gICAgICB9LCB0aGlzLiRzbG90cy5kZWZhdWx0KVxuICAgIH0sXG4gICAgb25PYnNlcnZlIChlbnRyaWVzOiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5W10sIG9ic2VydmVyOiBJbnRlcnNlY3Rpb25PYnNlcnZlciwgaXNJbnRlcnNlY3Rpbmc6IGJvb2xlYW4pIHtcbiAgICAgIHRoaXMuaXNWaXNpYmxlID0gaXNJbnRlcnNlY3RpbmdcbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICByZXR1cm4gaCgnZGl2JywgdGhpcy5zZXRUZXh0Q29sb3IodGhpcy5jb2xvciwge1xuICAgICAgc3RhdGljQ2xhc3M6ICd2LXByb2dyZXNzLWNpcmN1bGFyJyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHJvbGU6ICdwcm9ncmVzc2JhcicsXG4gICAgICAgICdhcmlhLXZhbHVlbWluJzogMCxcbiAgICAgICAgJ2FyaWEtdmFsdWVtYXgnOiAxMDAsXG4gICAgICAgICdhcmlhLXZhbHVlbm93JzogdGhpcy5pbmRldGVybWluYXRlID8gdW5kZWZpbmVkIDogdGhpcy5ub3JtYWxpemVkVmFsdWUsXG4gICAgICB9LFxuICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgIGRpcmVjdGl2ZXM6IFt7XG4gICAgICAgIG5hbWU6ICdpbnRlcnNlY3QnLFxuICAgICAgICB2YWx1ZTogdGhpcy5vbk9ic2VydmUsXG4gICAgICB9XSxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIG9uOiB0aGlzLiRsaXN0ZW5lcnMsXG4gICAgfSksIFtcbiAgICAgIHRoaXMuZ2VuU3ZnKCksXG4gICAgICB0aGlzLmdlbkluZm8oKSxcbiAgICBdKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///188\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(21);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _src_components_VCard_VCard_sass__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(319);\n/* harmony import */ var _src_components_VCard_VCard_sass__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_src_components_VCard_VCard_sass__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _VSheet__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(102);\n/* harmony import */ var _mixins_loadable__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(159);\n/* harmony import */ var _mixins_routable__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(53);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(3);\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n// Styles\n // Extensions\n\n // Mixins\n\n\n // Helpers\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_11__[/* default */ "a"])(_mixins_loadable__WEBPACK_IMPORTED_MODULE_9__[/* default */ "a"], _mixins_routable__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"], _VSheet__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"]).extend({\n name: \'v-card\',\n props: {\n flat: Boolean,\n hover: Boolean,\n img: String,\n link: Boolean,\n loaderHeight: {\n type: [Number, String],\n default: 4\n },\n raised: Boolean\n },\n computed: {\n classes: function classes() {\n return _objectSpread(_objectSpread({\n \'v-card\': true\n }, _mixins_routable__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"].options.computed.classes.call(this)), {}, {\n \'v-card--flat\': this.flat,\n \'v-card--hover\': this.hover,\n \'v-card--link\': this.isClickable,\n \'v-card--loading\': this.loading,\n \'v-card--disabled\': this.disabled,\n \'v-card--raised\': this.raised\n }, _VSheet__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"].options.computed.classes.call(this));\n },\n styles: function styles() {\n var style = _objectSpread({}, _VSheet__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"].options.computed.styles.call(this));\n\n if (this.img) {\n style.background = "url(\\"".concat(this.img, "\\") center center / cover no-repeat");\n }\n\n return style;\n }\n },\n methods: {\n genProgress: function genProgress() {\n var render = _mixins_loadable__WEBPACK_IMPORTED_MODULE_9__[/* default */ "a"].options.methods.genProgress.call(this);\n if (!render) return null;\n return this.$createElement(\'div\', {\n staticClass: \'v-card__progress\',\n key: \'progress\'\n }, [render]);\n }\n },\n render: function render(h) {\n var _this$generateRouteLi = this.generateRouteLink(),\n tag = _this$generateRouteLi.tag,\n data = _this$generateRouteLi.data;\n\n data.style = this.styles;\n\n if (this.isClickable) {\n data.attrs = data.attrs || {};\n data.attrs.tabindex = 0;\n }\n\n return h(tag, this.setBackgroundColor(this.color, data), [this.genProgress(), this.$slots.default]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkNhcmQvVkNhcmQudHM/NDNlZCJdLCJuYW1lcyI6WyJtaXhpbnMiLCJMb2FkYWJsZSIsIlJvdXRhYmxlIiwiVlNoZWV0IiwiZXh0ZW5kIiwibmFtZSIsInByb3BzIiwiZmxhdCIsIkJvb2xlYW4iLCJob3ZlciIsImltZyIsIlN0cmluZyIsImxpbmsiLCJsb2FkZXJIZWlnaHQiLCJ0eXBlIiwiTnVtYmVyIiwiZGVmYXVsdCIsInJhaXNlZCIsImNvbXB1dGVkIiwiY2xhc3NlcyIsIm9wdGlvbnMiLCJjYWxsIiwiaXNDbGlja2FibGUiLCJsb2FkaW5nIiwiZGlzYWJsZWQiLCJzdHlsZXMiLCJzdHlsZSIsImJhY2tncm91bmQiLCJtZXRob2RzIiwiZ2VuUHJvZ3Jlc3MiLCJyZW5kZXIiLCIkY3JlYXRlRWxlbWVudCIsInN0YXRpY0NsYXNzIiwia2V5IiwiaCIsImdlbmVyYXRlUm91dGVMaW5rIiwidGFnIiwiZGF0YSIsImF0dHJzIiwidGFiaW5kZXgiLCJzZXRCYWNrZ3JvdW5kQ29sb3IiLCJjb2xvciIsIiRzbG90cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0NBR0E7O0NBR0E7O0FBQ0E7Q0FHQTs7QUFDQTtBQUtBOztBQUNlQSw4SEFBTSxDQUNuQkMsZ0VBRG1CLEVBRW5CQyxpRUFGbUIsRUFHbkJDLHVEQUhtQixDQUFOLENBSWJDLE1BSmEsQ0FJTjtBQUNQQyxNQUFJLEVBQUUsUUFEQztBQUdQQyxPQUFLLEVBQUU7QUFDTEMsUUFBSSxFQUFFQyxPQUREO0FBRUxDLFNBQUssRUFBRUQsT0FGRjtBQUdMRSxPQUFHLEVBQUVDLE1BSEE7QUFJTEMsUUFBSSxFQUFFSixPQUpEO0FBS0xLLGdCQUFZLEVBQUU7QUFDWkMsVUFBSSxFQUFFLENBQUNDLE1BQUQsRUFBU0osTUFBVCxDQURNO0FBRVpLLGFBQU8sRUFBRTtBQUZHLEtBTFQ7QUFTTEMsVUFBTSxFQUFFVDtBQVRILEdBSEE7QUFlUFUsVUFBUSxFQUFFO0FBQ1JDLFdBRFEscUJBQ0Q7QUFDTDtBQUNFLGtCQUFVO0FBRFosU0FFS2pCLGlFQUFRLENBQUNrQixPQUFULENBQWlCRixRQUFqQixDQUEwQkMsT0FBMUIsQ0FBa0NFLElBQWxDLENBQXVDLElBQXZDLENBRkw7QUFHRSx3QkFBZ0IsS0FBS2QsSUFIdkI7QUFJRSx5QkFBaUIsS0FBS0UsS0FKeEI7QUFLRSx3QkFBZ0IsS0FBS2EsV0FMdkI7QUFNRSwyQkFBbUIsS0FBS0MsT0FOMUI7QUFPRSw0QkFBb0IsS0FBS0MsUUFQM0I7QUFRRSwwQkFBa0IsS0FBS1A7QUFSekIsU0FTS2QsdURBQU0sQ0FBQ2lCLE9BQVAsQ0FBZUYsUUFBZixDQUF3QkMsT0FBeEIsQ0FBZ0NFLElBQWhDLENBQXFDLElBQXJDLENBVEw7QUFGTTtBQWNSSSxVQWRRLG9CQWNGO0FBQ0osVUFBTUMsS0FBSyxxQkFDTnZCLHVEQUFNLENBQUNpQixPQUFQLENBQWVGLFFBQWYsQ0FBd0JPLE1BQXhCLENBQStCSixJQUEvQixDQUFvQyxJQUFwQyxDQURNLENBQVg7O0FBSUEsVUFBSSxLQUFLWCxHQUFULEVBQWM7QUFDWmdCLGFBQUssQ0FBQ0MsVUFBTixtQkFBMkIsS0FBS2pCLEdBQWhDO0FBQ0Q7O0FBRUQsYUFBT2dCLEtBQVA7QUFDRDtBQXhCTyxHQWZIO0FBMENQRSxTQUFPLEVBQUU7QUFDUEMsZUFETyx5QkFDSTtBQUNULFVBQU1DLE1BQU0sR0FBRzdCLGdFQUFRLENBQUNtQixPQUFULENBQWlCUSxPQUFqQixDQUF5QkMsV0FBekIsQ0FBcUNSLElBQXJDLENBQTBDLElBQTFDLENBQWY7QUFFQSxVQUFJLENBQUNTLE1BQUwsRUFBYSxPQUFPLElBQVA7QUFFYixhQUFPLEtBQUtDLGNBQUwsQ0FBb0IsS0FBcEIsRUFBMkI7QUFDaENDLG1CQUFXLEVBQUUsa0JBRG1CO0FBRWhDQyxXQUFHLEVBQUU7QUFGMkIsT0FBM0IsRUFHSixDQUFDSCxNQUFELENBSEksQ0FBUDtBQUlEO0FBVk0sR0ExQ0Y7QUF1RFBBLFFBdkRPLGtCQXVEQ0ksQ0F2REQsRUF1REU7QUFDUCxnQ0FBc0IsS0FBS0MsaUJBQUwsRUFBdEI7QUFBQSxRQUFRQyxHQUFSLHlCQUFRQSxHQUFSO0FBQUEsUUFBYUMsSUFBYix5QkFBYUEsSUFBYjs7QUFFQUEsUUFBSSxDQUFDWCxLQUFMLEdBQWEsS0FBS0QsTUFBbEI7O0FBRUEsUUFBSSxLQUFLSCxXQUFULEVBQXNCO0FBQ3BCZSxVQUFJLENBQUNDLEtBQUwsR0FBYUQsSUFBSSxDQUFDQyxLQUFMLElBQWMsRUFBM0I7QUFDQUQsVUFBSSxDQUFDQyxLQUFMLENBQVdDLFFBQVgsR0FBc0IsQ0FBdEI7QUFDRDs7QUFFRCxXQUFPTCxDQUFDLENBQUNFLEdBQUQsRUFBTSxLQUFLSSxrQkFBTCxDQUF3QixLQUFLQyxLQUE3QixFQUFvQ0osSUFBcEMsQ0FBTixFQUFpRCxDQUN2RCxLQUFLUixXQUFMLEVBRHVELEVBRXZELEtBQUthLE1BQUwsQ0FBWTFCLE9BRjJDLENBQWpELENBQVI7QUFJRDtBQXJFTSxDQUpNLENBQWYiLCJmaWxlIjoiMTg5LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gU3R5bGVzXG5pbXBvcnQgJy4vVkNhcmQuc2FzcydcblxuLy8gRXh0ZW5zaW9uc1xuaW1wb3J0IFZTaGVldCBmcm9tICcuLi9WU2hlZXQnXG5cbi8vIE1peGluc1xuaW1wb3J0IExvYWRhYmxlIGZyb20gJy4uLy4uL21peGlucy9sb2FkYWJsZSdcbmltcG9ydCBSb3V0YWJsZSBmcm9tICcuLi8uLi9taXhpbnMvcm91dGFibGUnXG5cbi8vIEhlbHBlcnNcbmltcG9ydCBtaXhpbnMgZnJvbSAnLi4vLi4vdXRpbC9taXhpbnMnXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBWTm9kZSB9IGZyb20gJ3Z1ZSdcblxuLyogQHZ1ZS9jb21wb25lbnQgKi9cbmV4cG9ydCBkZWZhdWx0IG1peGlucyhcbiAgTG9hZGFibGUsXG4gIFJvdXRhYmxlLFxuICBWU2hlZXRcbikuZXh0ZW5kKHtcbiAgbmFtZTogJ3YtY2FyZCcsXG5cbiAgcHJvcHM6IHtcbiAgICBmbGF0OiBCb29sZWFuLFxuICAgIGhvdmVyOiBCb29sZWFuLFxuICAgIGltZzogU3RyaW5nLFxuICAgIGxpbms6IEJvb2xlYW4sXG4gICAgbG9hZGVySGVpZ2h0OiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNCxcbiAgICB9LFxuICAgIHJhaXNlZDogQm9vbGVhbixcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndi1jYXJkJzogdHJ1ZSxcbiAgICAgICAgLi4uUm91dGFibGUub3B0aW9ucy5jb21wdXRlZC5jbGFzc2VzLmNhbGwodGhpcyksXG4gICAgICAgICd2LWNhcmQtLWZsYXQnOiB0aGlzLmZsYXQsXG4gICAgICAgICd2LWNhcmQtLWhvdmVyJzogdGhpcy5ob3ZlcixcbiAgICAgICAgJ3YtY2FyZC0tbGluayc6IHRoaXMuaXNDbGlja2FibGUsXG4gICAgICAgICd2LWNhcmQtLWxvYWRpbmcnOiB0aGlzLmxvYWRpbmcsXG4gICAgICAgICd2LWNhcmQtLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgJ3YtY2FyZC0tcmFpc2VkJzogdGhpcy5yYWlzZWQsXG4gICAgICAgIC4uLlZTaGVldC5vcHRpb25zLmNvbXB1dGVkLmNsYXNzZXMuY2FsbCh0aGlzKSxcbiAgICAgIH1cbiAgICB9LFxuICAgIHN0eWxlcyAoKTogb2JqZWN0IHtcbiAgICAgIGNvbnN0IHN0eWxlOiBEaWN0aW9uYXJ5PHN0cmluZz4gPSB7XG4gICAgICAgIC4uLlZTaGVldC5vcHRpb25zLmNvbXB1dGVkLnN0eWxlcy5jYWxsKHRoaXMpLFxuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5pbWcpIHtcbiAgICAgICAgc3R5bGUuYmFja2dyb3VuZCA9IGB1cmwoXCIke3RoaXMuaW1nfVwiKSBjZW50ZXIgY2VudGVyIC8gY292ZXIgbm8tcmVwZWF0YFxuICAgICAgfVxuXG4gICAgICByZXR1cm4gc3R5bGVcbiAgICB9LFxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5Qcm9ncmVzcyAoKSB7XG4gICAgICBjb25zdCByZW5kZXIgPSBMb2FkYWJsZS5vcHRpb25zLm1ldGhvZHMuZ2VuUHJvZ3Jlc3MuY2FsbCh0aGlzKVxuXG4gICAgICBpZiAoIXJlbmRlcikgcmV0dXJuIG51bGxcblxuICAgICAgcmV0dXJuIHRoaXMuJGNyZWF0ZUVsZW1lbnQoJ2RpdicsIHtcbiAgICAgICAgc3RhdGljQ2xhc3M6ICd2LWNhcmRfX3Byb2dyZXNzJyxcbiAgICAgICAga2V5OiAncHJvZ3Jlc3MnLFxuICAgICAgfSwgW3JlbmRlcl0pXG4gICAgfSxcbiAgfSxcblxuICByZW5kZXIgKGgpOiBWTm9kZSB7XG4gICAgY29uc3QgeyB0YWcsIGRhdGEgfSA9IHRoaXMuZ2VuZXJhdGVSb3V0ZUxpbmsoKVxuXG4gICAgZGF0YS5zdHlsZSA9IHRoaXMuc3R5bGVzXG5cbiAgICBpZiAodGhpcy5pc0NsaWNrYWJsZSkge1xuICAgICAgZGF0YS5hdHRycyA9IGRhdGEuYXR0cnMgfHwge31cbiAgICAgIGRhdGEuYXR0cnMudGFiaW5kZXggPSAwXG4gICAgfVxuXG4gICAgcmV0dXJuIGgodGFnLCB0aGlzLnNldEJhY2tncm91bmRDb2xvcih0aGlzLmNvbG9yLCBkYXRhKSwgW1xuICAgICAgdGhpcy5nZW5Qcm9ncmVzcygpLFxuICAgICAgdGhpcy4kc2xvdHMuZGVmYXVsdCxcbiAgICBdKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///189\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(21);\n/* harmony import */ var core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_number_constructor_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _src_components_VAvatar_VAvatar_sass__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(344);\n/* harmony import */ var _src_components_VAvatar_VAvatar_sass__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_src_components_VAvatar_VAvatar_sass__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _mixins_colorable__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(23);\n/* harmony import */ var _mixins_measurable__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(103);\n/* harmony import */ var _mixins_roundable__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(104);\n/* harmony import */ var _util_helpers__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(0);\n/* harmony import */ var _util_mixins__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(3);\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n\n // Mixins\n\n\n\n // Utilities\n\n\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(_util_mixins__WEBPACK_IMPORTED_MODULE_12__[/* default */ "a"])(_mixins_colorable__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"], _mixins_measurable__WEBPACK_IMPORTED_MODULE_9__[/* default */ "a"], _mixins_roundable__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"]).extend({\n name: \'v-avatar\',\n props: {\n left: Boolean,\n right: Boolean,\n size: {\n type: [Number, String],\n default: 48\n }\n },\n computed: {\n classes: function classes() {\n return _objectSpread({\n \'v-avatar--left\': this.left,\n \'v-avatar--right\': this.right\n }, this.roundedClasses);\n },\n styles: function styles() {\n return _objectSpread({\n height: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_11__[/* convertToUnit */ "h"])(this.size),\n minWidth: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_11__[/* convertToUnit */ "h"])(this.size),\n width: Object(_util_helpers__WEBPACK_IMPORTED_MODULE_11__[/* convertToUnit */ "h"])(this.size)\n }, this.measurableStyles);\n }\n },\n render: function render(h) {\n var data = {\n staticClass: \'v-avatar\',\n class: this.classes,\n style: this.styles,\n on: this.$listeners\n };\n return h(\'div\', this.setBackgroundColor(this.color, data), this.$slots.default);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkF2YXRhci9WQXZhdGFyLnRzPzdmMzYiXSwibmFtZXMiOlsibWl4aW5zIiwiQ29sb3JhYmxlIiwiTWVhc3VyYWJsZSIsIlJvdW5kYWJsZSIsImV4dGVuZCIsIm5hbWUiLCJwcm9wcyIsImxlZnQiLCJCb29sZWFuIiwicmlnaHQiLCJzaXplIiwidHlwZSIsIk51bWJlciIsIlN0cmluZyIsImRlZmF1bHQiLCJjb21wdXRlZCIsImNsYXNzZXMiLCJyb3VuZGVkQ2xhc3NlcyIsInN0eWxlcyIsImhlaWdodCIsImNvbnZlcnRUb1VuaXQiLCJtaW5XaWR0aCIsIndpZHRoIiwibWVhc3VyYWJsZVN0eWxlcyIsInJlbmRlciIsImgiLCJkYXRhIiwic3RhdGljQ2xhc3MiLCJjbGFzcyIsInN0eWxlIiwib24iLCIkbGlzdGVuZXJzIiwic2V0QmFja2dyb3VuZENvbG9yIiwiY29sb3IiLCIkc2xvdHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBRUE7O0FBQ0E7QUFDQTtDQUdBOztBQUNBO0FBSUE7QUFFZUEsOEhBQU0sQ0FDbkJDLGlFQURtQixFQUVuQkMsa0VBRm1CLEVBR25CQyxrRUFIbUIsQ0FBTixDQUtiQyxNQUxhLENBS047QUFDUEMsTUFBSSxFQUFFLFVBREM7QUFHUEMsT0FBSyxFQUFFO0FBQ0xDLFFBQUksRUFBRUMsT0FERDtBQUVMQyxTQUFLLEVBQUVELE9BRkY7QUFHTEUsUUFBSSxFQUFFO0FBQ0pDLFVBQUksRUFBRSxDQUFDQyxNQUFELEVBQVNDLE1BQVQsQ0FERjtBQUVKQyxhQUFPLEVBQUU7QUFGTDtBQUhELEdBSEE7QUFZUEMsVUFBUSxFQUFFO0FBQ1JDLFdBRFEscUJBQ0Q7QUFDTDtBQUNFLDBCQUFrQixLQUFLVCxJQUR6QjtBQUVFLDJCQUFtQixLQUFLRTtBQUYxQixTQUdLLEtBQUtRLGNBSFY7QUFGTTtBQVFSQyxVQVJRLG9CQVFGO0FBQ0o7QUFDRUMsY0FBTSxFQUFFQyw0RUFBYSxDQUFDLEtBQUtWLElBQU4sQ0FEdkI7QUFFRVcsZ0JBQVEsRUFBRUQsNEVBQWEsQ0FBQyxLQUFLVixJQUFOLENBRnpCO0FBR0VZLGFBQUssRUFBRUYsNEVBQWEsQ0FBQyxLQUFLVixJQUFOO0FBSHRCLFNBSUssS0FBS2EsZ0JBSlY7QUFNRDtBQWZPLEdBWkg7QUE4QlBDLFFBOUJPLGtCQThCQ0MsQ0E5QkQsRUE4QkU7QUFDUCxRQUFNQyxJQUFJLEdBQUc7QUFDWEMsaUJBQVcsRUFBRSxVQURGO0FBRVhDLFdBQUssRUFBRSxLQUFLWixPQUZEO0FBR1hhLFdBQUssRUFBRSxLQUFLWCxNQUhEO0FBSVhZLFFBQUUsRUFBRSxLQUFLQztBQUpFLEtBQWI7QUFPQSxXQUFPTixDQUFDLENBQUMsS0FBRCxFQUFRLEtBQUtPLGtCQUFMLENBQXdCLEtBQUtDLEtBQTdCLEVBQW9DUCxJQUFwQyxDQUFSLEVBQW1ELEtBQUtRLE1BQUwsQ0FBWXBCLE9BQS9ELENBQVI7QUFDRDtBQXZDTSxDQUxNLENBQWYiLCJmaWxlIjoiMTkwLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICcuL1ZBdmF0YXIuc2FzcydcblxuLy8gTWl4aW5zXG5pbXBvcnQgQ29sb3JhYmxlIGZyb20gJy4uLy4uL21peGlucy9jb2xvcmFibGUnXG5pbXBvcnQgTWVhc3VyYWJsZSBmcm9tICcuLi8uLi9taXhpbnMvbWVhc3VyYWJsZSdcbmltcG9ydCBSb3VuZGFibGUgZnJvbSAnLi4vLi4vbWl4aW5zL3JvdW5kYWJsZSdcblxuLy8gVXRpbGl0aWVzXG5pbXBvcnQgeyBjb252ZXJ0VG9Vbml0IH0gZnJvbSAnLi4vLi4vdXRpbC9oZWxwZXJzJ1xuXG4vLyBUeXBlc1xuaW1wb3J0IHsgVk5vZGUgfSBmcm9tICd2dWUnXG5pbXBvcnQgbWl4aW5zIGZyb20gJy4uLy4uL3V0aWwvbWl4aW5zJ1xuXG5leHBvcnQgZGVmYXVsdCBtaXhpbnMoXG4gIENvbG9yYWJsZSxcbiAgTWVhc3VyYWJsZSxcbiAgUm91bmRhYmxlLFxuICAvKiBAdnVlL2NvbXBvbmVudCAqL1xuKS5leHRlbmQoe1xuICBuYW1lOiAndi1hdmF0YXInLFxuXG4gIHByb3BzOiB7XG4gICAgbGVmdDogQm9vbGVhbixcbiAgICByaWdodDogQm9vbGVhbixcbiAgICBzaXplOiB7XG4gICAgICB0eXBlOiBbTnVtYmVyLCBTdHJpbmddLFxuICAgICAgZGVmYXVsdDogNDgsXG4gICAgfSxcbiAgfSxcblxuICBjb21wdXRlZDoge1xuICAgIGNsYXNzZXMgKCk6IG9iamVjdCB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAndi1hdmF0YXItLWxlZnQnOiB0aGlzLmxlZnQsXG4gICAgICAgICd2LWF2YXRhci0tcmlnaHQnOiB0aGlzLnJpZ2h0LFxuICAgICAgICAuLi50aGlzLnJvdW5kZWRDbGFzc2VzLFxuICAgICAgfVxuICAgIH0sXG4gICAgc3R5bGVzICgpOiBvYmplY3Qge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaGVpZ2h0OiBjb252ZXJ0VG9Vbml0KHRoaXMuc2l6ZSksXG4gICAgICAgIG1pbldpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMuc2l6ZSksXG4gICAgICAgIHdpZHRoOiBjb252ZXJ0VG9Vbml0KHRoaXMuc2l6ZSksXG4gICAgICAgIC4uLnRoaXMubWVhc3VyYWJsZVN0eWxlcyxcbiAgICAgIH1cbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgc3RhdGljQ2xhc3M6ICd2LWF2YXRhcicsXG4gICAgICBjbGFzczogdGhpcy5jbGFzc2VzLFxuICAgICAgc3R5bGU6IHRoaXMuc3R5bGVzLFxuICAgICAgb246IHRoaXMuJGxpc3RlbmVycyxcbiAgICB9XG5cbiAgICByZXR1cm4gaCgnZGl2JywgdGhpcy5zZXRCYWNrZ3JvdW5kQ29sb3IodGhpcy5jb2xvciwgZGF0YSksIHRoaXMuJHNsb3RzLmRlZmF1bHQpXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///190\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var core_js_modules_es6_array_slice_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25);\n/* harmony import */ var core_js_modules_es6_array_slice_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_slice_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var core_js_modules_es6_object_to_string_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(17);\n/* harmony import */ var core_js_modules_es6_object_to_string_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_to_string_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es6_function_name_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(22);\n/* harmony import */ var core_js_modules_es6_function_name_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_function_name_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var core_js_modules_es6_array_from_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(33);\n/* harmony import */ var core_js_modules_es6_array_from_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_from_js__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var core_js_modules_es6_string_iterator_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(34);\n/* harmony import */ var core_js_modules_es6_string_iterator_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_string_iterator_js__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var core_js_modules_web_dom_iterable_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(27);\n/* harmony import */ var core_js_modules_web_dom_iterable_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_iterable_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es6_array_find_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(158);\n/* harmony import */ var core_js_modules_es6_array_find_index_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_find_index_js__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var _src_components_VList_VList_sass__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(351);\n/* harmony import */ var _src_components_VList_VList_sass__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_src_components_VList_VList_sass__WEBPACK_IMPORTED_MODULE_13__);\n/* harmony import */ var _VSheet_VSheet__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(38);\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_11__[/* default */ "a"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n// Styles\n // Components\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__["a"] = (_VSheet_VSheet__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"].extend().extend({\n name: \'v-list\',\n provide: function provide() {\n return {\n isInList: true,\n list: this\n };\n },\n inject: {\n isInMenu: {\n default: false\n },\n isInNav: {\n default: false\n }\n },\n props: {\n dense: Boolean,\n disabled: Boolean,\n expand: Boolean,\n flat: Boolean,\n nav: Boolean,\n rounded: Boolean,\n subheader: Boolean,\n threeLine: Boolean,\n twoLine: Boolean\n },\n data: function data() {\n return {\n groups: []\n };\n },\n computed: {\n classes: function classes() {\n return _objectSpread(_objectSpread({}, _VSheet_VSheet__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"].options.computed.classes.call(this)), {}, {\n \'v-list--dense\': this.dense,\n \'v-list--disabled\': this.disabled,\n \'v-list--flat\': this.flat,\n \'v-list--nav\': this.nav,\n \'v-list--rounded\': this.rounded,\n \'v-list--subheader\': this.subheader,\n \'v-list--two-line\': this.twoLine,\n \'v-list--three-line\': this.threeLine\n });\n }\n },\n methods: {\n register: function register(content) {\n this.groups.push(content);\n },\n unregister: function unregister(content) {\n var index = this.groups.findIndex(function (g) {\n return g._uid === content._uid;\n });\n if (index > -1) this.groups.splice(index, 1);\n },\n listClick: function listClick(uid) {\n if (this.expand) return;\n\n var _iterator = _createForOfIteratorHelper(this.groups),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var group = _step.value;\n group.toggle(uid);\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n },\n render: function render(h) {\n var data = {\n staticClass: \'v-list\',\n class: this.classes,\n style: this.styles,\n attrs: _objectSpread({\n role: this.isInNav || this.isInMenu ? undefined : \'list\'\n }, this.attrs$)\n };\n return h(this.tag, this.setBackgroundColor(this.color, data), [this.$slots.default]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkxpc3QvVkxpc3QudHM/MzE1YSJdLCJuYW1lcyI6WyJWU2hlZXQiLCJleHRlbmQiLCJuYW1lIiwicHJvdmlkZSIsImlzSW5MaXN0IiwibGlzdCIsImluamVjdCIsImlzSW5NZW51IiwiZGVmYXVsdCIsImlzSW5OYXYiLCJwcm9wcyIsImRlbnNlIiwiQm9vbGVhbiIsImRpc2FibGVkIiwiZXhwYW5kIiwiZmxhdCIsIm5hdiIsInJvdW5kZWQiLCJzdWJoZWFkZXIiLCJ0aHJlZUxpbmUiLCJ0d29MaW5lIiwiZGF0YSIsImdyb3VwcyIsImNvbXB1dGVkIiwiY2xhc3NlcyIsIm9wdGlvbnMiLCJjYWxsIiwibWV0aG9kcyIsInJlZ2lzdGVyIiwiY29udGVudCIsInB1c2giLCJ1bnJlZ2lzdGVyIiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJnIiwiX3VpZCIsInNwbGljZSIsImxpc3RDbGljayIsInVpZCIsImdyb3VwIiwidG9nZ2xlIiwicmVuZGVyIiwiaCIsInN0YXRpY0NsYXNzIiwiY2xhc3MiLCJzdHlsZSIsInN0eWxlcyIsImF0dHJzIiwicm9sZSIsInVuZGVmaW5lZCIsImF0dHJzJCIsInRhZyIsInNldEJhY2tncm91bmRDb2xvciIsImNvbG9yIiwiJHNsb3RzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0NBSUE7O0FBQ0E7QUFZQTs7QUFDZUEsd0hBQU0sQ0FBQ0MsTUFBUCxHQUF5QkEsTUFBekIsQ0FBZ0M7QUFDN0NDLE1BQUksRUFBRSxRQUR1QztBQUc3Q0MsU0FINkMscUJBR3RDO0FBQ0wsV0FBTztBQUNMQyxjQUFRLEVBQUUsSUFETDtBQUVMQyxVQUFJLEVBQUU7QUFGRCxLQUFQO0FBSjJDO0FBVTdDQyxRQUFNLEVBQUU7QUFDTkMsWUFBUSxFQUFFO0FBQ1JDLGFBQU8sRUFBRTtBQURELEtBREo7QUFJTkMsV0FBTyxFQUFFO0FBQ1BELGFBQU8sRUFBRTtBQURGO0FBSkgsR0FWcUM7QUFtQjdDRSxPQUFLLEVBQUU7QUFDTEMsU0FBSyxFQUFFQyxPQURGO0FBRUxDLFlBQVEsRUFBRUQsT0FGTDtBQUdMRSxVQUFNLEVBQUVGLE9BSEg7QUFJTEcsUUFBSSxFQUFFSCxPQUpEO0FBS0xJLE9BQUcsRUFBRUosT0FMQTtBQU1MSyxXQUFPLEVBQUVMLE9BTko7QUFPTE0sYUFBUyxFQUFFTixPQVBOO0FBUUxPLGFBQVMsRUFBRVAsT0FSTjtBQVNMUSxXQUFPLEVBQUVSO0FBVEosR0FuQnNDO0FBK0I3Q1MsTUFBSSxFQUFFO0FBQUEsV0FBTztBQUNYQyxZQUFNLEVBQUU7QUFERyxLQUFQO0FBQUEsR0EvQnVDO0FBbUM3Q0MsVUFBUSxFQUFFO0FBQ1JDLFdBRFEscUJBQ0Q7QUFDTCw2Q0FDS3hCLCtEQUFNLENBQUN5QixPQUFQLENBQWVGLFFBQWYsQ0FBd0JDLE9BQXhCLENBQWdDRSxJQUFoQyxDQUFxQyxJQUFyQyxDQURMO0FBRUUseUJBQWlCLEtBQUtmLEtBRnhCO0FBR0UsNEJBQW9CLEtBQUtFLFFBSDNCO0FBSUUsd0JBQWdCLEtBQUtFLElBSnZCO0FBS0UsdUJBQWUsS0FBS0MsR0FMdEI7QUFNRSwyQkFBbUIsS0FBS0MsT0FOMUI7QUFPRSw2QkFBcUIsS0FBS0MsU0FQNUI7QUFRRSw0QkFBb0IsS0FBS0UsT0FSM0I7QUFTRSw4QkFBc0IsS0FBS0Q7QUFUN0I7QUFXRDtBQWJPLEdBbkNtQztBQW1EN0NRLFNBQU8sRUFBRTtBQUNQQyxZQURPLG9CQUNHQyxPQURILEVBQzhCO0FBQ25DLFdBQUtQLE1BQUwsQ0FBWVEsSUFBWixDQUFpQkQsT0FBakI7QUFGSztBQUlQRSxjQUpPLHNCQUlLRixPQUpMLEVBSWdDO0FBQ3JDLFVBQU1HLEtBQUssR0FBRyxLQUFLVixNQUFMLENBQVlXLFNBQVosQ0FBc0IsV0FBQztBQUFBLGVBQUlDLENBQUMsQ0FBQ0MsSUFBRixLQUFXTixPQUFPLENBQUNNLElBQXZCO0FBQUEsT0FBdkIsQ0FBZDtBQUVBLFVBQUlILEtBQUssR0FBRyxDQUFDLENBQWIsRUFBZ0IsS0FBS1YsTUFBTCxDQUFZYyxNQUFaLENBQW1CSixLQUFuQixFQUEwQixDQUExQjtBQVBYO0FBU1BLLGFBVE8scUJBU0lDLEdBVEosRUFTZTtBQUNwQixVQUFJLEtBQUt4QixNQUFULEVBQWlCOztBQURHLGlEQUdBLEtBQUtRLE1BSEw7QUFBQTs7QUFBQTtBQUdwQiw0REFBaUM7QUFBQSxjQUF0QmlCLEtBQXNCO0FBQy9CQSxlQUFLLENBQUNDLE1BQU4sQ0FBYUYsR0FBYjtBQUNEO0FBTG1CO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNckI7QUFmTSxHQW5Eb0M7QUFxRTdDRyxRQXJFNkMsa0JBcUVyQ0MsQ0FyRXFDLEVBcUVwQztBQUNQLFFBQU1yQixJQUFJLEdBQUc7QUFDWHNCLGlCQUFXLEVBQUUsUUFERjtBQUVYQyxXQUFLLEVBQUUsS0FBS3BCLE9BRkQ7QUFHWHFCLFdBQUssRUFBRSxLQUFLQyxNQUhEO0FBSVhDLFdBQUs7QUFDSEMsWUFBSSxFQUFFLEtBQUt2QyxPQUFMLElBQWdCLEtBQUtGLFFBQXJCLEdBQWdDMEMsU0FBaEMsR0FBNEM7QUFEL0MsU0FFQSxLQUFLQyxNQUZMO0FBSk0sS0FBYjtBQVVBLFdBQU9SLENBQUMsQ0FBQyxLQUFLUyxHQUFOLEVBQVcsS0FBS0Msa0JBQUwsQ0FBd0IsS0FBS0MsS0FBN0IsRUFBb0NoQyxJQUFwQyxDQUFYLEVBQXNELENBQUMsS0FBS2lDLE1BQUwsQ0FBWTlDLE9BQWIsQ0FBdEQsQ0FBUjtBQUNEO0FBakY0QyxDQUFoQyxDQUFmIiwiZmlsZSI6IjE5MS5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFN0eWxlc1xuaW1wb3J0ICcuL1ZMaXN0LnNhc3MnXG5pbXBvcnQgVkxpc3RHcm91cCBmcm9tICcuL1ZMaXN0R3JvdXAnXG5cbi8vIENvbXBvbmVudHNcbmltcG9ydCBWU2hlZXQgZnJvbSAnLi4vVlNoZWV0L1ZTaGVldCdcblxuLy8gVHlwZXNcbmltcG9ydCB7IFZOb2RlIH0gZnJvbSAndnVlJ1xuXG50eXBlIFZMaXN0R3JvdXBJbnN0YW5jZSA9IEluc3RhbmNlVHlwZTx0eXBlb2YgVkxpc3RHcm91cD5cblxuaW50ZXJmYWNlIG9wdGlvbnMgZXh0ZW5kcyBJbnN0YW5jZVR5cGU8dHlwZW9mIFZTaGVldD4ge1xuICBpc0luTWVudTogYm9vbGVhblxuICBpc0luTmF2OiBib29sZWFuXG59XG5cbi8qIEB2dWUvY29tcG9uZW50ICovXG5leHBvcnQgZGVmYXVsdCBWU2hlZXQuZXh0ZW5kPG9wdGlvbnM+KCkuZXh0ZW5kKHtcbiAgbmFtZTogJ3YtbGlzdCcsXG5cbiAgcHJvdmlkZSAoKTogb2JqZWN0IHtcbiAgICByZXR1cm4ge1xuICAgICAgaXNJbkxpc3Q6IHRydWUsXG4gICAgICBsaXN0OiB0aGlzLFxuICAgIH1cbiAgfSxcblxuICBpbmplY3Q6IHtcbiAgICBpc0luTWVudToge1xuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgfSxcbiAgICBpc0luTmF2OiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICB9LFxuICB9LFxuXG4gIHByb3BzOiB7XG4gICAgZGVuc2U6IEJvb2xlYW4sXG4gICAgZGlzYWJsZWQ6IEJvb2xlYW4sXG4gICAgZXhwYW5kOiBCb29sZWFuLFxuICAgIGZsYXQ6IEJvb2xlYW4sXG4gICAgbmF2OiBCb29sZWFuLFxuICAgIHJvdW5kZWQ6IEJvb2xlYW4sXG4gICAgc3ViaGVhZGVyOiBCb29sZWFuLFxuICAgIHRocmVlTGluZTogQm9vbGVhbixcbiAgICB0d29MaW5lOiBCb29sZWFuLFxuICB9LFxuXG4gIGRhdGE6ICgpID0+ICh7XG4gICAgZ3JvdXBzOiBbXSBhcyBWTGlzdEdyb3VwSW5zdGFuY2VbXSxcbiAgfSksXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBjbGFzc2VzICgpOiBvYmplY3Qge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uVlNoZWV0Lm9wdGlvbnMuY29tcHV0ZWQuY2xhc3Nlcy5jYWxsKHRoaXMpLFxuICAgICAgICAndi1saXN0LS1kZW5zZSc6IHRoaXMuZGVuc2UsXG4gICAgICAgICd2LWxpc3QtLWRpc2FibGVkJzogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgJ3YtbGlzdC0tZmxhdCc6IHRoaXMuZmxhdCxcbiAgICAgICAgJ3YtbGlzdC0tbmF2JzogdGhpcy5uYXYsXG4gICAgICAgICd2LWxpc3QtLXJvdW5kZWQnOiB0aGlzLnJvdW5kZWQsXG4gICAgICAgICd2LWxpc3QtLXN1YmhlYWRlcic6IHRoaXMuc3ViaGVhZGVyLFxuICAgICAgICAndi1saXN0LS10d28tbGluZSc6IHRoaXMudHdvTGluZSxcbiAgICAgICAgJ3YtbGlzdC0tdGhyZWUtbGluZSc6IHRoaXMudGhyZWVMaW5lLFxuICAgICAgfVxuICAgIH0sXG4gIH0sXG5cbiAgbWV0aG9kczoge1xuICAgIHJlZ2lzdGVyIChjb250ZW50OiBWTGlzdEdyb3VwSW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuZ3JvdXBzLnB1c2goY29udGVudClcbiAgICB9LFxuICAgIHVucmVnaXN0ZXIgKGNvbnRlbnQ6IFZMaXN0R3JvdXBJbnN0YW5jZSkge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmdyb3Vwcy5maW5kSW5kZXgoZyA9PiBnLl91aWQgPT09IGNvbnRlbnQuX3VpZClcblxuICAgICAgaWYgKGluZGV4ID4gLTEpIHRoaXMuZ3JvdXBzLnNwbGljZShpbmRleCwgMSlcbiAgICB9LFxuICAgIGxpc3RDbGljayAodWlkOiBudW1iZXIpIHtcbiAgICAgIGlmICh0aGlzLmV4cGFuZCkgcmV0dXJuXG5cbiAgICAgIGZvciAoY29uc3QgZ3JvdXAgb2YgdGhpcy5ncm91cHMpIHtcbiAgICAgICAgZ3JvdXAudG9nZ2xlKHVpZClcbiAgICAgIH1cbiAgICB9LFxuICB9LFxuXG4gIHJlbmRlciAoaCk6IFZOb2RlIHtcbiAgICBjb25zdCBkYXRhID0ge1xuICAgICAgc3RhdGljQ2xhc3M6ICd2LWxpc3QnLFxuICAgICAgY2xhc3M6IHRoaXMuY2xhc3NlcyxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlcyxcbiAgICAgIGF0dHJzOiB7XG4gICAgICAgIHJvbGU6IHRoaXMuaXNJbk5hdiB8fCB0aGlzLmlzSW5NZW51ID8gdW5kZWZpbmVkIDogJ2xpc3QnLFxuICAgICAgICAuLi50aGlzLmF0dHJzJCxcbiAgICAgIH0sXG4gICAgfVxuXG4gICAgcmV0dXJuIGgodGhpcy50YWcsIHRoaXMuc2V0QmFja2dyb3VuZENvbG9yKHRoaXMuY29sb3IsIGRhdGEpLCBbdGhpcy4kc2xvdHMuZGVmYXVsdF0pXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///191\n')},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);\n\n// Types\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (vue__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"].extend({\n name: 'v-list-item-action',\n functional: true,\n render: function render(h, _ref) {\n var data = _ref.data,\n _ref$children = _ref.children,\n children = _ref$children === void 0 ? [] : _ref$children;\n data.staticClass = data.staticClass ? \"v-list-item__action \".concat(data.staticClass) : 'v-list-item__action';\n var filteredChild = children.filter(function (VNode) {\n return VNode.isComment === false && VNode.text !== ' ';\n });\n if (filteredChild.length > 1) data.staticClass += ' v-list-item__action--stack';\n return h('div', data, children);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVkxpc3QvVkxpc3RJdGVtQWN0aW9uLnRzPzhkMjQiXSwibmFtZXMiOlsiVnVlIiwiZXh0ZW5kIiwibmFtZSIsImZ1bmN0aW9uYWwiLCJyZW5kZXIiLCJoIiwiZGF0YSIsImNoaWxkcmVuIiwic3RhdGljQ2xhc3MiLCJmaWx0ZXJlZENoaWxkIiwiZmlsdGVyIiwiVk5vZGUiLCJpc0NvbW1lbnQiLCJ0ZXh0IiwibGVuZ3RoIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7QUFDQTtBQUVBOztBQUNlQSw0R0FBRyxDQUFDQyxNQUFKLENBQVc7QUFDeEJDLE1BQUksRUFBRSxvQkFEa0I7QUFHeEJDLFlBQVUsRUFBRSxJQUhZO0FBS3hCQyxRQUx3QixrQkFLaEJDLENBTGdCLFFBS1U7QUFBQSxRQUFyQkMsSUFBcUIsUUFBckJBLElBQXFCO0FBQUEsNkJBQWZDLFFBQWU7QUFBQSxRQUFmQSxRQUFlLDhCQUFKLEVBQUk7QUFDaENELFFBQUksQ0FBQ0UsV0FBTCxHQUFtQkYsSUFBSSxDQUFDRSxXQUFMLGlDQUEwQ0YsSUFBSSxDQUFDRSxXQUEvQyxJQUErRCxxQkFBbEY7QUFDQSxRQUFNQyxhQUFhLEdBQUdGLFFBQVEsQ0FBQ0csTUFBVCxDQUFnQixlQUFLLEVBQUc7QUFDNUMsYUFBT0MsS0FBSyxDQUFDQyxTQUFOLEtBQW9CLEtBQXBCLElBQTZCRCxLQUFLLENBQUNFLElBQU4sS0FBZSxHQUFuRDtBQURvQixNQUF0QjtBQUdBLFFBQUlKLGFBQWEsQ0FBQ0ssTUFBZCxHQUF1QixDQUEzQixFQUE4QlIsSUFBSSxDQUFDRSxXQUFMLElBQW9CLDZCQUFwQjtBQUU5QixXQUFPSCxDQUFDLENBQUMsS0FBRCxFQUFRQyxJQUFSLEVBQWNDLFFBQWQsQ0FBUjtBQUNEO0FBYnVCLENBQVgsQ0FBZiIsImZpbGUiOiIxOTIuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUeXBlc1xuaW1wb3J0IFZ1ZSwgeyBWTm9kZSB9IGZyb20gJ3Z1ZSdcblxuLyogQHZ1ZS9jb21wb25lbnQgKi9cbmV4cG9ydCBkZWZhdWx0IFZ1ZS5leHRlbmQoe1xuICBuYW1lOiAndi1saXN0LWl0ZW0tYWN0aW9uJyxcblxuICBmdW5jdGlvbmFsOiB0cnVlLFxuXG4gIHJlbmRlciAoaCwgeyBkYXRhLCBjaGlsZHJlbiA9IFtdIH0pOiBWTm9kZSB7XG4gICAgZGF0YS5zdGF0aWNDbGFzcyA9IGRhdGEuc3RhdGljQ2xhc3MgPyBgdi1saXN0LWl0ZW1fX2FjdGlvbiAke2RhdGEuc3RhdGljQ2xhc3N9YCA6ICd2LWxpc3QtaXRlbV9fYWN0aW9uJ1xuICAgIGNvbnN0IGZpbHRlcmVkQ2hpbGQgPSBjaGlsZHJlbi5maWx0ZXIoVk5vZGUgPT4ge1xuICAgICAgcmV0dXJuIFZOb2RlLmlzQ29tbWVudCA9PT0gZmFsc2UgJiYgVk5vZGUudGV4dCAhPT0gJyAnXG4gICAgfSlcbiAgICBpZiAoZmlsdGVyZWRDaGlsZC5sZW5ndGggPiAxKSBkYXRhLnN0YXRpY0NsYXNzICs9ICcgdi1saXN0LWl0ZW1fX2FjdGlvbi0tc3RhY2snXG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgY2hpbGRyZW4pXG4gIH0sXG59KVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///192\n")},function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return attachedRoot; });\n/**\n * Returns:\n * - 'null' if the node is not attached to the DOM\n * - the root node (HTMLDocument | ShadowRoot) otherwise\n */\nfunction attachedRoot(node) {\n /* istanbul ignore next */\n if (typeof node.getRootNode !== 'function') {\n // Shadow DOM not supported (IE11), lets find the root of this node\n while (node.parentNode) {\n node = node.parentNode;\n } // The root parent is the document if the node is attached to the DOM\n\n\n if (node !== document) return null;\n return document;\n }\n\n var root = node.getRootNode(); // The composed root node is the document if the node is attached to the DOM\n\n if (root !== document && root.getRootNode({\n composed: true\n }) !== document) return null;\n return root;\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vc3JjL3V0aWwvZG9tLnRzP2Q0YzYiXSwibmFtZXMiOlsiYXR0YWNoZWRSb290Iiwibm9kZSIsImdldFJvb3ROb2RlIiwicGFyZW50Tm9kZSIsImRvY3VtZW50Iiwicm9vdCIsImNvbXBvc2VkIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFBOzs7O0FBSUc7QUFDRyxTQUFVQSxZQUFWLENBQXdCQyxJQUF4QixFQUFrQztBQUN0QztBQUNBLE1BQUksT0FBT0EsSUFBSSxDQUFDQyxXQUFaLEtBQTRCLFVBQWhDLEVBQTRDO0FBQzFDO0FBQ0EsV0FBT0QsSUFBSSxDQUFDRSxVQUFaO0FBQXdCRixVQUFJLEdBQUdBLElBQUksQ0FBQ0UsVUFBWjtBQUF4QixLQUYwQyxDQUkxQzs7O0FBQ0EsUUFBSUYsSUFBSSxLQUFLRyxRQUFiLEVBQXVCLE9BQU8sSUFBUDtBQUV2QixXQUFPQSxRQUFQO0FBQ0Q7O0FBRUQsTUFBTUMsSUFBSSxHQUFHSixJQUFJLENBQUNDLFdBQUwsRUFBYixDQVpzQyxDQWN0Qzs7QUFDQSxNQUFJRyxJQUFJLEtBQUtELFFBQVQsSUFBcUJDLElBQUksQ0FBQ0gsV0FBTCxDQUFpQjtBQUFFSSxZQUFRLEVBQUU7QUFBWixHQUFqQixNQUF5Q0YsUUFBbEUsRUFBNEUsT0FBTyxJQUFQO0FBRTVFLFNBQU9DLElBQVA7QUFDRCIsImZpbGUiOiIxOTMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJldHVybnM6XG4gKiAgLSAnbnVsbCcgaWYgdGhlIG5vZGUgaXMgbm90IGF0dGFjaGVkIHRvIHRoZSBET01cbiAqICAtIHRoZSByb290IG5vZGUgKEhUTUxEb2N1bWVudCB8IFNoYWRvd1Jvb3QpIG90aGVyd2lzZVxuICovXG5leHBvcnQgZnVuY3Rpb24gYXR0YWNoZWRSb290IChub2RlOiBOb2RlKTogbnVsbCB8IEhUTUxEb2N1bWVudCB8IFNoYWRvd1Jvb3Qge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICBpZiAodHlwZW9mIG5vZGUuZ2V0Um9vdE5vZGUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAvLyBTaGFkb3cgRE9NIG5vdCBzdXBwb3J0ZWQgKElFMTEpLCBsZXRzIGZpbmQgdGhlIHJvb3Qgb2YgdGhpcyBub2RlXG4gICAgd2hpbGUgKG5vZGUucGFyZW50Tm9kZSkgbm9kZSA9IG5vZGUucGFyZW50Tm9kZVxuXG4gICAgLy8gVGhlIHJvb3QgcGFyZW50IGlzIHRoZSBkb2N1bWVudCBpZiB0aGUgbm9kZSBpcyBhdHRhY2hlZCB0byB0aGUgRE9NXG4gICAgaWYgKG5vZGUgIT09IGRvY3VtZW50KSByZXR1cm4gbnVsbFxuXG4gICAgcmV0dXJuIGRvY3VtZW50XG4gIH1cblxuICBjb25zdCByb290ID0gbm9kZS5nZXRSb290Tm9kZSgpXG5cbiAgLy8gVGhlIGNvbXBvc2VkIHJvb3Qgbm9kZSBpcyB0aGUgZG9jdW1lbnQgaWYgdGhlIG5vZGUgaXMgYXR0YWNoZWQgdG8gdGhlIERPTVxuICBpZiAocm9vdCAhPT0gZG9jdW1lbnQgJiYgcm9vdC5nZXRSb290Tm9kZSh7IGNvbXBvc2VkOiB0cnVlIH0pICE9PSBkb2N1bWVudCkgcmV0dXJuIG51bGxcblxuICByZXR1cm4gcm9vdCBhcyBIVE1MRG9jdW1lbnQgfCBTaGFkb3dSb290XG59XG4iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///193\n")},,,,function(module,exports,__webpack_require__){eval("var Clipboard = __webpack_require__(287) // FIXME: workaround for browserify\n\nvar VueClipboardConfig = {\n autoSetContainer: false,\n appendToBody: true // This fixes IE, see #50\n}\n\nvar VueClipboard = {\n install: function (Vue) {\n var globalPrototype = Vue.version.slice(0, 2) === '3.' ? Vue.config.globalProperties : Vue.prototype\n globalPrototype.$clipboardConfig = VueClipboardConfig\n globalPrototype.$copyText = function (text, container) {\n return new Promise(function (resolve, reject) {\n var fakeElement = document.createElement('button')\n var clipboard = new Clipboard(fakeElement, {\n text: function () { return text },\n action: function () { return 'copy' },\n container: typeof container === 'object' ? container : document.body\n })\n clipboard.on('success', function (e) {\n clipboard.destroy()\n resolve(e)\n })\n clipboard.on('error', function (e) {\n clipboard.destroy()\n reject(e)\n })\n if (VueClipboardConfig.appendToBody) document.body.appendChild(fakeElement)\n fakeElement.click()\n if (VueClipboardConfig.appendToBody) document.body.removeChild(fakeElement)\n })\n }\n\n Vue.directive('clipboard', {\n bind: function (el, binding, vnode) {\n if (binding.arg === 'success') {\n el._vClipboard_success = binding.value\n } else if (binding.arg === 'error') {\n el._vClipboard_error = binding.value\n } else {\n var clipboard = new Clipboard(el, {\n text: function () { return binding.value },\n action: function () { return binding.arg === 'cut' ? 'cut' : 'copy' },\n container: VueClipboardConfig.autoSetContainer ? el : undefined\n })\n clipboard.on('success', function (e) {\n var callback = el._vClipboard_success\n callback && callback(e)\n })\n clipboard.on('error', function (e) {\n var callback = el._vClipboard_error\n callback && callback(e)\n })\n el._vClipboard = clipboard\n }\n },\n update: function (el, binding) {\n if (binding.arg === 'success') {\n el._vClipboard_success = binding.value\n } else if (binding.arg === 'error') {\n el._vClipboard_error = binding.value\n } else {\n el._vClipboard.text = function () { return binding.value }\n el._vClipboard.action = function () { return binding.arg === 'cut' ? 'cut' : 'copy' }\n }\n },\n unbind: function (el, binding) {\n // FIXME: investigate why $element._vClipboard was missing\n if (!el._vClipboard) return\n if (binding.arg === 'success') {\n delete el._vClipboard_success\n } else if (binding.arg === 'error') {\n delete el._vClipboard_error\n } else {\n el._vClipboard.destroy()\n delete el._vClipboard\n }\n }\n })\n },\n config: VueClipboardConfig\n}\n\nif (true) {\n module.exports = VueClipboard\n} else {}\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWNsaXBib2FyZDIvdnVlLWNsaXBib2FyZC5qcz80ZWI1Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQixtQkFBTyxDQUFDLEdBQWlDOztBQUV6RDtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCLGNBQWM7QUFDM0MsK0JBQStCLGdCQUFnQjtBQUMvQztBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0E7QUFDQTtBQUNBLE9BQU87QUFDUDs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVDtBQUNBLCtCQUErQix1QkFBdUI7QUFDdEQsaUNBQWlDLGdEQUFnRDtBQUNqRjtBQUNBLFdBQVc7QUFDWDtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0EsV0FBVztBQUNYO0FBQ0E7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNUO0FBQ0EsU0FBUztBQUNULDZDQUE2QztBQUM3QywrQ0FBK0M7QUFDL0M7QUFDQSxPQUFPO0FBQ1A7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFNBQVM7QUFDVDtBQUNBLFNBQVM7QUFDVDtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTCxHQUFHO0FBQ0g7QUFDQTs7QUFFQSxJQUFJLElBQTJCO0FBQy9CO0FBQ0EsQ0FBQyxNQUFNLEVBSU4iLCJmaWxlIjoiMTk3LmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIENsaXBib2FyZCA9IHJlcXVpcmUoJ2NsaXBib2FyZC9kaXN0L2NsaXBib2FyZC5taW4uanMnKSAvLyBGSVhNRTogd29ya2Fyb3VuZCBmb3IgYnJvd3NlcmlmeVxuXG52YXIgVnVlQ2xpcGJvYXJkQ29uZmlnID0ge1xuICBhdXRvU2V0Q29udGFpbmVyOiBmYWxzZSxcbiAgYXBwZW5kVG9Cb2R5OiB0cnVlIC8vIFRoaXMgZml4ZXMgSUUsIHNlZSAjNTBcbn1cblxudmFyIFZ1ZUNsaXBib2FyZCA9IHtcbiAgaW5zdGFsbDogZnVuY3Rpb24gKFZ1ZSkge1xuICAgIHZhciBnbG9iYWxQcm90b3R5cGUgPSBWdWUudmVyc2lvbi5zbGljZSgwLCAyKSA9PT0gJzMuJyA/IFZ1ZS5jb25maWcuZ2xvYmFsUHJvcGVydGllcyA6IFZ1ZS5wcm90b3R5cGVcbiAgICBnbG9iYWxQcm90b3R5cGUuJGNsaXBib2FyZENvbmZpZyA9IFZ1ZUNsaXBib2FyZENvbmZpZ1xuICAgIGdsb2JhbFByb3RvdHlwZS4kY29weVRleHQgPSBmdW5jdGlvbiAodGV4dCwgY29udGFpbmVyKSB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgICB2YXIgZmFrZUVsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKVxuICAgICAgICB2YXIgY2xpcGJvYXJkID0gbmV3IENsaXBib2FyZChmYWtlRWxlbWVudCwge1xuICAgICAgICAgIHRleHQ6IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRleHQgfSxcbiAgICAgICAgICBhY3Rpb246IGZ1bmN0aW9uICgpIHsgcmV0dXJuICdjb3B5JyB9LFxuICAgICAgICAgIGNvbnRhaW5lcjogdHlwZW9mIGNvbnRhaW5lciA9PT0gJ29iamVjdCcgPyBjb250YWluZXIgOiBkb2N1bWVudC5ib2R5XG4gICAgICAgIH0pXG4gICAgICAgIGNsaXBib2FyZC5vbignc3VjY2VzcycsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgY2xpcGJvYXJkLmRlc3Ryb3koKVxuICAgICAgICAgIHJlc29sdmUoZSlcbiAgICAgICAgfSlcbiAgICAgICAgY2xpcGJvYXJkLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlKSB7XG4gICAgICAgICAgY2xpcGJvYXJkLmRlc3Ryb3koKVxuICAgICAgICAgIHJlamVjdChlKVxuICAgICAgICB9KVxuICAgICAgICBpZiAoVnVlQ2xpcGJvYXJkQ29uZmlnLmFwcGVuZFRvQm9keSkgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChmYWtlRWxlbWVudClcbiAgICAgICAgZmFrZUVsZW1lbnQuY2xpY2soKVxuICAgICAgICBpZiAoVnVlQ2xpcGJvYXJkQ29uZmlnLmFwcGVuZFRvQm9keSkgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChmYWtlRWxlbWVudClcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgVnVlLmRpcmVjdGl2ZSgnY2xpcGJvYXJkJywge1xuICAgICAgYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xuICAgICAgICBpZiAoYmluZGluZy5hcmcgPT09ICdzdWNjZXNzJykge1xuICAgICAgICAgIGVsLl92Q2xpcGJvYXJkX3N1Y2Nlc3MgPSBiaW5kaW5nLnZhbHVlXG4gICAgICAgIH0gZWxzZSBpZiAoYmluZGluZy5hcmcgPT09ICdlcnJvcicpIHtcbiAgICAgICAgICBlbC5fdkNsaXBib2FyZF9lcnJvciA9IGJpbmRpbmcudmFsdWVcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB2YXIgY2xpcGJvYXJkID0gbmV3IENsaXBib2FyZChlbCwge1xuICAgICAgICAgICAgdGV4dDogZnVuY3Rpb24gKCkgeyByZXR1cm4gYmluZGluZy52YWx1ZSB9LFxuICAgICAgICAgICAgYWN0aW9uOiBmdW5jdGlvbiAoKSB7IHJldHVybiBiaW5kaW5nLmFyZyA9PT0gJ2N1dCcgPyAnY3V0JyA6ICdjb3B5JyB9LFxuICAgICAgICAgICAgY29udGFpbmVyOiBWdWVDbGlwYm9hcmRDb25maWcuYXV0b1NldENvbnRhaW5lciA/IGVsIDogdW5kZWZpbmVkXG4gICAgICAgICAgfSlcbiAgICAgICAgICBjbGlwYm9hcmQub24oJ3N1Y2Nlc3MnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgdmFyIGNhbGxiYWNrID0gZWwuX3ZDbGlwYm9hcmRfc3VjY2Vzc1xuICAgICAgICAgICAgY2FsbGJhY2sgJiYgY2FsbGJhY2soZSlcbiAgICAgICAgICB9KVxuICAgICAgICAgIGNsaXBib2FyZC5vbignZXJyb3InLCBmdW5jdGlvbiAoZSkge1xuICAgICAgICAgICAgdmFyIGNhbGxiYWNrID0gZWwuX3ZDbGlwYm9hcmRfZXJyb3JcbiAgICAgICAgICAgIGNhbGxiYWNrICYmIGNhbGxiYWNrKGUpXG4gICAgICAgICAgfSlcbiAgICAgICAgICBlbC5fdkNsaXBib2FyZCA9IGNsaXBib2FyZFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdXBkYXRlOiBmdW5jdGlvbiAoZWwsIGJpbmRpbmcpIHtcbiAgICAgICAgaWYgKGJpbmRpbmcuYXJnID09PSAnc3VjY2VzcycpIHtcbiAgICAgICAgICBlbC5fdkNsaXBib2FyZF9zdWNjZXNzID0gYmluZGluZy52YWx1ZVxuICAgICAgICB9IGVsc2UgaWYgKGJpbmRpbmcuYXJnID09PSAnZXJyb3InKSB7XG4gICAgICAgICAgZWwuX3ZDbGlwYm9hcmRfZXJyb3IgPSBiaW5kaW5nLnZhbHVlXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZWwuX3ZDbGlwYm9hcmQudGV4dCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGJpbmRpbmcudmFsdWUgfVxuICAgICAgICAgIGVsLl92Q2xpcGJvYXJkLmFjdGlvbiA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGJpbmRpbmcuYXJnID09PSAnY3V0JyA/ICdjdXQnIDogJ2NvcHknIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHVuYmluZDogZnVuY3Rpb24gKGVsLCBiaW5kaW5nKSB7XG4gICAgICAgIC8vIEZJWE1FOiBpbnZlc3RpZ2F0ZSB3aHkgJGVsZW1lbnQuX3ZDbGlwYm9hcmQgd2FzIG1pc3NpbmdcbiAgICAgICAgaWYgKCFlbC5fdkNsaXBib2FyZCkgcmV0dXJuXG4gICAgICAgIGlmIChiaW5kaW5nLmFyZyA9PT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICAgICAgZGVsZXRlIGVsLl92Q2xpcGJvYXJkX3N1Y2Nlc3NcbiAgICAgICAgfSBlbHNlIGlmIChiaW5kaW5nLmFyZyA9PT0gJ2Vycm9yJykge1xuICAgICAgICAgIGRlbGV0ZSBlbC5fdkNsaXBib2FyZF9lcnJvclxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGVsLl92Q2xpcGJvYXJkLmRlc3Ryb3koKVxuICAgICAgICAgIGRlbGV0ZSBlbC5fdkNsaXBib2FyZFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSlcbiAgfSxcbiAgY29uZmlnOiBWdWVDbGlwYm9hcmRDb25maWdcbn1cblxuaWYgKHR5cGVvZiBleHBvcnRzID09PSAnb2JqZWN0Jykge1xuICBtb2R1bGUuZXhwb3J0cyA9IFZ1ZUNsaXBib2FyZFxufSBlbHNlIGlmICh0eXBlb2YgZGVmaW5lID09PSAnZnVuY3Rpb24nICYmIGRlZmluZS5hbWQpIHtcbiAgZGVmaW5lKFtdLCBmdW5jdGlvbiAoKSB7XG4gICAgcmV0dXJuIFZ1ZUNsaXBib2FyZFxuICB9KVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///197\n")},function(module,exports,__webpack_require__){"use strict";eval("/*!\n * vue-client-only v2.0.0\n * (c) 2019-present egoist <0x142857@gmail.com>\n * Released under the MIT License.\n */\n\n\nvar index = {\n name: 'ClientOnly',\n functional: true,\n props: {\n placeholder: String,\n placeholderTag: {\n type: String,\n default: 'div'\n }\n },\n render: function render(h, ref) {\n var parent = ref.parent;\n var slots = ref.slots;\n var props = ref.props;\n\n var ref$1 = slots();\n var defaultSlot = ref$1.default; if ( defaultSlot === void 0 ) defaultSlot = [];\n var placeholderSlot = ref$1.placeholder;\n\n if (parent._isMounted) {\n return defaultSlot\n }\n\n parent.$once('hook:mounted', function () {\n parent.$forceUpdate();\n });\n\n if (props.placeholderTag && (props.placeholder || placeholderSlot)) {\n return h(\n props.placeholderTag,\n {\n class: ['client-only-placeholder']\n },\n props.placeholder || placeholderSlot\n )\n }\n\n // Return a placeholder element for each child in the default slot\n // Or if no children return a single placeholder\n return defaultSlot.length > 0 ? defaultSlot.map(function () { return h(false); }) : h(false)\n }\n};\n\nmodule.exports = index;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWNsaWVudC1vbmx5L2Rpc3QvdnVlLWNsaWVudC1vbmx5LmNvbW1vbi5qcz84ZTI2Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDYTs7QUFFYjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxHQUFHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQSxvQ0FBb0M7QUFDcEM7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxLQUFLOztBQUVMO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxTQUFTO0FBQ1Q7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSxpRUFBaUUsaUJBQWlCLEVBQUU7QUFDcEY7QUFDQTs7QUFFQSIsImZpbGUiOiIxOTguanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIHZ1ZS1jbGllbnQtb25seSB2Mi4wLjBcbiAqIChjKSAyMDE5LXByZXNlbnQgZWdvaXN0IDwweDE0Mjg1N0BnbWFpbC5jb20+XG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuXG4gKi9cbid1c2Ugc3RyaWN0JztcblxudmFyIGluZGV4ID0ge1xuICBuYW1lOiAnQ2xpZW50T25seScsXG4gIGZ1bmN0aW9uYWw6IHRydWUsXG4gIHByb3BzOiB7XG4gICAgcGxhY2Vob2xkZXI6IFN0cmluZyxcbiAgICBwbGFjZWhvbGRlclRhZzoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgZGVmYXVsdDogJ2RpdidcbiAgICB9XG4gIH0sXG4gIHJlbmRlcjogZnVuY3Rpb24gcmVuZGVyKGgsIHJlZikge1xuICAgIHZhciBwYXJlbnQgPSByZWYucGFyZW50O1xuICAgIHZhciBzbG90cyA9IHJlZi5zbG90cztcbiAgICB2YXIgcHJvcHMgPSByZWYucHJvcHM7XG5cbiAgICB2YXIgcmVmJDEgPSBzbG90cygpO1xuICAgIHZhciBkZWZhdWx0U2xvdCA9IHJlZiQxLmRlZmF1bHQ7IGlmICggZGVmYXVsdFNsb3QgPT09IHZvaWQgMCApIGRlZmF1bHRTbG90ID0gW107XG4gICAgdmFyIHBsYWNlaG9sZGVyU2xvdCA9IHJlZiQxLnBsYWNlaG9sZGVyO1xuXG4gICAgaWYgKHBhcmVudC5faXNNb3VudGVkKSB7XG4gICAgICByZXR1cm4gZGVmYXVsdFNsb3RcbiAgICB9XG5cbiAgICBwYXJlbnQuJG9uY2UoJ2hvb2s6bW91bnRlZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIHBhcmVudC4kZm9yY2VVcGRhdGUoKTtcbiAgICB9KTtcblxuICAgIGlmIChwcm9wcy5wbGFjZWhvbGRlclRhZyAmJiAocHJvcHMucGxhY2Vob2xkZXIgfHwgcGxhY2Vob2xkZXJTbG90KSkge1xuICAgICAgcmV0dXJuIGgoXG4gICAgICAgIHByb3BzLnBsYWNlaG9sZGVyVGFnLFxuICAgICAgICB7XG4gICAgICAgICAgY2xhc3M6IFsnY2xpZW50LW9ubHktcGxhY2Vob2xkZXInXVxuICAgICAgICB9LFxuICAgICAgICBwcm9wcy5wbGFjZWhvbGRlciB8fCBwbGFjZWhvbGRlclNsb3RcbiAgICAgIClcbiAgICB9XG5cbiAgICAvLyBSZXR1cm4gYSBwbGFjZWhvbGRlciBlbGVtZW50IGZvciBlYWNoIGNoaWxkIGluIHRoZSBkZWZhdWx0IHNsb3RcbiAgICAvLyBPciBpZiBubyBjaGlsZHJlbiByZXR1cm4gYSBzaW5nbGUgcGxhY2Vob2xkZXJcbiAgICByZXR1cm4gZGVmYXVsdFNsb3QubGVuZ3RoID4gMCA/IGRlZmF1bHRTbG90Lm1hcChmdW5jdGlvbiAoKSB7IHJldHVybiBoKGZhbHNlKTsgfSkgOiBoKGZhbHNlKVxuICB9XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IGluZGV4O1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///198\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6);\n/* harmony import */ var core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_keys_js__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);\n/* harmony import */ var core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_symbol_js__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7);\n/* harmony import */ var core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_filter_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9);\n/* harmony import */ var core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_object_get_own_property_descriptor_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10);\n/* harmony import */ var core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es7_object_get_own_property_descriptors_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(1);\n/* harmony import */ var core_js_modules_es6_array_find_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(66);\n/* harmony import */ var core_js_modules_es6_array_find_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_find_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var core_js_modules_es6_array_find_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(158);\n/* harmony import */ var core_js_modules_es6_array_find_index_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es6_array_find_index_js__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var _src_components_VWindow_VWindow_sass__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(368);\n/* harmony import */ var _src_components_VWindow_VWindow_sass__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_src_components_VWindow_VWindow_sass__WEBPACK_IMPORTED_MODULE_8__);\n/* harmony import */ var _directives_touch__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(148);\n/* harmony import */ var _VBtn__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(92);\n/* harmony import */ var _VIcon__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(65);\n/* harmony import */ var _VItemGroup_VItemGroup__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(61);\n\n\n\n\n\n\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n// Styles\n // Directives\n\n // Components\n\n\n\n\n/* @vue/component */\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (_VItemGroup_VItemGroup__WEBPACK_IMPORTED_MODULE_12__[/* BaseItemGroup */ \"a\"].extend({\n name: 'v-window',\n directives: {\n Touch: _directives_touch__WEBPACK_IMPORTED_MODULE_9__[/* default */ \"a\"]\n },\n provide: function provide() {\n return {\n windowGroup: this\n };\n },\n props: {\n activeClass: {\n type: String,\n default: 'v-window-item--active'\n },\n continuous: Boolean,\n mandatory: {\n type: Boolean,\n default: true\n },\n nextIcon: {\n type: [Boolean, String],\n default: '$next'\n },\n prevIcon: {\n type: [Boolean, String],\n default: '$prev'\n },\n reverse: Boolean,\n showArrows: Boolean,\n showArrowsOnHover: Boolean,\n touch: Object,\n touchless: Boolean,\n value: {\n required: false\n },\n vertical: Boolean\n },\n data: function data() {\n return {\n changedByDelimiters: false,\n internalHeight: undefined,\n transitionHeight: undefined,\n transitionCount: 0,\n isBooted: false,\n isReverse: false\n };\n },\n computed: {\n isActive: function isActive() {\n return this.transitionCount > 0;\n },\n classes: function classes() {\n return _objectSpread(_objectSpread({}, _VItemGroup_VItemGroup__WEBPACK_IMPORTED_MODULE_12__[/* BaseItemGroup */ \"a\"].options.computed.classes.call(this)), {}, {\n 'v-window--show-arrows-on-hover': this.showArrowsOnHover\n });\n },\n computedTransition: function computedTransition() {\n if (!this.isBooted) return '';\n var axis = this.vertical ? 'y' : 'x';\n var reverse = this.internalReverse ? !this.isReverse : this.isReverse;\n var direction = reverse ? '-reverse' : '';\n return \"v-window-\".concat(axis).concat(direction, \"-transition\");\n },\n hasActiveItems: function hasActiveItems() {\n return Boolean(this.items.find(function (item) {\n return !item.disabled;\n }));\n },\n hasNext: function hasNext() {\n return this.continuous || this.internalIndex < this.items.length - 1;\n },\n hasPrev: function hasPrev() {\n return this.continuous || this.internalIndex > 0;\n },\n internalIndex: function internalIndex() {\n var _this = this;\n\n return this.items.findIndex(function (item, i) {\n return _this.internalValue === _this.getValue(item, i);\n });\n },\n internalReverse: function internalReverse() {\n return this.$vuetify.rtl ? !this.reverse : this.reverse;\n }\n },\n watch: {\n internalIndex: function internalIndex(val, oldVal) {\n this.isReverse = this.updateReverse(val, oldVal);\n }\n },\n mounted: function mounted() {\n var _this2 = this;\n\n window.requestAnimationFrame(function () {\n return _this2.isBooted = true;\n });\n },\n methods: {\n genDefaultSlot: function genDefaultSlot() {\n return this.$slots.default;\n },\n genContainer: function genContainer() {\n var children = [this.genDefaultSlot()];\n\n if (this.showArrows) {\n children.push(this.genControlIcons());\n }\n\n return this.$createElement('div', {\n staticClass: 'v-window__container',\n class: {\n 'v-window__container--is-active': this.isActive\n },\n style: {\n height: this.internalHeight || this.transitionHeight\n }\n }, children);\n },\n genIcon: function genIcon(direction, icon, _click) {\n var _this3 = this;\n\n var _a, _b, _c;\n\n var on = {\n click: function click(e) {\n e.stopPropagation();\n _this3.changedByDelimiters = true;\n\n _click();\n }\n };\n var attrs = {\n 'aria-label': this.$vuetify.lang.t(\"$vuetify.carousel.\".concat(direction))\n };\n var children = (_c = (_b = (_a = this.$scopedSlots)[direction]) === null || _b === void 0 ? void 0 : _b.call(_a, {\n on: on,\n attrs: attrs\n })) !== null && _c !== void 0 ? _c : [this.$createElement(_VBtn__WEBPACK_IMPORTED_MODULE_10__[/* default */ \"a\"], {\n props: {\n icon: true\n },\n attrs: attrs,\n on: on\n }, [this.$createElement(_VIcon__WEBPACK_IMPORTED_MODULE_11__[/* default */ \"a\"], {\n props: {\n large: true\n }\n }, icon)])];\n return this.$createElement('div', {\n staticClass: \"v-window__\".concat(direction)\n }, children);\n },\n genControlIcons: function genControlIcons() {\n var icons = [];\n var prevIcon = this.$vuetify.rtl ? this.nextIcon : this.prevIcon;\n /* istanbul ignore else */\n\n if (this.hasPrev && prevIcon && typeof prevIcon === 'string') {\n var icon = this.genIcon('prev', prevIcon, this.prev);\n icon && icons.push(icon);\n }\n\n var nextIcon = this.$vuetify.rtl ? this.prevIcon : this.nextIcon;\n /* istanbul ignore else */\n\n if (this.hasNext && nextIcon && typeof nextIcon === 'string') {\n var _icon = this.genIcon('next', nextIcon, this.next);\n\n _icon && icons.push(_icon);\n }\n\n return icons;\n },\n getNextIndex: function getNextIndex(index) {\n var nextIndex = (index + 1) % this.items.length;\n var item = this.items[nextIndex];\n if (item.disabled) return this.getNextIndex(nextIndex);\n return nextIndex;\n },\n getPrevIndex: function getPrevIndex(index) {\n var prevIndex = (index + this.items.length - 1) % this.items.length;\n var item = this.items[prevIndex];\n if (item.disabled) return this.getPrevIndex(prevIndex);\n return prevIndex;\n },\n next: function next() {\n /* istanbul ignore if */\n if (!this.hasActiveItems || !this.hasNext) return;\n var nextIndex = this.getNextIndex(this.internalIndex);\n var item = this.items[nextIndex];\n this.internalValue = this.getValue(item, nextIndex);\n },\n prev: function prev() {\n /* istanbul ignore if */\n if (!this.hasActiveItems || !this.hasPrev) return;\n var lastIndex = this.getPrevIndex(this.internalIndex);\n var item = this.items[lastIndex];\n this.internalValue = this.getValue(item, lastIndex);\n },\n updateReverse: function updateReverse(val, oldVal) {\n var itemsLength = this.items.length;\n var lastIndex = itemsLength - 1;\n if (itemsLength <= 2) return val < oldVal;\n\n if (val === lastIndex && oldVal === 0) {\n return true;\n } else if (val === 0 && oldVal === lastIndex) {\n return false;\n } else {\n return val < oldVal;\n }\n }\n },\n render: function render(h) {\n var _this4 = this;\n\n var data = {\n staticClass: 'v-window',\n class: this.classes,\n directives: []\n };\n\n if (!this.touchless) {\n var value = this.touch || {\n left: function left() {\n _this4.$vuetify.rtl ? _this4.prev() : _this4.next();\n },\n right: function right() {\n _this4.$vuetify.rtl ? _this4.next() : _this4.prev();\n },\n end: function end(e) {\n e.stopPropagation();\n },\n start: function start(e) {\n e.stopPropagation();\n }\n };\n data.directives.push({\n name: 'touch',\n value: value\n });\n }\n\n return h('div', data, [this.genContainer()]);\n }\n}));//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVldpbmRvdy9WV2luZG93LnRzP2Y4YzAiXSwibmFtZXMiOlsiQmFzZUl0ZW1Hcm91cCIsImV4dGVuZCIsIm5hbWUiLCJkaXJlY3RpdmVzIiwiVG91Y2giLCJwcm92aWRlIiwid2luZG93R3JvdXAiLCJwcm9wcyIsImFjdGl2ZUNsYXNzIiwidHlwZSIsIlN0cmluZyIsImRlZmF1bHQiLCJjb250aW51b3VzIiwiQm9vbGVhbiIsIm1hbmRhdG9yeSIsIm5leHRJY29uIiwicHJldkljb24iLCJyZXZlcnNlIiwic2hvd0Fycm93cyIsInNob3dBcnJvd3NPbkhvdmVyIiwidG91Y2giLCJPYmplY3QiLCJ0b3VjaGxlc3MiLCJ2YWx1ZSIsInJlcXVpcmVkIiwidmVydGljYWwiLCJkYXRhIiwiY2hhbmdlZEJ5RGVsaW1pdGVycyIsImludGVybmFsSGVpZ2h0IiwidW5kZWZpbmVkIiwidHJhbnNpdGlvbkhlaWdodCIsInRyYW5zaXRpb25Db3VudCIsImlzQm9vdGVkIiwiaXNSZXZlcnNlIiwiY29tcHV0ZWQiLCJpc0FjdGl2ZSIsImNsYXNzZXMiLCJvcHRpb25zIiwiY2FsbCIsImNvbXB1dGVkVHJhbnNpdGlvbiIsImF4aXMiLCJpbnRlcm5hbFJldmVyc2UiLCJkaXJlY3Rpb24iLCJoYXNBY3RpdmVJdGVtcyIsIml0ZW1zIiwiZmluZCIsIml0ZW0iLCJkaXNhYmxlZCIsImhhc05leHQiLCJpbnRlcm5hbEluZGV4IiwibGVuZ3RoIiwiaGFzUHJldiIsImZpbmRJbmRleCIsImkiLCJpbnRlcm5hbFZhbHVlIiwiZ2V0VmFsdWUiLCIkdnVldGlmeSIsInJ0bCIsIndhdGNoIiwidmFsIiwib2xkVmFsIiwidXBkYXRlUmV2ZXJzZSIsIm1vdW50ZWQiLCJ3aW5kb3ciLCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJtZXRob2RzIiwiZ2VuRGVmYXVsdFNsb3QiLCIkc2xvdHMiLCJnZW5Db250YWluZXIiLCJjaGlsZHJlbiIsInB1c2giLCJnZW5Db250cm9sSWNvbnMiLCIkY3JlYXRlRWxlbWVudCIsInN0YXRpY0NsYXNzIiwiY2xhc3MiLCJzdHlsZSIsImhlaWdodCIsImdlbkljb24iLCJpY29uIiwiY2xpY2siLCJvbiIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJhdHRycyIsImxhbmciLCJ0IiwiJHNjb3BlZFNsb3RzIiwiX2IiLCJfYyIsIlZCdG4iLCJWSWNvbiIsImxhcmdlIiwiaWNvbnMiLCJwcmV2IiwibmV4dCIsImdldE5leHRJbmRleCIsImluZGV4IiwibmV4dEluZGV4IiwiZ2V0UHJldkluZGV4IiwicHJldkluZGV4IiwibGFzdEluZGV4IiwiaXRlbXNMZW5ndGgiLCJyZW5kZXIiLCJoIiwibGVmdCIsInJpZ2h0IiwiZW5kIiwic3RhcnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtDQVFBOztDQUdBOztBQUNBO0FBQ0E7QUFDQTtBQUVBOztBQUNlQSxzSUFBYSxDQUFDQyxNQUFkLENBQXFCO0FBQ2xDQyxNQUFJLEVBQUUsVUFENEI7QUFHbENDLFlBQVUsRUFBRTtBQUFFQyw0RUFBS0E7QUFBUCxHQUhzQjtBQUtsQ0MsU0FMa0MscUJBSzNCO0FBQ0wsV0FBTztBQUNMQyxpQkFBVyxFQUFFO0FBRFIsS0FBUDtBQU5nQztBQVdsQ0MsT0FBSyxFQUFFO0FBQ0xDLGVBQVcsRUFBRTtBQUNYQyxVQUFJLEVBQUVDLE1BREs7QUFFWEMsYUFBTyxFQUFFO0FBRkUsS0FEUjtBQUtMQyxjQUFVLEVBQUVDLE9BTFA7QUFNTEMsYUFBUyxFQUFFO0FBQ1RMLFVBQUksRUFBRUksT0FERztBQUVURixhQUFPLEVBQUU7QUFGQSxLQU5OO0FBVUxJLFlBQVEsRUFBRTtBQUNSTixVQUFJLEVBQUUsQ0FBQ0ksT0FBRCxFQUFVSCxNQUFWLENBREU7QUFFUkMsYUFBTyxFQUFFO0FBRkQsS0FWTDtBQWNMSyxZQUFRLEVBQUU7QUFDUlAsVUFBSSxFQUFFLENBQUNJLE9BQUQsRUFBVUgsTUFB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LEdBQWQsR0FBb0IsT0FBS29DLElBQUwsRUFBcEIsR0FBa0MsT0FBS0MsSUFBTCxFQUFsQztBQUZ3QjtBQUkxQlcsYUFBSyxFQUFFLGlCQUFLO0FBQ1YsaUJBQUtqRCxRQUFMLENBQWNDLEdBQWQsR0FBb0IsT0FBS3FDLElBQUwsRUFBcEIsR0FBa0MsT0FBS0QsSUFBTCxFQUFsQztBQUx3QjtBQU8xQmEsV0FBRyxFQUFHLGNBQUQsRUFBa0I7QUFDckJ6QixXQUFDLENBQUNDLGVBQUY7QUFSd0I7QUFVMUJ5QixhQUFLLEVBQUcsZ0JBQUQsRUFBa0I7QUFDdkIxQixXQUFDLENBQUNDLGVBQUY7QUFDRDtBQVp5QixPQUE1QjtBQWVBeEQsVUFBSSxDQUFDdkIsVUFBTCxDQUFnQm1FLElBQWhCLENBQXFCO0FBQ25CcEUsWUFBSSxFQUFFLE9BRGE7QUFFbkJxQjtBQUZtQixPQUFyQjtBQUlEOztBQUVELFdBQU9nRixDQUFDLENBQUMsS0FBRCxFQUFRN0UsSUFBUixFQUFjLENBQUMsS0FBSzBDLFlBQUwsRUFBRCxDQUFkLENBQVI7QUFDRDtBQTNRaUMsQ0FBckIsQ0FBZiIsImZpbGUiOiIyMDAuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTdHlsZXNcbmltcG9ydCAnLi9WV2luZG93LnNhc3MnXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBWTm9kZSwgVk5vZGVEaXJlY3RpdmUgfSBmcm9tICd2dWUvdHlwZXMvdm5vZGUnXG5pbXBvcnQgeyBQcm9wVHlwZSB9IGZyb20gJ3Z1ZSdcbmltcG9ydCB7IFRvdWNoSGFuZGxlcnMgfSBmcm9tICd2dWV0aWZ5L3R5cGVzJ1xuXG4vLyBEaXJlY3RpdmVzXG5pbXBvcnQgVG91Y2ggZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy90b3VjaCdcblxuLy8gQ29tcG9uZW50c1xuaW1wb3J0IFZCdG4gZnJvbSAnLi4vVkJ0bidcbmltcG9ydCBWSWNvbiBmcm9tICcuLi9WSWNvbidcbmltcG9ydCB7IEJhc2VJdGVtR3JvdXAgfSBmcm9tICcuLi9WSXRlbUdyb3VwL1ZJdGVtR3JvdXAnXG5cbi8qIEB2dWUvY29tcG9uZW50ICovXG5leHBvcnQgZGVmYXVsdCBCYXNlSXRlbUdyb3VwLmV4dGVuZCh7XG4gIG5hbWU6ICd2LXdpbmRvdycsXG5cbiAgZGlyZWN0aXZlczogeyBUb3VjaCB9LFxuXG4gIHByb3ZpZGUgKCk6IG9iamVjdCB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHdpbmRvd0dyb3VwOiB0aGlzLFxuICAgIH1cbiAgfSxcblxuICBwcm9wczoge1xuICAgIGFjdGl2ZUNsYXNzOiB7XG4gICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICBkZWZhdWx0OiAndi13aW5kb3ctaXRlbS0tYWN0aXZlJyxcbiAgICB9LFxuICAgIGNvbnRpbnVvdXM6IEJvb2xlYW4sXG4gICAgbWFuZGF0b3J5OiB7XG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgZGVmYXVsdDogdHJ1ZSxcbiAgICB9LFxuICAgIG5leHRJY29uOiB7XG4gICAgICB0eXBlOiBbQm9vbGVhbiwgU3RyaW5nXSxcbiAgICAgIGRlZmF1bHQ6ICckbmV4dCcsXG4gICAgfSxcbiAgICBwcmV2SWNvbjoge1xuICAgICAgdHlwZTogW0Jvb2xlYW4sIFN0cmluZ10sXG4gICAgICBkZWZhdWx0OiAnJHByZXYnLFxuICAgIH0sXG4gICAgcmV2ZXJzZTogQm9vbGVhbixcbiAgICBzaG93QXJyb3dzOiBCb29sZWFuLFxuICAgIHNob3dBcnJvd3NPbkhvdmVyOiBCb29sZWFuLFxuICAgIHRvdWNoOiBPYmplY3QgYXMgUHJvcFR5cGU8VG91Y2hIYW5kbGVycz4sXG4gICAgdG91Y2hsZXNzOiBCb29sZWFuLFxuICAgIHZhbHVlOiB7XG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgfSxcbiAgICB2ZXJ0aWNhbDogQm9vbGVhbixcbiAgfSxcblxuICBkYXRhICgpIHtcbiAgICByZXR1cm4ge1xuICAgICAgY2hhbmdlZEJ5RGVsaW1pdGVyczogZmFsc2UsXG4gICAgICBpbnRlcm5hbEhlaWdodDogdW5kZWZpbmVkIGFzIHVuZGVmaW5lZCB8IHN0cmluZywgLy8gVGhpcyBjYW4gYmUgZml4ZWQgYnkgY2hpbGQgY2xhc3MuXG4gICAgICB0cmFuc2l0aW9uSGVpZ2h0OiB1bmRlZmluZWQgYXMgdW5kZWZpbmVkIHwgc3RyaW5nLCAvLyBJbnRlcm1lZGlhdGUgaGVpZ2h0IGR1cmluZyB0cmFuc2l0aW9uLlxuICAgICAgdHJhbnNpdGlvbkNvdW50OiAwLCAvLyBOdW1iZXIgb2Ygd2luZG93cyBpbiB0cmFuc2l0aW9uIHN0YXRlLlxuICAgICAgaXNCb290ZWQ6IGZhbHNlLFxuICAgICAgaXNSZXZlcnNlOiBmYWxzZSxcbiAgICB9XG4gIH0sXG5cbiAgY29tcHV0ZWQ6IHtcbiAgICBpc0FjdGl2ZSAoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy50cmFuc2l0aW9uQ291bnQgPiAwXG4gICAgfSxcbiAgICBjbGFzc2VzICgpOiBvYmplY3Qge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uQmFzZUl0ZW1Hcm91cC5vcHRpb25zLmNvbXB1dGVkLmNsYXNzZXMuY2FsbCh0aGlzKSxcbiAgICAgICAgJ3Ytd2luZG93LS1zaG93LWFycm93cy1vbi1ob3Zlcic6IHRoaXMuc2hvd0Fycm93c09uSG92ZXIsXG4gICAgICB9XG4gICAgfSxcbiAgICBjb21wdXRlZFRyYW5zaXRpb24gKCk6IHN0cmluZyB7XG4gICAgICBpZiAoIXRoaXMuaXNCb290ZWQpIHJldHVybiAnJ1xuXG4gICAgICBjb25zdCBheGlzID0gdGhpcy52ZXJ0aWNhbCA/ICd5JyA6ICd4J1xuICAgICAgY29uc3QgcmV2ZXJzZSA9IHRoaXMuaW50ZXJuYWxSZXZlcnNlID8gIXRoaXMuaXNSZXZlcnNlIDogdGhpcy5pc1JldmVyc2VcbiAgICAgIGNvbnN0IGRpcmVjdGlvbiA9IHJldmVyc2UgPyAnLXJldmVyc2UnIDogJydcblxuICAgICAgcmV0dXJuIGB2LXdpbmRvdy0ke2F4aXN9JHtkaXJlY3Rpb259LXRyYW5zaXRpb25gXG4gICAgfSxcbiAgICBoYXNBY3RpdmVJdGVtcyAoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gQm9vbGVhbihcbiAgICAgICAgdGhpcy5pdGVtcy5maW5kKGl0ZW0gPT4gIWl0ZW0uZGlzYWJsZWQpXG4gICAgICApXG4gICAgfSxcbiAgICBoYXNOZXh0ICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbnRpbnVvdXMgfHwgdGhpcy5pbnRlcm5hbEluZGV4IDwgdGhpcy5pdGVtcy5sZW5ndGggLSAxXG4gICAgfSxcbiAgICBoYXNQcmV2ICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbnRpbnVvdXMgfHwgdGhpcy5pbnRlcm5hbEluZGV4ID4gMFxuICAgIH0sXG4gICAgaW50ZXJuYWxJbmRleCAoKTogbnVtYmVyIHtcbiAgICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmRJbmRleCgoaXRlbSwgaSkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbFZhbHVlID09PSB0aGlzLmdldFZhbHVlKGl0ZW0sIGkpXG4gICAgICB9KVxuICAgIH0sXG4gICAgaW50ZXJuYWxSZXZlcnNlICgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLiR2dWV0aWZ5LnJ0bCA/ICF0aGlzLnJldmVyc2UgOiB0aGlzLnJldmVyc2VcbiAgICB9LFxuICB9LFxuXG4gIHdhdGNoOiB7XG4gICAgaW50ZXJuYWxJbmRleCAodmFsLCBvbGRWYWwpIHtcbiAgICAgIHRoaXMuaXNSZXZlcnNlID0gdGhpcy51cGRhdGVSZXZlcnNlKHZhbCwgb2xkVmFsKVxuICAgIH0sXG4gIH0sXG5cbiAgbW91bnRlZCAoKSB7XG4gICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiAodGhpcy5pc0Jvb3RlZCA9IHRydWUpKVxuICB9LFxuXG4gIG1ldGhvZHM6IHtcbiAgICBnZW5EZWZhdWx0U2xvdCAoKSB7XG4gICAgICByZXR1cm4gdGhpcy4kc2xvdHMuZGVmYXVsdFxuICAgIH0sXG4gICAgZ2VuQ29udGFpbmVyICgpOiBWTm9kZSB7XG4gICAgICBjb25zdCBjaGlsZHJlbiA9IFt0aGlzLmdlbkRlZmF1bHRTbG90KCldXG5cbiAgICAgIGlmICh0aGlzLnNob3dBcnJvd3MpIHtcbiAgICAgICAgY2hpbGRyZW4ucHVzaCh0aGlzLmdlbkNvbnRyb2xJY29ucygpKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy4kY3JlYXRlRWxlbWVudCgnZGl2Jywge1xuICAgICAgICBzdGF0aWNDbGFzczogJ3Ytd2luZG93X19jb250YWluZXInLFxuICAgICAgICBjbGFzczoge1xuICAgICAgICAgICd2LXdpbmRvd19fY29udGFpbmVyLS1pcy1hY3RpdmUnOiB0aGlzLmlzQWN0aXZlLFxuICAgICAgICB9LFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIGhlaWdodDogdGhpcy5pbnRlcm5hbEhlaWdodCB8fCB0aGlzLnRyYW5zaXRpb25IZWlnaHQsXG4gICAgICAgIH0sXG4gICAgICB9LCBjaGlsZHJlbilcbiAgICB9LFxuICAgIGdlbkljb24gKFxuICAgICAgZGlyZWN0aW9uOiAncHJldicgfCAnbmV4dCcsXG4gICAgICBpY29uOiBzdHJpbmcsXG4gICAgICBjbGljazogKCkgPT4gdm9pZFxuICAgICkge1xuICAgICAgY29uc3Qgb24gPSB7XG4gICAgICAgIGNsaWNrOiAoZTogRXZlbnQpID0+IHtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICAgICAgdGhpcy5jaGFuZ2VkQnlEZWxpbWl0ZXJzID0gdHJ1ZVxuICAgICAgICAgIGNsaWNrKClcbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICAgIGNvbnN0IGF0dHJzID0ge1xuICAgICAgICAnYXJpYS1sYWJlbCc6IHRoaXMuJHZ1ZXRpZnkubGFuZy50KGAkdnVldGlmeS5jYXJvdXNlbC4ke2RpcmVjdGlvbn1gKSxcbiAgICAgIH1cbiAgICAgIGNvbnN0IGNoaWxkcmVuID0gdGhpcy4kc2NvcGVkU2xvdHNbZGlyZWN0aW9uXT8uKHtcbiAgICAgICAgb24sXG4gICAgICAgIGF0dHJzLFxuICAgICAgfSkgPz8gW3RoaXMuJGNyZWF0ZUVsZW1lbnQoVkJ0biwge1xuICAgICAgICBwcm9wczogeyBpY29uOiB0cnVlIH0sXG4gICAgICAgIGF0dHJzLFxuICAgICAgICBvbixcbiAgICAgIH0sIFtcbiAgICAgICAgdGhpcy4kY3JlYXRlRWxlbWVudChWSWNvbiwge1xuICAgICAgICAgIHByb3BzOiB7IGxhcmdlOiB0cnVlIH0sXG4gICAgICAgIH0sIGljb24pLFxuICAgICAgXSldXG5cbiAgICAgIHJldHVybiB0aGlzLiRjcmVhdGVFbGVtZW50KCdkaXYnLCB7XG4gICAgICAgIHN0YXRpY0NsYXNzOiBgdi13aW5kb3dfXyR7ZGlyZWN0aW9ufWAsXG4gICAgICB9LCBjaGlsZHJlbilcbiAgICB9LFxuICAgIGdlbkNvbnRyb2xJY29ucyAoKSB7XG4gICAgICBjb25zdCBpY29ucyA9IFtdXG5cbiAgICAgIGNvbnN0IHByZXZJY29uID0gdGhpcy4kdnVldGlmeS5ydGxcbiAgICAgICAgPyB0aGlzLm5leHRJY29uXG4gICAgICAgIDogdGhpcy5wcmV2SWNvblxuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmhhc1ByZXYgJiZcbiAgICAgICAgcHJldkljb24gJiZcbiAgICAgICAgdHlwZW9mIHByZXZJY29uID09PSAnc3RyaW5nJ1xuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IGljb24gPSB0aGlzLmdlbkljb24oJ3ByZXYnLCBwcmV2SWNvbiwgdGhpcy5wcmV2KVxuICAgICAgICBpY29uICYmIGljb25zLnB1c2goaWNvbilcbiAgICAgIH1cblxuICAgICAgY29uc3QgbmV4dEljb24gPSB0aGlzLiR2dWV0aWZ5LnJ0bFxuICAgICAgICA/IHRoaXMucHJldkljb25cbiAgICAgICAgOiB0aGlzLm5leHRJY29uXG5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuaGFzTmV4dCAmJlxuICAgICAgICBuZXh0SWNvbiAmJlxuICAgICAgICB0eXBlb2YgbmV4dEljb24gPT09ICdzdHJpbmcnXG4gICAgICApIHtcbiAgICAgICAgY29uc3QgaWNvbiA9IHRoaXMuZ2VuSWNvbignbmV4dCcsIG5leHRJY29uLCB0aGlzLm5leHQpXG4gICAgICAgIGljb24gJiYgaWNvbnMucHVzaChpY29uKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gaWNvbnNcbiAgICB9LFxuICAgIGdldE5leHRJbmRleCAoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICBjb25zdCBuZXh0SW5kZXggPSAoaW5kZXggKyAxKSAlIHRoaXMuaXRlbXMubGVuZ3RoXG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5pdGVtc1tuZXh0SW5kZXhdXG5cbiAgICAgIGlmIChpdGVtLmRpc2FibGVkKSByZXR1cm4gdGhpcy5nZXROZXh0SW5kZXgobmV4dEluZGV4KVxuXG4gICAgICByZXR1cm4gbmV4dEluZGV4XG4gICAgfSxcbiAgICBnZXRQcmV2SW5kZXggKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgY29uc3QgcHJldkluZGV4ID0gKGluZGV4ICsgdGhpcy5pdGVtcy5sZW5ndGggLSAxKSAlIHRoaXMuaXRlbXMubGVuZ3RoXG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5pdGVtc1twcmV2SW5kZXhdXG5cbiAgICAgIGlmIChpdGVtLmRpc2FibGVkKSByZXR1cm4gdGhpcy5nZXRQcmV2SW5kZXgocHJldkluZGV4KVxuXG4gICAgICByZXR1cm4gcHJldkluZGV4XG4gICAgfSxcbiAgICBuZXh0ICgpIHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgICAgaWYgKCF0aGlzLmhhc0FjdGl2ZUl0ZW1zIHx8ICF0aGlzLmhhc05leHQpIHJldHVyblxuXG4gICAgICBjb25zdCBuZXh0SW5kZXggPSB0aGlzLmdldE5leHRJbmRleCh0aGlzLmludGVybmFsSW5kZXgpXG4gICAgICBjb25zdCBpdGVtID0gdGhpcy5pdGVtc1tuZXh0SW5kZXhdXG5cbiAgICAgIHRoaXMuaW50ZXJuYWxWYWx1ZSA9IHRoaXMuZ2V0VmFsdWUoaXRlbSwgbmV4dEluZGV4KVxuICAgIH0sXG4gICAgcHJldiAoKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgIGlmICghdGhpcy5oYXNBY3RpdmVJdGVtcyB8fCAhdGhpcy5oYXNQcmV2KSByZXR1cm5cblxuICAgICAgY29uc3QgbGFzdEluZGV4ID0gdGhpcy5nZXRQcmV2SW5kZXgodGhpcy5pbnRlcm5hbEluZGV4KVxuICAgICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXNbbGFzdEluZGV4XVxuXG4gICAgICB0aGlzLmludGVybmFsVmFsdWUgPSB0aGlzLmdldFZhbHVlKGl0ZW0sIGxhc3RJbmRleClcbiAgICB9LFxuICAgIHVwZGF0ZVJldmVyc2UgKHZhbDogbnVtYmVyLCBvbGRWYWw6IG51bWJlcikge1xuICAgICAgY29uc3QgaXRlbXNMZW5ndGggPSB0aGlzLml0ZW1zLmxlbmd0aFxuICAgICAgY29uc3QgbGFzdEluZGV4ID0gaXRlbXNMZW5ndGggLSAxXG5cbiAgICAgIGlmIChpdGVtc0xlbmd0aCA8PSAyKSByZXR1cm4gdmFsIDwgb2xkVmFsXG5cbiAgICAgIGlmICh2YWwgPT09IGxhc3RJbmRleCAmJiBvbGRWYWwgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAwICYmIG9sZFZhbCA9PT0gbGFzdEluZGV4KSB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHZhbCA8IG9sZFZhbFxuICAgICAgfVxuICAgIH0sXG4gIH0sXG5cbiAgcmVuZGVyIChoKTogVk5vZGUge1xuICAgIGNvbnN0IGRhdGEgPSB7XG4gICAgICBzdGF0aWNDbGFzczogJ3Ytd2luZG93JyxcbiAgICAgIGNsYXNzOiB0aGlzLmNsYXNzZXMsXG4gICAgICBkaXJlY3RpdmVzOiBbXSBhcyBWTm9kZURpcmVjdGl2ZVtdLFxuICAgIH1cblxuICAgIGlmICghdGhpcy50b3VjaGxlc3MpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy50b3VjaCB8fCB7XG4gICAgICAgIGxlZnQ6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLiR2dWV0aWZ5LnJ0bCA/IHRoaXMucHJldigpIDogdGhpcy5uZXh0KClcbiAgICAgICAgfSxcbiAgICAgICAgcmlnaHQ6ICgpID0+IHtcbiAgICAgICAgICB0aGlzLiR2dWV0aWZ5LnJ0bCA/IHRoaXMubmV4dCgpIDogdGhpcy5wcmV2KClcbiAgICAgICAgfSxcbiAgICAgICAgZW5kOiAoZTogVG91Y2hFdmVudCkgPT4ge1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgICAgfSxcbiAgICAgICAgc3RhcnQ6IChlOiBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgICB9LFxuICAgICAgfVxuXG4gICAgICBkYXRhLmRpcmVjdGl2ZXMucHVzaCh7XG4gICAgICAgIG5hbWU6ICd0b3VjaCcsXG4gICAgICAgIHZhbHVlLFxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gaCgnZGl2JywgZGF0YSwgW3RoaXMuZ2VuQ29udGFpbmVyKCldKVxuICB9LFxufSlcbiJdLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///200\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/*!\n * vue-i18n v8.27.1 \n * (c) 2022 kazuya kawaguchi\n * Released under the MIT License.\n */\n/* */\n\n/**\n * constants\n */\n\nvar numberFormatKeys = [\n 'compactDisplay',\n 'currency',\n 'currencyDisplay',\n 'currencySign',\n 'localeMatcher',\n 'notation',\n 'numberingSystem',\n 'signDisplay',\n 'style',\n 'unit',\n 'unitDisplay',\n 'useGrouping',\n 'minimumIntegerDigits',\n 'minimumFractionDigits',\n 'maximumFractionDigits',\n 'minimumSignificantDigits',\n 'maximumSignificantDigits'\n];\n\n/**\n * utilities\n */\n\nfunction warn (msg, err) {\n if (typeof console !== 'undefined') {\n console.warn('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.warn(err.stack);\n }\n }\n}\n\nfunction error (msg, err) {\n if (typeof console !== 'undefined') {\n console.error('[vue-i18n] ' + msg);\n /* istanbul ignore if */\n if (err) {\n console.error(err.stack);\n }\n }\n}\n\nvar isArray = Array.isArray;\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isBoolean (val) {\n return typeof val === 'boolean'\n}\n\nfunction isString (val) {\n return typeof val === 'string'\n}\n\nvar toString = Object.prototype.toString;\nvar OBJECT_STRING = '[object Object]';\nfunction isPlainObject (obj) {\n return toString.call(obj) === OBJECT_STRING\n}\n\nfunction isNull (val) {\n return val === null || val === undefined\n}\n\nfunction isFunction (val) {\n return typeof val === 'function'\n}\n\nfunction parseArgs () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var locale = null;\n var params = null;\n if (args.length === 1) {\n if (isObject(args[0]) || isArray(args[0])) {\n params = args[0];\n } else if (typeof args[0] === 'string') {\n locale = args[0];\n }\n } else if (args.length === 2) {\n if (typeof args[0] === 'string') {\n locale = args[0];\n }\n /* istanbul ignore if */\n if (isObject(args[1]) || isArray(args[1])) {\n params = args[1];\n }\n }\n\n return { locale: locale, params: params }\n}\n\nfunction looseClone (obj) {\n return JSON.parse(JSON.stringify(obj))\n}\n\nfunction remove (arr, item) {\n if (arr.delete(item)) {\n return arr\n }\n}\n\nfunction arrayFrom (arr) {\n var ret = [];\n arr.forEach(function (a) { return ret.push(a); });\n return ret\n}\n\nfunction includes (arr, item) {\n return !!~arr.indexOf(item)\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\nfunction merge (target) {\n var arguments$1 = arguments;\n\n var output = Object(target);\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments$1[i];\n if (source !== undefined && source !== null) {\n var key = (void 0);\n for (key in source) {\n if (hasOwn(source, key)) {\n if (isObject(source[key])) {\n output[key] = merge(output[key], source[key]);\n } else {\n output[key] = source[key];\n }\n }\n }\n }\n }\n return output\n}\n\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = isArray(a);\n var isArrayB = isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Sanitizes html special characters from input strings. For mitigating risk of XSS attacks.\n * @param rawText The raw input from the user that should be escaped.\n */\nfunction escapeHtml(rawText) {\n return rawText\n .replace(//g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n}\n\n/**\n * Escapes html tags and special symbols from all provided params which were returned from parseArgs().params.\n * This method performs an in-place operation on the params object.\n *\n * @param {any} params Parameters as provided from `parseArgs().params`.\n * May be either an array of strings or a string->any map.\n *\n * @returns The manipulated `params` object.\n */\nfunction escapeParams(params) {\n if(params != null) {\n Object.keys(params).forEach(function (key) {\n if(typeof(params[key]) == 'string') {\n params[key] = escapeHtml(params[key]);\n }\n });\n }\n return params\n}\n\n/* */\n\nfunction extend (Vue) {\n if (!Vue.prototype.hasOwnProperty('$i18n')) {\n // $FlowFixMe\n Object.defineProperty(Vue.prototype, '$i18n', {\n get: function get () { return this._i18n }\n });\n }\n\n Vue.prototype.$t = function (key) {\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n\n var i18n = this.$i18n;\n return i18n._t.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this ].concat( values ))\n };\n\n Vue.prototype.$tc = function (key, choice) {\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n\n var i18n = this.$i18n;\n return i18n._tc.apply(i18n, [ key, i18n.locale, i18n._getMessages(), this, choice ].concat( values ))\n };\n\n Vue.prototype.$te = function (key, locale) {\n var i18n = this.$i18n;\n return i18n._te(key, i18n.locale, i18n._getMessages(), locale)\n };\n\n Vue.prototype.$d = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).d.apply(ref, [ value ].concat( args ))\n };\n\n Vue.prototype.$n = function (value) {\n var ref;\n\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n return (ref = this.$i18n).n.apply(ref, [ value ].concat( args ))\n };\n}\n\n/* */\n\n/**\n * Mixin\n * \n * If `bridge` mode, empty mixin is returned,\n * else regulary mixin implementation is returned.\n */\nfunction defineMixin (bridge) {\n if ( bridge === void 0 ) bridge = false;\n\n function mounted () {\n if (this !== this.$root && this.$options.__INTLIFY_META__ && this.$el) {\n this.$el.setAttribute('data-intlify', this.$options.__INTLIFY_META__);\n }\n }\n\n return bridge\n ? { mounted: mounted } // delegate `vue-i18n-bridge` mixin implementation\n : { // regulary \n beforeCreate: function beforeCreate () {\n var options = this.$options;\n options.i18n = options.i18n || ((options.__i18nBridge || options.__i18n) ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n if ((options.__i18nBridge || options.__i18n)) {\n try {\n var localeMessages = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n var _i18n = options.__i18nBridge || options.__i18n;\n _i18n.forEach(function (resource) {\n localeMessages = merge(localeMessages, JSON.parse(resource));\n });\n Object.keys(localeMessages).forEach(function (locale) {\n options.i18n.mergeLocaleMessage(locale, localeMessages[locale]);\n });\n } catch (e) {\n if (false) {}\n }\n }\n this._i18n = options.i18n;\n this._i18nWatcher = this._i18n.watchI18nData();\n } else if (isPlainObject(options.i18n)) {\n var rootI18n = this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n\n ? this.$root.$i18n\n : null;\n // component local i18n\n if (rootI18n) {\n options.i18n.root = this.$root;\n options.i18n.formatter = rootI18n.formatter;\n options.i18n.fallbackLocale = rootI18n.fallbackLocale;\n options.i18n.formatFallbackMessages = rootI18n.formatFallbackMessages;\n options.i18n.silentTranslationWarn = rootI18n.silentTranslationWarn;\n options.i18n.silentFallbackWarn = rootI18n.silentFallbackWarn;\n options.i18n.pluralizationRules = rootI18n.pluralizationRules;\n options.i18n.preserveDirectiveContent = rootI18n.preserveDirectiveContent;\n }\n\n // init locale messages via custom blocks\n if ((options.__i18nBridge || options.__i18n)) {\n try {\n var localeMessages$1 = options.i18n && options.i18n.messages ? options.i18n.messages : {};\n var _i18n$1 = options.__i18nBridge || options.__i18n;\n _i18n$1.forEach(function (resource) {\n localeMessages$1 = merge(localeMessages$1, JSON.parse(resource));\n });\n options.i18n.messages = localeMessages$1;\n } catch (e) {\n if (false) {}\n }\n }\n\n var ref = options.i18n;\n var sharedMessages = ref.sharedMessages;\n if (sharedMessages && isPlainObject(sharedMessages)) {\n options.i18n.messages = merge(options.i18n.messages, sharedMessages);\n }\n\n this._i18n = new VueI18n(options.i18n);\n this._i18nWatcher = this._i18n.watchI18nData();\n\n if (options.i18n.sync === undefined || !!options.i18n.sync) {\n this._localeWatcher = this.$i18n.watchLocale();\n }\n\n if (rootI18n) {\n rootI18n.onComponentInstanceCreated(this._i18n);\n }\n } else {\n if (false) {}\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n // root i18n\n this._i18n = this.$root.$i18n;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n // parent i18n\n this._i18n = options.parent.$i18n;\n }\n },\n\n beforeMount: function beforeMount () {\n var options = this.$options;\n options.i18n = options.i18n || ((options.__i18nBridge || options.__i18n) ? {} : null);\n\n if (options.i18n) {\n if (options.i18n instanceof VueI18n) {\n // init locale messages via custom blocks\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (isPlainObject(options.i18n)) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else {\n if (false) {}\n }\n } else if (this.$root && this.$root.$i18n && this.$root.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n } else if (options.parent && options.parent.$i18n && options.parent.$i18n instanceof VueI18n) {\n this._i18n.subscribeDataChanging(this);\n this._subscribing = true;\n }\n },\n\n mounted: mounted,\n\n beforeDestroy: function beforeDestroy () {\n if (!this._i18n) { return }\n\n var self = this;\n this.$nextTick(function () {\n if (self._subscribing) {\n self._i18n.unsubscribeDataChanging(self);\n delete self._subscribing;\n }\n\n if (self._i18nWatcher) {\n self._i18nWatcher();\n self._i18n.destroyVM();\n delete self._i18nWatcher;\n }\n\n if (self._localeWatcher) {\n self._localeWatcher();\n delete self._localeWatcher;\n }\n });\n }\n }\n}\n\n/* */\n\nvar interpolationComponent = {\n name: 'i18n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n path: {\n type: String,\n required: true\n },\n locale: {\n type: String\n },\n places: {\n type: [Array, Object]\n }\n },\n render: function render (h, ref) {\n var data = ref.data;\n var parent = ref.parent;\n var props = ref.props;\n var slots = ref.slots;\n\n var $i18n = parent.$i18n;\n if (!$i18n) {\n if (false) {}\n return\n }\n\n var path = props.path;\n var locale = props.locale;\n var places = props.places;\n var params = slots();\n var children = $i18n.i(\n path,\n locale,\n onlyHasDefaultPlace(params) || places\n ? useLegacyPlaces(params.default, places)\n : params\n );\n\n var tag = (!!props.tag && props.tag !== true) || props.tag === false ? props.tag : 'span';\n return tag ? h(tag, data, children) : children\n }\n};\n\nfunction onlyHasDefaultPlace (params) {\n var prop;\n for (prop in params) {\n if (prop !== 'default') { return false }\n }\n return Boolean(prop)\n}\n\nfunction useLegacyPlaces (children, places) {\n var params = places ? createParamsFromPlaces(places) : {};\n\n if (!children) { return params }\n\n // Filter empty text nodes\n children = children.filter(function (child) {\n return child.tag || child.text.trim() !== ''\n });\n\n var everyPlace = children.every(vnodeHasPlaceAttribute);\n if (false) {}\n\n return children.reduce(\n everyPlace ? assignChildPlace : assignChildIndex,\n params\n )\n}\n\nfunction createParamsFromPlaces (places) {\n if (false) {}\n\n return Array.isArray(places)\n ? places.reduce(assignChildIndex, {})\n : Object.assign({}, places)\n}\n\nfunction assignChildPlace (params, child) {\n if (child.data && child.data.attrs && child.data.attrs.place) {\n params[child.data.attrs.place] = child;\n }\n return params\n}\n\nfunction assignChildIndex (params, child, index) {\n params[index] = child;\n return params\n}\n\nfunction vnodeHasPlaceAttribute (vnode) {\n return Boolean(vnode.data && vnode.data.attrs && vnode.data.attrs.place)\n}\n\n/* */\n\nvar numberComponent = {\n name: 'i18n-n',\n functional: true,\n props: {\n tag: {\n type: [String, Boolean, Object],\n default: 'span'\n },\n value: {\n type: Number,\n required: true\n },\n format: {\n type: [String, Object]\n },\n locale: {\n type: String\n }\n },\n render: function render (h, ref) {\n var props = ref.props;\n var parent = ref.parent;\n var data = ref.data;\n\n var i18n = parent.$i18n;\n\n if (!i18n) {\n if (false) {}\n return null\n }\n\n var key = null;\n var options = null;\n\n if (isString(props.format)) {\n key = props.format;\n } else if (isObject(props.format)) {\n if (props.format.key) {\n key = props.format.key;\n }\n\n // Filter out number format options only\n options = Object.keys(props.format).reduce(function (acc, prop) {\n var obj;\n\n if (includes(numberFormatKeys, prop)) {\n return Object.assign({}, acc, ( obj = {}, obj[prop] = props.format[prop], obj ))\n }\n return acc\n }, null);\n }\n\n var locale = props.locale || i18n.locale;\n var parts = i18n._ntp(props.value, locale, key, options);\n\n var values = parts.map(function (part, index) {\n var obj;\n\n var slot = data.scopedSlots && data.scopedSlots[part.type];\n return slot ? slot(( obj = {}, obj[part.type] = part.value, obj.index = index, obj.parts = parts, obj )) : part.value\n });\n\n var tag = (!!props.tag && props.tag !== true) || props.tag === false ? props.tag : 'span';\n return tag\n ? h(tag, {\n attrs: data.attrs,\n 'class': data['class'],\n staticClass: data.staticClass\n }, values)\n : values\n }\n};\n\n/* */\n\nfunction bind (el, binding, vnode) {\n if (!assert(el, vnode)) { return }\n\n t(el, binding, vnode);\n}\n\nfunction update (el, binding, vnode, oldVNode) {\n if (!assert(el, vnode)) { return }\n\n var i18n = vnode.context.$i18n;\n if (localeEqual(el, vnode) &&\n (looseEqual(binding.value, binding.oldValue) &&\n looseEqual(el._localeMessage, i18n.getLocaleMessage(i18n.locale)))) { return }\n\n t(el, binding, vnode);\n}\n\nfunction unbind (el, binding, vnode, oldVNode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return\n }\n\n var i18n = vnode.context.$i18n || {};\n if (!binding.modifiers.preserve && !i18n.preserveDirectiveContent) {\n el.textContent = '';\n }\n el._vt = undefined;\n delete el['_vt'];\n el._locale = undefined;\n delete el['_locale'];\n el._localeMessage = undefined;\n delete el['_localeMessage'];\n}\n\nfunction assert (el, vnode) {\n var vm = vnode.context;\n if (!vm) {\n warn('Vue instance does not exists in VNode context');\n return false\n }\n\n if (!vm.$i18n) {\n warn('VueI18n instance does not exists in Vue instance');\n return false\n }\n\n return true\n}\n\nfunction localeEqual (el, vnode) {\n var vm = vnode.context;\n return el._locale === vm.$i18n.locale\n}\n\nfunction t (el, binding, vnode) {\n var ref$1, ref$2;\n\n var value = binding.value;\n\n var ref = parseValue(value);\n var path = ref.path;\n var locale = ref.locale;\n var args = ref.args;\n var choice = ref.choice;\n if (!path && !locale && !args) {\n warn('value type not supported');\n return\n }\n\n if (!path) {\n warn('`path` is required in v-t directive');\n return\n }\n\n var vm = vnode.context;\n if (choice != null) {\n el._vt = el.textContent = (ref$1 = vm.$i18n).tc.apply(ref$1, [ path, choice ].concat( makeParams(locale, args) ));\n } else {\n el._vt = el.textContent = (ref$2 = vm.$i18n).t.apply(ref$2, [ path ].concat( makeParams(locale, args) ));\n }\n el._locale = vm.$i18n.locale;\n el._localeMessage = vm.$i18n.getLocaleMessage(vm.$i18n.locale);\n}\n\nfunction parseValue (value) {\n var path;\n var locale;\n var args;\n var choice;\n\n if (isString(value)) {\n path = value;\n } else if (isPlainObject(value)) {\n path = value.path;\n locale = value.locale;\n args = value.args;\n choice = value.choice;\n }\n\n return { path: path, locale: locale, args: args, choice: choice }\n}\n\nfunction makeParams (locale, args) {\n var params = [];\n\n locale && params.push(locale);\n if (args && (Array.isArray(args) || isPlainObject(args))) {\n params.push(args);\n }\n\n return params\n}\n\nvar Vue;\n\nfunction install (_Vue, options) {\n if ( options === void 0 ) options = { bridge: false };\n\n /* istanbul ignore if */\n if (false) {}\n install.installed = true;\n\n Vue = _Vue;\n\n var version = (Vue.version && Number(Vue.version.split('.')[0])) || -1;\n /* istanbul ignore if */\n if (false) {}\n\n extend(Vue);\n Vue.mixin(defineMixin(options.bridge));\n Vue.directive('t', { bind: bind, update: update, unbind: unbind });\n Vue.component(interpolationComponent.name, interpolationComponent);\n Vue.component(numberComponent.name, numberComponent);\n\n // use simple mergeStrategies to prevent i18n instance lose '__proto__'\n var strats = Vue.config.optionMergeStrategies;\n strats.i18n = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n };\n}\n\n/* */\n\nvar BaseFormatter = function BaseFormatter () {\n this._caches = Object.create(null);\n};\n\nBaseFormatter.prototype.interpolate = function interpolate (message, values) {\n if (!values) {\n return [message]\n }\n var tokens = this._caches[message];\n if (!tokens) {\n tokens = parse(message);\n this._caches[message] = tokens;\n }\n return compile(tokens, values)\n};\n\n\n\nvar RE_TOKEN_LIST_VALUE = /^(?:\\d)+/;\nvar RE_TOKEN_NAMED_VALUE = /^(?:\\w)+/;\n\nfunction parse (format) {\n var tokens = [];\n var position = 0;\n\n var text = '';\n while (position < format.length) {\n var char = format[position++];\n if (char === '{') {\n if (text) {\n tokens.push({ type: 'text', value: text });\n }\n\n text = '';\n var sub = '';\n char = format[position++];\n while (char !== undefined && char !== '}') {\n sub += char;\n char = format[position++];\n }\n var isClosed = char === '}';\n\n var type = RE_TOKEN_LIST_VALUE.test(sub)\n ? 'list'\n : isClosed && RE_TOKEN_NAMED_VALUE.test(sub)\n ? 'named'\n : 'unknown';\n tokens.push({ value: sub, type: type });\n } else if (char === '%') {\n // when found rails i18n syntax, skip text capture\n if (format[(position)] !== '{') {\n text += char;\n }\n } else {\n text += char;\n }\n }\n\n text && tokens.push({ type: 'text', value: text });\n\n return tokens\n}\n\nfunction compile (tokens, values) {\n var compiled = [];\n var index = 0;\n\n var mode = Array.isArray(values)\n ? 'list'\n : isObject(values)\n ? 'named'\n : 'unknown';\n if (mode === 'unknown') { return compiled }\n\n while (index < tokens.length) {\n var token = tokens[index];\n switch (token.type) {\n case 'text':\n compiled.push(token.value);\n break\n case 'list':\n compiled.push(values[parseInt(token.value, 10)]);\n break\n case 'named':\n if (mode === 'named') {\n compiled.push((values)[token.value]);\n } else {\n if (false) {}\n }\n break\n case 'unknown':\n if (false) {}\n break\n }\n index++;\n }\n\n return compiled\n}\n\n/* */\n\n/**\n * Path parser\n * - Inspired:\n * Vue.js Path parser\n */\n\n// actions\nvar APPEND = 0;\nvar PUSH = 1;\nvar INC_SUB_PATH_DEPTH = 2;\nvar PUSH_SUB_PATH = 3;\n\n// states\nvar BEFORE_PATH = 0;\nvar IN_PATH = 1;\nvar BEFORE_IDENT = 2;\nvar IN_IDENT = 3;\nvar IN_SUB_PATH = 4;\nvar IN_SINGLE_QUOTE = 5;\nvar IN_DOUBLE_QUOTE = 6;\nvar AFTER_PATH = 7;\nvar ERROR = 8;\n\nvar pathStateMachine = [];\n\npathStateMachine[BEFORE_PATH] = {\n 'ws': [BEFORE_PATH],\n 'ident': [IN_IDENT, APPEND],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[IN_PATH] = {\n 'ws': [IN_PATH],\n '.': [BEFORE_IDENT],\n '[': [IN_SUB_PATH],\n 'eof': [AFTER_PATH]\n};\n\npathStateMachine[BEFORE_IDENT] = {\n 'ws': [BEFORE_IDENT],\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND]\n};\n\npathStateMachine[IN_IDENT] = {\n 'ident': [IN_IDENT, APPEND],\n '0': [IN_IDENT, APPEND],\n 'number': [IN_IDENT, APPEND],\n 'ws': [IN_PATH, PUSH],\n '.': [BEFORE_IDENT, PUSH],\n '[': [IN_SUB_PATH, PUSH],\n 'eof': [AFTER_PATH, PUSH]\n};\n\npathStateMachine[IN_SUB_PATH] = {\n \"'\": [IN_SINGLE_QUOTE, APPEND],\n '\"': [IN_DOUBLE_QUOTE, APPEND],\n '[': [IN_SUB_PATH, INC_SUB_PATH_DEPTH],\n ']': [IN_PATH, PUSH_SUB_PATH],\n 'eof': ERROR,\n 'else': [IN_SUB_PATH, APPEND]\n};\n\npathStateMachine[IN_SINGLE_QUOTE] = {\n \"'\": [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_SINGLE_QUOTE, APPEND]\n};\n\npathStateMachine[IN_DOUBLE_QUOTE] = {\n '\"': [IN_SUB_PATH, APPEND],\n 'eof': ERROR,\n 'else': [IN_DOUBLE_QUOTE, APPEND]\n};\n\n/**\n * Check if an expression is a literal value.\n */\n\nvar literalValueRE = /^\\s?(?:true|false|-?[\\d.]+|'[^']*'|\"[^\"]*\")\\s?$/;\nfunction isLiteral (exp) {\n return literalValueRE.test(exp)\n}\n\n/**\n * Strip quotes from a string\n */\n\nfunction stripQuotes (str) {\n var a = str.charCodeAt(0);\n var b = str.charCodeAt(str.length - 1);\n return a === b && (a === 0x22 || a === 0x27)\n ? str.slice(1, -1)\n : str\n}\n\n/**\n * Determine the type of a character in a keypath.\n */\n\nfunction getPathCharType (ch) {\n if (ch === undefined || ch === null) { return 'eof' }\n\n var code = ch.charCodeAt(0);\n\n switch (code) {\n case 0x5B: // [\n case 0x5D: // ]\n case 0x2E: // .\n case 0x22: // \"\n case 0x27: // '\n return ch\n\n case 0x5F: // _\n case 0x24: // $\n case 0x2D: // -\n return 'ident'\n\n case 0x09: // Tab\n case 0x0A: // Newline\n case 0x0D: // Return\n case 0xA0: // No-break space\n case 0xFEFF: // Byte Order Mark\n case 0x2028: // Line Separator\n case 0x2029: // Paragraph Separator\n return 'ws'\n }\n\n return 'ident'\n}\n\n/**\n * Format a subPath, return its plain form if it is\n * a literal string or number. Otherwise prepend the\n * dynamic indicator (*).\n */\n\nfunction formatSubPath (path) {\n var trimmed = path.trim();\n // invalid leading 0\n if (path.charAt(0) === '0' && isNaN(path)) { return false }\n\n return isLiteral(trimmed) ? stripQuotes(trimmed) : '*' + trimmed\n}\n\n/**\n * Parse a string path into an array of segments\n */\n\nfunction parse$1 (path) {\n var keys = [];\n var index = -1;\n var mode = BEFORE_PATH;\n var subPathDepth = 0;\n var c;\n var key;\n var newChar;\n var type;\n var transition;\n var action;\n var typeMap;\n var actions = [];\n\n actions[PUSH] = function () {\n if (key !== undefined) {\n keys.push(key);\n key = undefined;\n }\n };\n\n actions[APPEND] = function () {\n if (key === undefined) {\n key = newChar;\n } else {\n key += newChar;\n }\n };\n\n actions[INC_SUB_PATH_DEPTH] = function () {\n actions[APPEND]();\n subPathDepth++;\n };\n\n actions[PUSH_SUB_PATH] = function () {\n if (subPathDepth > 0) {\n subPathDepth--;\n mode = IN_SUB_PATH;\n actions[APPEND]();\n } else {\n subPathDepth = 0;\n if (key === undefined) { return false }\n key = formatSubPath(key);\n if (key === false) {\n return false\n } else {\n actions[PUSH]();\n }\n }\n };\n\n function maybeUnescapeQuote () {\n var nextChar = path[index + 1];\n if ((mode === IN_SINGLE_QUOTE && nextChar === \"'\") ||\n (mode === IN_DOUBLE_QUOTE && nextChar === '\"')) {\n index++;\n newChar = '\\\\' + nextChar;\n actions[APPEND]();\n return true\n }\n }\n\n while (mode !== null) {\n index++;\n c = path[index];\n\n if (c === '\\\\' && maybeUnescapeQuote()) {\n continue\n }\n\n type = getPathCharType(c);\n typeMap = pathStateMachine[mode];\n transition = typeMap[type] || typeMap['else'] || ERROR;\n\n if (transition === ERROR) {\n return // parse error\n }\n\n mode = transition[0];\n action = actions[transition[1]];\n if (action) {\n newChar = transition[2];\n newChar = newChar === undefined\n ? c\n : newChar;\n if (action() === false) {\n return\n }\n }\n\n if (mode === AFTER_PATH) {\n return keys\n }\n }\n}\n\n\n\n\n\nvar I18nPath = function I18nPath () {\n this._cache = Object.create(null);\n};\n\n/**\n * External parse that check for a cache hit first\n */\nI18nPath.prototype.parsePath = function parsePath (path) {\n var hit = this._cache[path];\n if (!hit) {\n hit = parse$1(path);\n if (hit) {\n this._cache[path] = hit;\n }\n }\n return hit || []\n};\n\n/**\n * Get path value from path string\n */\nI18nPath.prototype.getPathValue = function getPathValue (obj, path) {\n if (!isObject(obj)) { return null }\n\n var paths = this.parsePath(path);\n if (paths.length === 0) {\n return null\n } else {\n var length = paths.length;\n var last = obj;\n var i = 0;\n while (i < length) {\n var value = last[paths[i]];\n if (value === undefined || value === null) {\n return null\n }\n last = value;\n i++;\n }\n\n return last\n }\n};\n\n/* */\n\n\n\nvar htmlTagMatcher = /<\\/?[\\w\\s=\"/.':;#-\\/]+>/;\nvar linkKeyMatcher = /(?:@(?:\\.[a-z]+)?:(?:[\\w\\-_|./]+|\\([\\w\\-_:|./]+\\)))/g;\nvar linkKeyPrefixMatcher = /^@(?:\\.([a-z]+))?:/;\nvar bracketsMatcher = /[()]/g;\nvar defaultModifiers = {\n 'upper': function (str) { return str.toLocaleUpperCase(); },\n 'lower': function (str) { return str.toLocaleLowerCase(); },\n 'capitalize': function (str) { return (\"\" + (str.charAt(0).toLocaleUpperCase()) + (str.substr(1))); }\n};\n\nvar defaultFormatter = new BaseFormatter();\n\nvar VueI18n = function VueI18n (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #290\n /* istanbul ignore if */\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n var locale = options.locale || 'en-US';\n var fallbackLocale = options.fallbackLocale === false\n ? false\n : options.fallbackLocale || 'en-US';\n var messages = options.messages || {};\n var dateTimeFormats = options.dateTimeFormats || options.datetimeFormats || {};\n var numberFormats = options.numberFormats || {};\n\n this._vm = null;\n this._formatter = options.formatter || defaultFormatter;\n this._modifiers = options.modifiers || {};\n this._missing = options.missing || null;\n this._root = options.root || null;\n this._sync = options.sync === undefined ? true : !!options.sync;\n this._fallbackRoot = options.fallbackRoot === undefined\n ? true\n : !!options.fallbackRoot;\n this._fallbackRootWithEmptyString = options.fallbackRootWithEmptyString === undefined\n ? true\n : !!options.fallbackRootWithEmptyString;\n this._formatFallbackMessages = options.formatFallbackMessages === undefined\n ? false\n : !!options.formatFallbackMessages;\n this._silentTranslationWarn = options.silentTranslationWarn === undefined\n ? false\n : options.silentTranslationWarn;\n this._silentFallbackWarn = options.silentFallbackWarn === undefined\n ? false\n : !!options.silentFallbackWarn;\n this._dateTimeFormatters = {};\n this._numberFormatters = {};\n this._path = new I18nPath();\n this._dataListeners = new Set();\n this._componentInstanceCreatedListener = options.componentInstanceCreatedListener || null;\n this._preserveDirectiveContent = options.preserveDirectiveContent === undefined\n ? false\n : !!options.preserveDirectiveContent;\n this.pluralizationRules = options.pluralizationRules || {};\n this._warnHtmlInMessage = options.warnHtmlInMessage || 'off';\n this._postTranslation = options.postTranslation || null;\n this._escapeParameterHtml = options.escapeParameterHtml || false;\n\n if ('__VUE_I18N_BRIDGE__' in options) {\n this.__VUE_I18N_BRIDGE__ = options.__VUE_I18N_BRIDGE__;\n }\n\n /**\n * @param choice {number} a choice index given by the input to $tc: `$tc('path.to.rule', choiceIndex)`\n * @param choicesLength {number} an overall amount of available choices\n * @returns a final choice index\n */\n this.getChoiceIndex = function (choice, choicesLength) {\n var thisPrototype = Object.getPrototypeOf(this$1);\n if (thisPrototype && thisPrototype.getChoiceIndex) {\n var prototypeGetChoiceIndex = (thisPrototype.getChoiceIndex);\n return (prototypeGetChoiceIndex).call(this$1, choice, choicesLength)\n }\n\n // Default (old) getChoiceIndex implementation - english-compatible\n var defaultImpl = function (_choice, _choicesLength) {\n _choice = Math.abs(_choice);\n\n if (_choicesLength === 2) {\n return _choice\n ? _choice > 1\n ? 1\n : 0\n : 1\n }\n\n return _choice ? Math.min(_choice, 2) : 0\n };\n\n if (this$1.locale in this$1.pluralizationRules) {\n return this$1.pluralizationRules[this$1.locale].apply(this$1, [choice, choicesLength])\n } else {\n return defaultImpl(choice, choicesLength)\n }\n };\n\n\n this._exist = function (message, key) {\n if (!message || !key) { return false }\n if (!isNull(this$1._path.getPathValue(message, key))) { return true }\n // fallback for flat key\n if (message[key]) { return true }\n return false\n };\n\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n\n this._initVM({\n locale: locale,\n fallbackLocale: fallbackLocale,\n messages: messages,\n dateTimeFormats: dateTimeFormats,\n numberFormats: numberFormats\n });\n};\n\nvar prototypeAccessors = { vm: { configurable: true },messages: { configurable: true },dateTimeFormats: { configurable: true },numberFormats: { configurable: true },availableLocales: { configurable: true },locale: { configurable: true },fallbackLocale: { configurable: true },formatFallbackMessages: { configurable: true },missing: { configurable: true },formatter: { configurable: true },silentTranslationWarn: { configurable: true },silentFallbackWarn: { configurable: true },preserveDirectiveContent: { configurable: true },warnHtmlInMessage: { configurable: true },postTranslation: { configurable: true },sync: { configurable: true } };\n\nVueI18n.prototype._checkLocaleMessage = function _checkLocaleMessage (locale, level, message) {\n var paths = [];\n\n var fn = function (level, locale, message, paths) {\n if (isPlainObject(message)) {\n Object.keys(message).forEach(function (key) {\n var val = message[key];\n if (isPlainObject(val)) {\n paths.push(key);\n paths.push('.');\n fn(level, locale, val, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push(key);\n fn(level, locale, val, paths);\n paths.pop();\n }\n });\n } else if (isArray(message)) {\n message.forEach(function (item, index) {\n if (isPlainObject(item)) {\n paths.push((\"[\" + index + \"]\"));\n paths.push('.');\n fn(level, locale, item, paths);\n paths.pop();\n paths.pop();\n } else {\n paths.push((\"[\" + index + \"]\"));\n fn(level, locale, item, paths);\n paths.pop();\n }\n });\n } else if (isString(message)) {\n var ret = htmlTagMatcher.test(message);\n if (ret) {\n var msg = \"Detected HTML in message '\" + message + \"' of keypath '\" + (paths.join('')) + \"' at '\" + locale + \"'. Consider component interpolation with '' to avoid XSS. See https://bit.ly/2ZqJzkp\";\n if (level === 'warn') {\n warn(msg);\n } else if (level === 'error') {\n error(msg);\n }\n }\n }\n };\n\n fn(level, locale, message, paths);\n};\n\nVueI18n.prototype._initVM = function _initVM (data) {\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n this._vm = new Vue({ data: data, __VUE18N__INSTANCE__: true });\n Vue.config.silent = silent;\n};\n\nVueI18n.prototype.destroyVM = function destroyVM () {\n this._vm.$destroy();\n};\n\nVueI18n.prototype.subscribeDataChanging = function subscribeDataChanging (vm) {\n this._dataListeners.add(vm);\n};\n\nVueI18n.prototype.unsubscribeDataChanging = function unsubscribeDataChanging (vm) {\n remove(this._dataListeners, vm);\n};\n\nVueI18n.prototype.watchI18nData = function watchI18nData () {\n var this$1 = this;\n return this._vm.$watch('$data', function () {\n var listeners = arrayFrom(this$1._dataListeners);\n var i = listeners.length;\n while(i--) {\n Vue.nextTick(function () {\n listeners[i] && listeners[i].$forceUpdate();\n });\n }\n }, { deep: true })\n};\n\nVueI18n.prototype.watchLocale = function watchLocale (composer) {\n if (!composer) {\n /* istanbul ignore if */\n if (!this._sync || !this._root) { return null }\n var target = this._vm;\n return this._root.$i18n.vm.$watch('locale', function (val) {\n target.$set(target, 'locale', val);\n target.$forceUpdate();\n }, { immediate: true })\n } else {\n // deal with vue-i18n-bridge\n if (!this.__VUE_I18N_BRIDGE__) { return null }\n var self = this;\n var target$1 = this._vm;\n return this.vm.$watch('locale', function (val) {\n target$1.$set(target$1, 'locale', val);\n if (self.__VUE_I18N_BRIDGE__ && composer) {\n composer.locale.value = val;\n }\n target$1.$forceUpdate();\n }, { immediate: true })\n }\n};\n\nVueI18n.prototype.onComponentInstanceCreated = function onComponentInstanceCreated (newI18n) {\n if (this._componentInstanceCreatedListener) {\n this._componentInstanceCreatedListener(newI18n, this);\n }\n};\n\nprototypeAccessors.vm.get = function () { return this._vm };\n\nprototypeAccessors.messages.get = function () { return looseClone(this._getMessages()) };\nprototypeAccessors.dateTimeFormats.get = function () { return looseClone(this._getDateTimeFormats()) };\nprototypeAccessors.numberFormats.get = function () { return looseClone(this._getNumberFormats()) };\nprototypeAccessors.availableLocales.get = function () { return Object.keys(this.messages).sort() };\n\nprototypeAccessors.locale.get = function () { return this._vm.locale };\nprototypeAccessors.locale.set = function (locale) {\n this._vm.$set(this._vm, 'locale', locale);\n};\n\nprototypeAccessors.fallbackLocale.get = function () { return this._vm.fallbackLocale };\nprototypeAccessors.fallbackLocale.set = function (locale) {\n this._localeChainCache = {};\n this._vm.$set(this._vm, 'fallbackLocale', locale);\n};\n\nprototypeAccessors.formatFallbackMessages.get = function () { return this._formatFallbackMessages };\nprototypeAccessors.formatFallbackMessages.set = function (fallback) { this._formatFallbackMessages = fallback; };\n\nprototypeAccessors.missing.get = function () { return this._missing };\nprototypeAccessors.missing.set = function (handler) { this._missing = handler; };\n\nprototypeAccessors.formatter.get = function () { return this._formatter };\nprototypeAccessors.formatter.set = function (formatter) { this._formatter = formatter; };\n\nprototypeAccessors.silentTranslationWarn.get = function () { return this._silentTranslationWarn };\nprototypeAccessors.silentTranslationWarn.set = function (silent) { this._silentTranslationWarn = silent; };\n\nprototypeAccessors.silentFallbackWarn.get = function () { return this._silentFallbackWarn };\nprototypeAccessors.silentFallbackWarn.set = function (silent) { this._silentFallbackWarn = silent; };\n\nprototypeAccessors.preserveDirectiveContent.get = function () { return this._preserveDirectiveContent };\nprototypeAccessors.preserveDirectiveContent.set = function (preserve) { this._preserveDirectiveContent = preserve; };\n\nprototypeAccessors.warnHtmlInMessage.get = function () { return this._warnHtmlInMessage };\nprototypeAccessors.warnHtmlInMessage.set = function (level) {\n var this$1 = this;\n\n var orgLevel = this._warnHtmlInMessage;\n this._warnHtmlInMessage = level;\n if (orgLevel !== level && (level === 'warn' || level === 'error')) {\n var messages = this._getMessages();\n Object.keys(messages).forEach(function (locale) {\n this$1._checkLocaleMessage(locale, this$1._warnHtmlInMessage, messages[locale]);\n });\n }\n};\n\nprototypeAccessors.postTranslation.get = function () { return this._postTranslation };\nprototypeAccessors.postTranslation.set = function (handler) { this._postTranslation = handler; };\n\nprototypeAccessors.sync.get = function () { return this._sync };\nprototypeAccessors.sync.set = function (val) { this._sync = val; };\n\nVueI18n.prototype._getMessages = function _getMessages () { return this._vm.messages };\nVueI18n.prototype._getDateTimeFormats = function _getDateTimeFormats () { return this._vm.dateTimeFormats };\nVueI18n.prototype._getNumberFormats = function _getNumberFormats () { return this._vm.numberFormats };\n\nVueI18n.prototype._warnDefault = function _warnDefault (locale, key, result, vm, values, interpolateMode) {\n if (!isNull(result)) { return result }\n if (this._missing) {\n var missingRet = this._missing.apply(null, [locale, key, vm, values]);\n if (isString(missingRet)) {\n return missingRet\n }\n } else {\n if (false) {}\n }\n\n if (this._formatFallbackMessages) {\n var parsedArgs = parseArgs.apply(void 0, values);\n return this._render(key, interpolateMode, parsedArgs.params, key)\n } else {\n return key\n }\n};\n\nVueI18n.prototype._isFallbackRoot = function _isFallbackRoot (val) {\n return (this._fallbackRootWithEmptyString? !val : isNull(val)) && !isNull(this._root) && this._fallbackRoot\n};\n\nVueI18n.prototype._isSilentFallbackWarn = function _isSilentFallbackWarn (key) {\n return this._silentFallbackWarn instanceof RegExp\n ? this._silentFallbackWarn.test(key)\n : this._silentFallbackWarn\n};\n\nVueI18n.prototype._isSilentFallback = function _isSilentFallback (locale, key) {\n return this._isSilentFallbackWarn(key) && (this._isFallbackRoot() || locale !== this.fallbackLocale)\n};\n\nVueI18n.prototype._isSilentTranslationWarn = function _isSilentTranslationWarn (key) {\n return this._silentTranslationWarn instanceof RegExp\n ? this._silentTranslationWarn.test(key)\n : this._silentTranslationWarn\n};\n\nVueI18n.prototype._interpolate = function _interpolate (\n locale,\n message,\n key,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n if (!message) { return null }\n\n var pathRet = this._path.getPathValue(message, key);\n if (isArray(pathRet) || isPlainObject(pathRet)) { return pathRet }\n\n var ret;\n if (isNull(pathRet)) {\n /* istanbul ignore else */\n if (isPlainObject(message)) {\n ret = message[key];\n if (!(isString(ret) || isFunction(ret))) {\n if (false) {}\n return null\n }\n } else {\n return null\n }\n } else {\n /* istanbul ignore else */\n if (isString(pathRet) || isFunction(pathRet)) {\n ret = pathRet;\n } else {\n if (false) {}\n return null\n }\n }\n\n // Check for the existence of links within the translated string\n if (isString(ret) && (ret.indexOf('@:') >= 0 || ret.indexOf('@.') >= 0)) {\n ret = this._link(locale, message, ret, host, 'raw', values, visitedLinkStack);\n }\n\n return this._render(ret, interpolateMode, values, key)\n};\n\nVueI18n.prototype._link = function _link (\n locale,\n message,\n str,\n host,\n interpolateMode,\n values,\n visitedLinkStack\n) {\n var ret = str;\n\n // Match all the links within the local\n // We are going to replace each of\n // them with its translation\n var matches = ret.match(linkKeyMatcher);\n\n // eslint-disable-next-line no-autofix/prefer-const\n for (var idx in matches) {\n // ie compatible: filter custom array\n // prototype method\n if (!matches.hasOwnProperty(idx)) {\n continue\n }\n var link = matches[idx];\n var linkKeyPrefixMatches = link.match(linkKeyPrefixMatcher);\n var linkPrefix = linkKeyPrefixMatches[0];\n var formatterName = linkKeyPrefixMatches[1];\n\n // Remove the leading @:, @.case: and the brackets\n var linkPlaceholder = link.replace(linkPrefix, '').replace(bracketsMatcher, '');\n\n if (includes(visitedLinkStack, linkPlaceholder)) {\n if (false) {}\n return ret\n }\n visitedLinkStack.push(linkPlaceholder);\n\n // Translate the link\n var translated = this._interpolate(\n locale, message, linkPlaceholder, host,\n interpolateMode === 'raw' ? 'string' : interpolateMode,\n interpolateMode === 'raw' ? undefined : values,\n visitedLinkStack\n );\n\n if (this._isFallbackRoot(translated)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n var root = this._root.$i18n;\n translated = root._translate(\n root._getMessages(), root.locale, root.fallbackLocale,\n linkPlaceholder, host, interpolateMode, values\n );\n }\n translated = this._warnDefault(\n locale, linkPlaceholder, translated, host,\n isArray(values) ? values : [values],\n interpolateMode\n );\n\n if (this._modifiers.hasOwnProperty(formatterName)) {\n translated = this._modifiers[formatterName](translated);\n } else if (defaultModifiers.hasOwnProperty(formatterName)) {\n translated = defaultModifiers[formatterName](translated);\n }\n\n visitedLinkStack.pop();\n\n // Replace the link with the translated\n ret = !translated ? ret : ret.replace(link, translated);\n }\n\n return ret\n};\n\nVueI18n.prototype._createMessageContext = function _createMessageContext (values, formatter, path, interpolateMode) {\n var this$1 = this;\n\n var _list = isArray(values) ? values : [];\n var _named = isObject(values) ? values : {};\n var list = function (index) { return _list[index]; };\n var named = function (key) { return _named[key]; };\n var messages = this._getMessages();\n var locale = this.locale;\n\n return {\n list: list,\n named: named,\n values: values,\n formatter: formatter,\n path: path,\n messages: messages,\n locale: locale,\n linked: function (linkedKey) { return this$1._interpolate(locale, messages[locale] || {}, linkedKey, null, interpolateMode, undefined, [linkedKey]); }\n }\n};\n\nVueI18n.prototype._render = function _render (message, interpolateMode, values, path) {\n if (isFunction(message)) {\n return message(\n this._createMessageContext(values, this._formatter || defaultFormatter, path, interpolateMode)\n )\n }\n\n var ret = this._formatter.interpolate(message, values, path);\n\n // If the custom formatter refuses to work - apply the default one\n if (!ret) {\n ret = defaultFormatter.interpolate(message, values, path);\n }\n\n // if interpolateMode is **not** 'string' ('row'),\n // return the compiled data (e.g. ['foo', VNode, 'bar']) with formatter\n return interpolateMode === 'string' && !isString(ret) ? ret.join('') : ret\n};\n\nVueI18n.prototype._appendItemToChain = function _appendItemToChain (chain, item, blocks) {\n var follow = false;\n if (!includes(chain, item)) {\n follow = true;\n if (item) {\n follow = item[item.length - 1] !== '!';\n item = item.replace(/!/g, '');\n chain.push(item);\n if (blocks && blocks[item]) {\n follow = blocks[item];\n }\n }\n }\n return follow\n};\n\nVueI18n.prototype._appendLocaleToChain = function _appendLocaleToChain (chain, locale, blocks) {\n var follow;\n var tokens = locale.split('-');\n do {\n var item = tokens.join('-');\n follow = this._appendItemToChain(chain, item, blocks);\n tokens.splice(-1, 1);\n } while (tokens.length && (follow === true))\n return follow\n};\n\nVueI18n.prototype._appendBlockToChain = function _appendBlockToChain (chain, block, blocks) {\n var follow = true;\n for (var i = 0; (i < block.length) && (isBoolean(follow)); i++) {\n var locale = block[i];\n if (isString(locale)) {\n follow = this._appendLocaleToChain(chain, locale, blocks);\n }\n }\n return follow\n};\n\nVueI18n.prototype._getLocaleChain = function _getLocaleChain (start, fallbackLocale) {\n if (start === '') { return [] }\n\n if (!this._localeChainCache) {\n this._localeChainCache = {};\n }\n\n var chain = this._localeChainCache[start];\n if (!chain) {\n if (!fallbackLocale) {\n fallbackLocale = this.fallbackLocale;\n }\n chain = [];\n\n // first block defined by start\n var block = [start];\n\n // while any intervening block found\n while (isArray(block)) {\n block = this._appendBlockToChain(\n chain,\n block,\n fallbackLocale\n );\n }\n\n // last block defined by default\n var defaults;\n if (isArray(fallbackLocale)) {\n defaults = fallbackLocale;\n } else if (isObject(fallbackLocale)) {\n /* $FlowFixMe */\n if (fallbackLocale['default']) {\n defaults = fallbackLocale['default'];\n } else {\n defaults = null;\n }\n } else {\n defaults = fallbackLocale;\n }\n\n // convert defaults to array\n if (isString(defaults)) {\n block = [defaults];\n } else {\n block = defaults;\n }\n if (block) {\n this._appendBlockToChain(\n chain,\n block,\n null\n );\n }\n this._localeChainCache[start] = chain;\n }\n return chain\n};\n\nVueI18n.prototype._translate = function _translate (\n messages,\n locale,\n fallback,\n key,\n host,\n interpolateMode,\n args\n) {\n var chain = this._getLocaleChain(locale, fallback);\n var res;\n for (var i = 0; i < chain.length; i++) {\n var step = chain[i];\n res =\n this._interpolate(step, messages[step], key, host, interpolateMode, args, [key]);\n if (!isNull(res)) {\n if (step !== locale && \"production\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to translate the keypath '\" + key + \"' with '\" + step + \"' locale.\"));\n }\n return res\n }\n }\n return null\n};\n\nVueI18n.prototype._t = function _t (key, _locale, messages, host) {\n var ref;\n\n var values = [], len = arguments.length - 4;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 4 ];\n if (!key) { return '' }\n\n var parsedArgs = parseArgs.apply(void 0, values);\n if(this._escapeParameterHtml) {\n parsedArgs.params = escapeParams(parsedArgs.params);\n }\n\n var locale = parsedArgs.locale || _locale;\n\n var ret = this._translate(\n messages, locale, this.fallbackLocale, key,\n host, 'string', parsedArgs.params\n );\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return (ref = this._root).$t.apply(ref, [ key ].concat( values ))\n } else {\n ret = this._warnDefault(locale, key, ret, host, values, 'string');\n if (this._postTranslation && ret !== null && ret !== undefined) {\n ret = this._postTranslation(ret, key);\n }\n return ret\n }\n};\n\nVueI18n.prototype.t = function t (key) {\n var ref;\n\n var values = [], len = arguments.length - 1;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 1 ];\n return (ref = this)._t.apply(ref, [ key, this.locale, this._getMessages(), null ].concat( values ))\n};\n\nVueI18n.prototype._i = function _i (key, locale, messages, host, values) {\n var ret =\n this._translate(messages, locale, this.fallbackLocale, key, host, 'raw', values);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.i(key, locale, values)\n } else {\n return this._warnDefault(locale, key, ret, host, [values], 'raw')\n }\n};\n\nVueI18n.prototype.i = function i (key, locale, values) {\n /* istanbul ignore if */\n if (!key) { return '' }\n\n if (!isString(locale)) {\n locale = this.locale;\n }\n\n return this._i(key, locale, this._getMessages(), null, values)\n};\n\nVueI18n.prototype._tc = function _tc (\n key,\n _locale,\n messages,\n host,\n choice\n) {\n var ref;\n\n var values = [], len = arguments.length - 5;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 5 ];\n if (!key) { return '' }\n if (choice === undefined) {\n choice = 1;\n }\n\n var predefined = { 'count': choice, 'n': choice };\n var parsedArgs = parseArgs.apply(void 0, values);\n parsedArgs.params = Object.assign(predefined, parsedArgs.params);\n values = parsedArgs.locale === null ? [parsedArgs.params] : [parsedArgs.locale, parsedArgs.params];\n return this.fetchChoice((ref = this)._t.apply(ref, [ key, _locale, messages, host ].concat( values )), choice)\n};\n\nVueI18n.prototype.fetchChoice = function fetchChoice (message, choice) {\n /* istanbul ignore if */\n if (!message || !isString(message)) { return null }\n var choices = message.split('|');\n\n choice = this.getChoiceIndex(choice, choices.length);\n if (!choices[choice]) { return message }\n return choices[choice].trim()\n};\n\nVueI18n.prototype.tc = function tc (key, choice) {\n var ref;\n\n var values = [], len = arguments.length - 2;\n while ( len-- > 0 ) values[ len ] = arguments[ len + 2 ];\n return (ref = this)._tc.apply(ref, [ key, this.locale, this._getMessages(), null, choice ].concat( values ))\n};\n\nVueI18n.prototype._te = function _te (key, locale, messages) {\n var args = [], len = arguments.length - 3;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 3 ];\n\n var _locale = parseArgs.apply(void 0, args).locale || locale;\n return this._exist(messages[_locale], key)\n};\n\nVueI18n.prototype.te = function te (key, locale) {\n return this._te(key, this.locale, this._getMessages(), locale)\n};\n\nVueI18n.prototype.getLocaleMessage = function getLocaleMessage (locale) {\n return looseClone(this._vm.messages[locale] || {})\n};\n\nVueI18n.prototype.setLocaleMessage = function setLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, message);\n};\n\nVueI18n.prototype.mergeLocaleMessage = function mergeLocaleMessage (locale, message) {\n if (this._warnHtmlInMessage === 'warn' || this._warnHtmlInMessage === 'error') {\n this._checkLocaleMessage(locale, this._warnHtmlInMessage, message);\n }\n this._vm.$set(this._vm.messages, locale, merge(\n typeof this._vm.messages[locale] !== 'undefined' && Object.keys(this._vm.messages[locale]).length\n ? Object.assign({}, this._vm.messages[locale])\n : {},\n message\n ));\n};\n\nVueI18n.prototype.getDateTimeFormat = function getDateTimeFormat (locale) {\n return looseClone(this._vm.dateTimeFormats[locale] || {})\n};\n\nVueI18n.prototype.setDateTimeFormat = function setDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, format);\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype.mergeDateTimeFormat = function mergeDateTimeFormat (locale, format) {\n this._vm.$set(this._vm.dateTimeFormats, locale, merge(this._vm.dateTimeFormats[locale] || {}, format));\n this._clearDateTimeFormat(locale, format);\n};\n\nVueI18n.prototype._clearDateTimeFormat = function _clearDateTimeFormat (locale, format) {\n // eslint-disable-next-line no-autofix/prefer-const\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._dateTimeFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._dateTimeFormatters[id];\n }\n};\n\nVueI18n.prototype._localizeDateTime = function _localizeDateTime (\n value,\n locale,\n fallback,\n dateTimeFormats,\n key\n) {\n var _locale = locale;\n var formats = dateTimeFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = dateTimeFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && \"production\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' datetime formats from '\" + current + \"' datetime formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n var id = _locale + \"__\" + key;\n var formatter = this._dateTimeFormatters[id];\n if (!formatter) {\n formatter = this._dateTimeFormatters[id] = new Intl.DateTimeFormat(_locale, format);\n }\n return formatter.format(value)\n }\n};\n\nVueI18n.prototype._d = function _d (value, locale, key) {\n /* istanbul ignore if */\n if (false) {}\n\n if (!key) {\n return new Intl.DateTimeFormat(locale).format(value)\n }\n\n var ret =\n this._localizeDateTime(value, locale, this.fallbackLocale, this._getDateTimeFormats(), key);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.d(value, key, locale)\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.d = function d (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._d(value, locale, key)\n};\n\nVueI18n.prototype.getNumberFormat = function getNumberFormat (locale) {\n return looseClone(this._vm.numberFormats[locale] || {})\n};\n\nVueI18n.prototype.setNumberFormat = function setNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, format);\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype.mergeNumberFormat = function mergeNumberFormat (locale, format) {\n this._vm.$set(this._vm.numberFormats, locale, merge(this._vm.numberFormats[locale] || {}, format));\n this._clearNumberFormat(locale, format);\n};\n\nVueI18n.prototype._clearNumberFormat = function _clearNumberFormat (locale, format) {\n // eslint-disable-next-line no-autofix/prefer-const\n for (var key in format) {\n var id = locale + \"__\" + key;\n\n if (!this._numberFormatters.hasOwnProperty(id)) {\n continue\n }\n\n delete this._numberFormatters[id];\n }\n};\n\nVueI18n.prototype._getNumberFormatter = function _getNumberFormatter (\n value,\n locale,\n fallback,\n numberFormats,\n key,\n options\n) {\n var _locale = locale;\n var formats = numberFormats[_locale];\n\n var chain = this._getLocaleChain(locale, fallback);\n for (var i = 0; i < chain.length; i++) {\n var current = _locale;\n var step = chain[i];\n formats = numberFormats[step];\n _locale = step;\n // fallback locale\n if (isNull(formats) || isNull(formats[key])) {\n if (step !== locale && \"production\" !== 'production' && !this._isSilentTranslationWarn(key) && !this._isSilentFallbackWarn(key)) {\n warn((\"Fall back to '\" + step + \"' number formats from '\" + current + \"' number formats.\"));\n }\n } else {\n break\n }\n }\n\n if (isNull(formats) || isNull(formats[key])) {\n return null\n } else {\n var format = formats[key];\n\n var formatter;\n if (options) {\n // If options specified - create one time number formatter\n formatter = new Intl.NumberFormat(_locale, Object.assign({}, format, options));\n } else {\n var id = _locale + \"__\" + key;\n formatter = this._numberFormatters[id];\n if (!formatter) {\n formatter = this._numberFormatters[id] = new Intl.NumberFormat(_locale, format);\n }\n }\n return formatter\n }\n};\n\nVueI18n.prototype._n = function _n (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (false) {}\n return ''\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.format(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.format(value);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n.n(value, Object.assign({}, { key: key, locale: locale }, options))\n } else {\n return ret || ''\n }\n};\n\nVueI18n.prototype.n = function n (value) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n var locale = this.locale;\n var key = null;\n var options = null;\n\n if (args.length === 1) {\n if (isString(args[0])) {\n key = args[0];\n } else if (isObject(args[0])) {\n if (args[0].locale) {\n locale = args[0].locale;\n }\n if (args[0].key) {\n key = args[0].key;\n }\n\n // Filter out number format options only\n options = Object.keys(args[0]).reduce(function (acc, key) {\n var obj;\n\n if (includes(numberFormatKeys, key)) {\n return Object.assign({}, acc, ( obj = {}, obj[key] = args[0][key], obj ))\n }\n return acc\n }, null);\n }\n } else if (args.length === 2) {\n if (isString(args[0])) {\n key = args[0];\n }\n if (isString(args[1])) {\n locale = args[1];\n }\n }\n\n return this._n(value, locale, key, options)\n};\n\nVueI18n.prototype._ntp = function _ntp (value, locale, key, options) {\n /* istanbul ignore if */\n if (!VueI18n.availabilities.numberFormat) {\n if (false) {}\n return []\n }\n\n if (!key) {\n var nf = !options ? new Intl.NumberFormat(locale) : new Intl.NumberFormat(locale, options);\n return nf.formatToParts(value)\n }\n\n var formatter = this._getNumberFormatter(value, locale, this.fallbackLocale, this._getNumberFormats(), key, options);\n var ret = formatter && formatter.formatToParts(value);\n if (this._isFallbackRoot(ret)) {\n if (false) {}\n /* istanbul ignore if */\n if (!this._root) { throw Error('unexpected error') }\n return this._root.$i18n._ntp(value, locale, key, options)\n } else {\n return ret || []\n }\n};\n\nObject.defineProperties( VueI18n.prototype, prototypeAccessors );\n\nvar availabilities;\n// $FlowFixMe\nObject.defineProperty(VueI18n, 'availabilities', {\n get: function get () {\n if (!availabilities) {\n var intlDefined = typeof Intl !== 'undefined';\n availabilities = {\n dateTimeFormat: intlDefined && typeof Intl.DateTimeFormat !== 'undefined',\n numberFormat: intlDefined && typeof Intl.NumberFormat !== 'undefined'\n };\n }\n\n return availabilities\n }\n});\n\nVueI18n.install = install;\nVueI18n.version = '8.27.1';\n\n/* harmony default export */ __webpack_exports__[\"a\"] = (VueI18n);\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdnVlLWkxOG4vZGlzdC92dWUtaTE4bi5lc20uanM/YTkyNSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsVUFBVTtBQUNWOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQSw0QkFBNEIsb0JBQW9CLEVBQUU7QUFDbEQ7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTs7QUFFQTtBQUNBLGlCQUFpQixzQkFBc0I7QUFDdkM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXO0FBQ1g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLGdCQUFnQjtBQUNoQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFD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Q0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsU0FBUztBQUNULGNBQWMsS0FBcUMsRUFBRSxFQUUxQztBQUNYO0FBQ0E7QUFDQTtBQUNBLFlBQVksS0FBcUMsRUFBRSxFQUUxQztBQUNUO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBLHdDQUF3Qzs7QUFFeEM7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSw4Q0FBOEM7O0FBRTlDO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLO0FBQ0w7QUFDQSw4QkFBOEI7QUFDOUI7QUFDQTtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7OztBQU1BO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLHVCQUF1Qjs7QUFFdkI7QUFDQTtBQUNBO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBOzs7O0FBSUEsc0NBQXNDO0FBQ3RDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsMkJBQTJCLGdDQUFnQyxFQUFFO0FBQzdELDJCQUEyQixnQ0FBZ0MsRUFBRTtBQUM3RCxnQ0FBZ0MscUVBQXFFO0FBQ3JHOztBQUVBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7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Q0E7QUFDQSxRQUFRLEtBQWdILEVBQUUsRUFFckg7QUFDTDtBQUNBLHNCQUFzQjtBQUN0QixxREFBcUQsR0FBRywyQkFBMkI7QUFDbkYsR0FBRztBQUNIO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBLEtBQUs7QUFDTDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0EsaUNBQWlDLGlCQUFpQjtBQUNsRDtBQUNBO0FBQ0EsT0FBTztBQUNQO0FBQ0EsR0FBRztBQUNIO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0EsUUFBUSxLQUFxQyxFQUFFLEVBRTFDO0FBQ0w7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQSxRQUFRLEtBQTRFLEVBQUUsRUFFakY7QUFDTDtBQUNBLHNCQUFzQjtBQUN0QjtBQUNBLEdBQUc7QUFDSDtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0EsQ0FBQzs7QUFFRDtBQUNBOztBQUVlLGdFQUFPLEVBQUMiLCJmaWxlIjoiMjAyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiB2dWUtaTE4biB2OC4yNy4xIFxuICogKGMpIDIwMjIga2F6dXlhIGthd2FndWNoaVxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLlxuICovXG4vKiAgKi9cblxuLyoqXG4gKiBjb25zdGFudHNcbiAqL1xuXG52YXIgbnVtYmVyRm9ybWF0S2V5cyA9IFtcbiAgJ2NvbXBhY3REaXNwbGF5JyxcbiAgJ2N1cnJlbmN5JyxcbiAgJ2N1cnJlbmN5RGlzcGxheScsXG4gICdjdXJyZW5jeVNpZ24nLFxuICAnbG9jYWxlTWF0Y2hlcicsXG4gICdub3RhdGlvbicsXG4gICdudW1iZXJpbmdTeXN0ZW0nLFxuICAnc2lnbkRpc3BsYXknLFxuICAnc3R5bGUnLFxuICAndW5pdCcsXG4gICd1bml0RGlzcGxheScsXG4gICd1c2VHcm91cGluZycsXG4gICdtaW5pbXVtSW50ZWdlckRpZ2l0cycsXG4gICdtaW5pbXVtRnJhY3Rpb25EaWdpdHMnLFxuICAnbWF4aW11bUZyYWN0aW9uRGlnaXRzJyxcbiAgJ21pbmltdW1TaWduaWZpY2FudERpZ2l0cycsXG4gICdtYXhpbXVtU2lnbmlmaWNhbnREaWdpdHMnXG5dO1xuXG4vKipcbiAqIHV0aWxpdGllc1xuICovXG5cbmZ1bmN0aW9uIHdhcm4gKG1zZywgZXJyKSB7XG4gIGlmICh0eXBlb2YgY29uc29sZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICBjb25zb2xlLndhcm4oJ1t2dWUtaTE4bl0gJyArIG1zZyk7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGVycikge1xuICAgICAgY29uc29sZS53YXJuKGVyci5zdGFjayk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIGVycm9yIChtc2csIGVycikge1xuICBpZiAodHlwZW9mIGNvbnNvbGUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgY29uc29sZS5lcnJvcignW3Z1ZS1pMThuXSAnICsgbXNnKTtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoZXJyKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGVyci5zdGFjayk7XG4gICAgfVxuICB9XG59XG5cbnZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTtcblxuZnVuY3Rpb24gaXNPYmplY3QgKG9iaikge1xuICByZXR1cm4gb2JqICE9PSBudWxsICYmIHR5cGVvZiBvYmogPT09ICdvYmplY3QnXG59XG5cbmZ1bmN0aW9uIGlzQm9vbGVhbiAodmFsKSB7XG4gIHJldHVybiB0eXBlb2YgdmFsID09PSAnYm9vbGVhbidcbn1cblxuZnVuY3Rpb24gaXNTdHJpbmcgKHZhbCkge1xuICByZXR1cm4gdHlwZW9mIHZhbCA9PT0gJ3N0cmluZydcbn1cblxudmFyIHRvU3RyaW5nID0gT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZztcbnZhciBPQkpFQ1RfU1RSSU5HID0gJ1tvYmplY3QgT2JqZWN0XSc7XG5mdW5jdGlvbiBpc1BsYWluT2JqZWN0IChvYmopIHtcbiAgcmV0dXJuIHRvU3RyaW5nLmNhbGwob2JqKSA9PT0gT0JKRUNUX1NUUklOR1xufVxuXG5mdW5jdGlvbiBpc051bGwgKHZhbCkge1xuICByZXR1cm4gdmFsID09PSBudWxsIHx8IHZhbCA9PT0gdW5kZWZpbmVkXG59XG5cbmZ1bmN0aW9uIGlzRnVuY3Rpb24gKHZhbCkge1xuICByZXR1cm4gdHlwZW9mIHZhbCA9PT0gJ2Z1bmN0aW9uJ1xufVxuXG5mdW5jdGlvbiBwYXJzZUFyZ3MgKCkge1xuICB2YXIgYXJncyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoO1xuICB3aGlsZSAoIGxlbi0tICkgYXJnc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiBdO1xuXG4gIHZhciBsb2NhbGUgPSBudWxsO1xuICB2YXIgcGFyYW1zID0gbnVsbDtcbiAgaWYgKGFyZ3MubGVuZ3RoID09PSAxKSB7XG4gICAgaWYgKGlzT2JqZWN0KGFyZ3NbMF0pIHx8IGlzQXJyYXkoYXJnc1swXSkpIHtcbiAgICAgIHBhcmFtcyA9IGFyZ3NbMF07XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgYXJnc1swXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGxvY2FsZSA9IGFyZ3NbMF07XG4gICAgfVxuICB9IGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09PSAyKSB7XG4gICAgaWYgKHR5cGVvZiBhcmdzWzBdID09PSAnc3RyaW5nJykge1xuICAgICAgbG9jYWxlID0gYXJnc1swXTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKGlzT2JqZWN0KGFyZ3NbMV0pIHx8IGlzQXJyYXkoYXJnc1sxXSkpIHtcbiAgICAgIHBhcmFtcyA9IGFyZ3NbMV07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHsgbG9jYWxlOiBsb2NhbGUsIHBhcmFtczogcGFyYW1zIH1cbn1cblxuZnVuY3Rpb24gbG9vc2VDbG9uZSAob2JqKSB7XG4gIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG9iaikpXG59XG5cbmZ1bmN0aW9uIHJlbW92ZSAoYXJyLCBpdGVtKSB7XG4gIGlmIChhcnIuZGVsZXRlKGl0ZW0pKSB7XG4gICAgcmV0dXJuIGFyclxuICB9XG59XG5cbmZ1bmN0aW9uIGFycmF5RnJvbSAoYXJyKSB7XG4gIHZhciByZXQgPSBbXTtcbiAgYXJyLmZvckVhY2goZnVuY3Rpb24gKGEpIHsgcmV0dXJuIHJldC5wdXNoKGEpOyB9KTtcbiAgcmV0dXJuIHJldFxufVxuXG5mdW5jdGlvbiBpbmNsdWRlcyAoYXJyLCBpdGVtKSB7XG4gIHJldHVybiAhIX5hcnIuaW5kZXhPZihpdGVtKVxufVxuXG52YXIgaGFzT3duUHJvcGVydHkgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xuZnVuY3Rpb24gaGFzT3duIChvYmosIGtleSkge1xuICByZXR1cm4gaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSlcbn1cblxuZnVuY3Rpb24gbWVyZ2UgKHRhcmdldCkge1xuICB2YXIgYXJndW1lbnRzJDEgPSBhcmd1bWVudHM7XG5cbiAgdmFyIG91dHB1dCA9IE9iamVjdCh0YXJnZXQpO1xuICBmb3IgKHZhciBpID0gMTsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgIHZhciBzb3VyY2UgPSBhcmd1bWVudHMkMVtpXTtcbiAgICBpZiAoc291cmNlICE9PSB1bmRlZmluZWQgJiYgc291cmNlICE9PSBudWxsKSB7XG4gICAgICB2YXIga2V5ID0gKHZvaWQgMCk7XG4gICAgICBmb3IgKGtleSBpbiBzb3VyY2UpIHtcbiAgICAgICAgaWYgKGhhc093bihzb3VyY2UsIGtleSkpIHtcbiAgICAgICAgICBpZiAoaXNPYmplY3Qoc291cmNlW2tleV0pKSB7XG4gICAgICAgICAgICBvdXRwdXRba2V5XSA9IG1lcmdlKG91dHB1dFtrZXldLCBzb3VyY2Vba2V5XSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG91dHB1dFtrZXldID0gc291cmNlW2tleV07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBvdXRwdXRcbn1cblxuZnVuY3Rpb24gbG9vc2VFcXVhbCAoYSwgYikge1xuICBpZiAoYSA9PT0gYikgeyByZXR1cm4gdHJ1ZSB9XG4gIHZhciBpc09iamVjdEEgPSBpc09iamVjdChhKTtcbiAgdmFyIGlzT2JqZWN0QiA9IGlzT2JqZWN0KGIpO1xuICBpZiAoaXNPYmplY3RBICYmIGlzT2JqZWN0Qikge1xuICAgIHRyeSB7XG4gICAgICB2YXIgaXNBcnJheUEgPSBpc0FycmF5KGEpO1xuICAgICAgdmFyIGlzQXJyYXlCID0gaXNBcnJheShiKTtcbiAgICAgIGlmIChpc0FycmF5QSAmJiBpc0FycmF5Qikge1xuICAgICAgICByZXR1cm4gYS5sZW5ndGggPT09IGIubGVuZ3RoICYmIGEuZXZlcnkoZnVuY3Rpb24gKGUsIGkpIHtcbiAgICAgICAgICByZXR1cm4gbG9vc2VFcXVhbChlLCBiW2ldKVxuICAgICAgICB9KVxuICAgICAgfSBlbHNlIGlmICghaXNBcnJheUEgJiYgIWlzQXJyYXlCKSB7XG4gICAgICAgIHZhciBrZXlzQSA9IE9iamVjdC5rZXlzKGEpO1xuICAgICAgICB2YXIga2V5c0IgPSBPYmplY3Qua2V5cyhiKTtcbiAgICAgICAgcmV0dXJuIGtleXNBLmxlbmd0aCA9PT0ga2V5c0IubGVuZ3RoICYmIGtleXNBLmV2ZXJ5KGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgICByZXR1cm4gbG9vc2VFcXVhbChhW2tleV0sIGJba2V5XSlcbiAgICAgICAgfSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH0gZWxzZSBpZiAoIWlzT2JqZWN0QSAmJiAhaXNPYmplY3RCKSB7XG4gICAgcmV0dXJuIFN0cmluZyhhKSA9PT0gU3RyaW5nKGIpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cbn1cblxuLyoqXG4gKiBTYW5pdGl6ZXMgaHRtbCBzcGVjaWFsIGNoYXJhY3RlcnMgZnJvbSBpbnB1dCBzdHJpbmdzLiBGb3IgbWl0aWdhdGluZyByaXNrIG9mIFhTUyBhdHRhY2tzLlxuICogQHBhcmFtIHJhd1RleHQgVGhlIHJhdyBpbnB1dCBmcm9tIHRoZSB1c2VyIHRoYXQgc2hvdWxkIGJlIGVzY2FwZWQuXG4gKi9cbmZ1bmN0aW9uIGVzY2FwZUh0bWwocmF3VGV4dCkge1xuICByZXR1cm4gcmF3VGV4dFxuICAgIC5yZXBsYWNlKC88L2csICcmbHQ7JylcbiAgICAucmVwbGFjZSgvPi9nLCAnJmd0OycpXG4gICAgLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKVxuICAgIC5yZXBsYWNlKC8nL2csICcmYXBvczsnKVxufVxuXG4vKipcbiAqIEVzY2FwZXMgaHRtbCB0YWdzIGFuZCBzcGVjaWFsIHN5bWJvbHMgZnJvbSBhbGwgcHJvdmlkZWQgcGFyYW1zIHdoaWNoIHdlcmUgcmV0dXJuZWQgZnJvbSBwYXJzZUFyZ3MoKS5wYXJhbXMuXG4gKiBUaGlzIG1ldGhvZCBwZXJmb3JtcyBhbiBpbi1wbGFjZSBvcGVyYXRpb24gb24gdGhlIHBhcmFtcyBvYmplY3QuXG4gKlxuICogQHBhcmFtIHthbnl9IHBhcmFtcyBQYXJhbWV0ZXJzIGFzIHByb3ZpZGVkIGZyb20gYHBhcnNlQXJncygpLnBhcmFtc2AuXG4gKiAgICAgICAgICAgICAgICAgICAgIE1heSBiZSBlaXRoZXIgYW4gYXJyYXkgb2Ygc3RyaW5ncyBvciBhIHN0cmluZy0+YW55IG1hcC5cbiAqXG4gKiBAcmV0dXJucyBUaGUgbWFuaXB1bGF0ZWQgYHBhcmFtc2Agb2JqZWN0LlxuICovXG5mdW5jdGlvbiBlc2NhcGVQYXJhbXMocGFyYW1zKSB7XG4gIGlmKHBhcmFtcyAhPSBudWxsKSB7XG4gICAgT2JqZWN0LmtleXMocGFyYW1zKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgIGlmKHR5cGVvZihwYXJhbXNba2V5XSkgPT0gJ3N0cmluZycpIHtcbiAgICAgICAgcGFyYW1zW2tleV0gPSBlc2NhcGVIdG1sKHBhcmFtc1trZXldKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuICByZXR1cm4gcGFyYW1zXG59XG5cbi8qICAqL1xuXG5mdW5jdGlvbiBleHRlbmQgKFZ1ZSkge1xuICBpZiAoIVZ1ZS5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoJyRpMThuJykpIHtcbiAgICAvLyAkRmxvd0ZpeE1lXG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KFZ1ZS5wcm90b3R5cGUsICckaTE4bicsIHtcbiAgICAgIGdldDogZnVuY3Rpb24gZ2V0ICgpIHsgcmV0dXJuIHRoaXMuX2kxOG4gfVxuICAgIH0pO1xuICB9XG5cbiAgVnVlLnByb3RvdHlwZS4kdCA9IGZ1bmN0aW9uIChrZXkpIHtcbiAgICB2YXIgdmFsdWVzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSAxO1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgdmFsdWVzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMSBdO1xuXG4gICAgdmFyIGkxOG4gPSB0aGlzLiRpMThuO1xuICAgIHJldHVybiBpMThuLl90LmFwcGx5KGkxOG4sIFsga2V5LCBpMThuLmxvY2FsZSwgaTE4bi5fZ2V0TWVzc2FnZXMoKSwgdGhpcyBdLmNvbmNhdCggdmFsdWVzICkpXG4gIH07XG5cbiAgVnVlLnByb3RvdHlwZS4kdGMgPSBmdW5jdGlvbiAoa2V5LCBjaG9pY2UpIHtcbiAgICB2YXIgdmFsdWVzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSAyO1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgdmFsdWVzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMiBdO1xuXG4gICAgdmFyIGkxOG4gPSB0aGlzLiRpMThuO1xuICAgIHJldHVybiBpMThuLl90Yy5hcHBseShpMThuLCBbIGtleSwgaTE4bi5sb2NhbGUsIGkxOG4uX2dldE1lc3NhZ2VzKCksIHRoaXMsIGNob2ljZSBdLmNvbmNhdCggdmFsdWVzICkpXG4gIH07XG5cbiAgVnVlLnByb3RvdHlwZS4kdGUgPSBmdW5jdGlvbiAoa2V5LCBsb2NhbGUpIHtcbiAgICB2YXIgaTE4biA9IHRoaXMuJGkxOG47XG4gICAgcmV0dXJuIGkxOG4uX3RlKGtleSwgaTE4bi5sb2NhbGUsIGkxOG4uX2dldE1lc3NhZ2VzKCksIGxvY2FsZSlcbiAgfTtcblxuICBWdWUucHJvdG90eXBlLiRkID0gZnVuY3Rpb24gKHZhbHVlKSB7XG4gICAgdmFyIHJlZjtcblxuICAgIHZhciBhcmdzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSAxO1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgYXJnc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiArIDEgXTtcbiAgICByZXR1cm4gKHJlZiA9IHRoaXMuJGkxOG4pLmQuYXBwbHkocmVmLCBbIHZhbHVlIF0uY29uY2F0KCBhcmdzICkpXG4gIH07XG5cbiAgVnVlLnByb3RvdHlwZS4kbiA9IGZ1bmN0aW9uICh2YWx1ZSkge1xuICAgIHZhciByZWY7XG5cbiAgICB2YXIgYXJncyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoIC0gMTtcbiAgICB3aGlsZSAoIGxlbi0tID4gMCApIGFyZ3NbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAxIF07XG4gICAgcmV0dXJuIChyZWYgPSB0aGlzLiRpMThuKS5uLmFwcGx5KHJlZiwgWyB2YWx1ZSBdLmNvbmNhdCggYXJncyApKVxuICB9O1xufVxuXG4vKiAgKi9cblxuLyoqXG4gKiBNaXhpblxuICogXG4gKiBJZiBgYnJpZGdlYCBtb2RlLCBlbXB0eSBtaXhpbiBpcyByZXR1cm5lZCxcbiAqIGVsc2UgcmVndWxhcnkgbWl4aW4gaW1wbGVtZW50YXRpb24gaXMgcmV0dXJuZWQuXG4gKi9cbmZ1bmN0aW9uIGRlZmluZU1peGluIChicmlkZ2UpIHtcbiAgaWYgKCBicmlkZ2UgPT09IHZvaWQgMCApIGJyaWRnZSA9IGZhbHNlO1xuXG4gIGZ1bmN0aW9uIG1vdW50ZWQgKCkge1xuICAgIGlmICh0aGlzICE9PSB0aGlzLiRyb290ICYmIHRoaXMuJG9wdGlvbnMuX19JTlRMSUZZX01FVEFfXyAmJiB0aGlzLiRlbCkge1xuICAgICAgdGhpcy4kZWwuc2V0QXR0cmlidXRlKCdkYXRhLWludGxpZnknLCB0aGlzLiRvcHRpb25zLl9fSU5UTElGWV9NRVRBX18pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBicmlkZ2VcbiAgICA/IHsgbW91bnRlZDogbW91bnRlZCB9IC8vIGRlbGVnYXRlIGB2dWUtaTE4bi1icmlkZ2VgIG1peGluIGltcGxlbWVudGF0aW9uXG4gICAgOiB7IC8vIHJlZ3VsYXJ5IFxuICAgIGJlZm9yZUNyZWF0ZTogZnVuY3Rpb24gYmVmb3JlQ3JlYXRlICgpIHtcbiAgICAgIHZhciBvcHRpb25zID0gdGhpcy4kb3B0aW9ucztcbiAgICAgIG9wdGlvbnMuaTE4biA9IG9wdGlvbnMuaTE4biB8fCAoKG9wdGlvbnMuX19pMThuQnJpZGdlIHx8IG9wdGlvbnMuX19pMThuKSA/IHt9IDogbnVsbCk7XG5cbiAgICAgIGlmIChvcHRpb25zLmkxOG4pIHtcbiAgICAgICAgaWYgKG9wdGlvbnMuaTE4biBpbnN0YW5jZW9mIFZ1ZUkxOG4pIHtcbiAgICAgICAgICAvLyBpbml0IGxvY2FsZSBtZXNzYWdlcyB2aWEgY3VzdG9tIGJsb2Nrc1xuICAgICAgICAgIGlmICgob3B0aW9ucy5fX2kxOG5CcmlkZ2UgfHwgb3B0aW9ucy5fX2kxOG4pKSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICB2YXIgbG9jYWxlTWVzc2FnZXMgPSBvcHRpb25zLmkxOG4gJiYgb3B0aW9ucy5pMThuLm1lc3NhZ2VzID8gb3B0aW9ucy5pMThuLm1lc3NhZ2VzIDoge307XG4gICAgICAgICAgICAgIHZhciBfaTE4biA9IG9wdGlvbnMuX19pMThuQnJpZGdlIHx8IG9wdGlvbnMuX19pMThuO1xuICAgICAgICAgICAgICBfaTE4bi5mb3JFYWNoKGZ1bmN0aW9uIChyZXNvdXJjZSkge1xuICAgICAgICAgICAgICAgIGxvY2FsZU1lc3NhZ2VzID0gbWVyZ2UobG9jYWxlTWVzc2FnZXMsIEpTT04ucGFyc2UocmVzb3VyY2UpKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIE9iamVjdC5rZXlzKGxvY2FsZU1lc3NhZ2VzKS5mb3JFYWNoKGZ1bmN0aW9uIChsb2NhbGUpIHtcbiAgICAgICAgICAgICAgICBvcHRpb25zLmkxOG4ubWVyZ2VMb2NhbGVNZXNzYWdlKGxvY2FsZSwgbG9jYWxlTWVzc2FnZXNbbG9jYWxlXSk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgICAgIGVycm9yKFwiQ2Fubm90IHBhcnNlIGxvY2FsZSBtZXNzYWdlcyB2aWEgY3VzdG9tIGJsb2Nrcy5cIiwgZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5faTE4biA9IG9wdGlvbnMuaTE4bjtcbiAgICAgICAgICB0aGlzLl9pMThuV2F0Y2hlciA9IHRoaXMuX2kxOG4ud2F0Y2hJMThuRGF0YSgpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzUGxhaW5PYmplY3Qob3B0aW9ucy5pMThuKSkge1xuICAgICAgICAgIHZhciByb290STE4biA9IHRoaXMuJHJvb3QgJiYgdGhpcy4kcm9vdC4kaTE4biAmJiB0aGlzLiRyb290LiRpMThuIGluc3RhbmNlb2YgVnVlSTE4blxuICAgICAgICAgICAgPyB0aGlzLiRyb290LiRpMThuXG4gICAgICAgICAgICA6IG51bGw7XG4gICAgICAgICAgLy8gY29tcG9uZW50IGxvY2FsIGkxOG5cbiAgICAgICAgICBpZiAocm9vdEkxOG4pIHtcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5yb290ID0gdGhpcy4kcm9vdDtcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5mb3JtYXR0ZXIgPSByb290STE4bi5mb3JtYXR0ZXI7XG4gICAgICAgICAgICBvcHRpb25zLmkxOG4uZmFsbGJhY2tMb2NhbGUgPSByb290STE4bi5mYWxsYmFja0xvY2FsZTtcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5mb3JtYXRGYWxsYmFja01lc3NhZ2VzID0gcm9vdEkxOG4uZm9ybWF0RmFsbGJhY2tNZXNzYWdlcztcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5zaWxlbnRUcmFuc2xhdGlvbldhcm4gPSByb290STE4bi5zaWxlbnRUcmFuc2xhdGlvbldhcm47XG4gICAgICAgICAgICBvcHRpb25zLmkxOG4uc2lsZW50RmFsbGJhY2tXYXJuID0gcm9vdEkxOG4uc2lsZW50RmFsbGJhY2tXYXJuO1xuICAgICAgICAgICAgb3B0aW9ucy5pMThuLnBsdXJhbGl6YXRpb25SdWxlcyA9IHJvb3RJMThuLnBsdXJhbGl6YXRpb25SdWxlcztcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5wcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQgPSByb290STE4bi5wcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gaW5pdCBsb2NhbGUgbWVzc2FnZXMgdmlhIGN1c3RvbSBibG9ja3NcbiAgICAgICAgICBpZiAoKG9wdGlvbnMuX19pMThuQnJpZGdlIHx8IG9wdGlvbnMuX19pMThuKSkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgdmFyIGxvY2FsZU1lc3NhZ2VzJDEgPSBvcHRpb25zLmkxOG4gJiYgb3B0aW9ucy5pMThuLm1lc3NhZ2VzID8gb3B0aW9ucy5pMThuLm1lc3NhZ2VzIDoge307XG4gICAgICAgICAgICAgIHZhciBfaTE4biQxID0gb3B0aW9ucy5fX2kxOG5CcmlkZ2UgfHwgb3B0aW9ucy5fX2kxOG47XG4gICAgICAgICAgICAgIF9pMThuJDEuZm9yRWFjaChmdW5jdGlvbiAocmVzb3VyY2UpIHtcbiAgICAgICAgICAgICAgICBsb2NhbGVNZXNzYWdlcyQxID0gbWVyZ2UobG9jYWxlTWVzc2FnZXMkMSwgSlNPTi5wYXJzZShyZXNvdXJjZSkpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgb3B0aW9ucy5pMThuLm1lc3NhZ2VzID0gbG9jYWxlTWVzc2FnZXMkMTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgICAgICAgICAgICB3YXJuKFwiQ2Fubm90IHBhcnNlIGxvY2FsZSBtZXNzYWdlcyB2aWEgY3VzdG9tIGJsb2Nrcy5cIiwgZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB2YXIgcmVmID0gb3B0aW9ucy5pMThuO1xuICAgICAgICAgIHZhciBzaGFyZWRNZXNzYWdlcyA9IHJlZi5zaGFyZWRNZXNzYWdlcztcbiAgICAgICAgICBpZiAoc2hhcmVkTWVzc2FnZXMgJiYgaXNQbGFpbk9iamVjdChzaGFyZWRNZXNzYWdlcykpIHtcbiAgICAgICAgICAgIG9wdGlvbnMuaTE4bi5tZXNzYWdlcyA9IG1lcmdlKG9wdGlvbnMuaTE4bi5tZXNzYWdlcywgc2hhcmVkTWVzc2FnZXMpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMuX2kxOG4gPSBuZXcgVnVlSTE4bihvcHRpb25zLmkxOG4pO1xuICAgICAgICAgIHRoaXMuX2kxOG5XYXRjaGVyID0gdGhpcy5faTE4bi53YXRjaEkxOG5EYXRhKCk7XG5cbiAgICAgICAgICBpZiAob3B0aW9ucy5pMThuLnN5bmMgPT09IHVuZGVmaW5lZCB8fCAhIW9wdGlvbnMuaTE4bi5zeW5jKSB7XG4gICAgICAgICAgICB0aGlzLl9sb2NhbGVXYXRjaGVyID0gdGhpcy4kaTE4bi53YXRjaExvY2FsZSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChyb290STE4bikge1xuICAgICAgICAgICAgcm9vdEkxOG4ub25Db21wb25lbnRJbnN0YW5jZUNyZWF0ZWQodGhpcy5faTE4bik7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuKFwiQ2Fubm90IGJlIGludGVycHJldGVkICdpMThuJyBvcHRpb24uXCIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLiRyb290ICYmIHRoaXMuJHJvb3QuJGkxOG4gJiYgdGhpcy4kcm9vdC4kaTE4biBpbnN0YW5jZW9mIFZ1ZUkxOG4pIHtcbiAgICAgICAgLy8gcm9vdCBpMThuXG4gICAgICAgIHRoaXMuX2kxOG4gPSB0aGlzLiRyb290LiRpMThuO1xuICAgICAgfSBlbHNlIGlmIChvcHRpb25zLnBhcmVudCAmJiBvcHRpb25zLnBhcmVudC4kaTE4biAmJiBvcHRpb25zLnBhcmVudC4kaTE4biBpbnN0YW5jZW9mIFZ1ZUkxOG4pIHtcbiAgICAgICAgLy8gcGFyZW50IGkxOG5cbiAgICAgICAgdGhpcy5faTE4biA9IG9wdGlvbnMucGFyZW50LiRpMThuO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICBiZWZvcmVNb3VudDogZnVuY3Rpb24gYmVmb3JlTW91bnQgKCkge1xuICAgICAgdmFyIG9wdGlvbnMgPSB0aGlzLiRvcHRpb25zO1xuICAgICAgb3B0aW9ucy5pMThuID0gb3B0aW9ucy5pMThuIHx8ICgob3B0aW9ucy5fX2kxOG5CcmlkZ2UgfHwgb3B0aW9ucy5fX2kxOG4pID8ge30gOiBudWxsKTtcblxuICAgICAgaWYgKG9wdGlvbnMuaTE4bikge1xuICAgICAgICBpZiAob3B0aW9ucy5pMThuIGluc3RhbmNlb2YgVnVlSTE4bikge1xuICAgICAgICAgIC8vIGluaXQgbG9jYWxlIG1lc3NhZ2VzIHZpYSBjdXN0b20gYmxvY2tzXG4gICAgICAgICAgdGhpcy5faTE4bi5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcodGhpcyk7XG4gICAgICAgICAgdGhpcy5fc3Vic2NyaWJpbmcgPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKGlzUGxhaW5PYmplY3Qob3B0aW9ucy5pMThuKSkge1xuICAgICAgICAgIHRoaXMuX2kxOG4uc3Vic2NyaWJlRGF0YUNoYW5naW5nKHRoaXMpO1xuICAgICAgICAgIHRoaXMuX3N1YnNjcmliaW5nID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICAgICAgd2FybihcIkNhbm5vdCBiZSBpbnRlcnByZXRlZCAnaTE4bicgb3B0aW9uLlwiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAodGhpcy4kcm9vdCAmJiB0aGlzLiRyb290LiRpMThuICYmIHRoaXMuJHJvb3QuJGkxOG4gaW5zdGFuY2VvZiBWdWVJMThuKSB7XG4gICAgICAgIHRoaXMuX2kxOG4uc3Vic2NyaWJlRGF0YUNoYW5naW5nKHRoaXMpO1xuICAgICAgICB0aGlzLl9zdWJzY3JpYmluZyA9IHRydWU7XG4gICAgICB9IGVsc2UgaWYgKG9wdGlvbnMucGFyZW50ICYmIG9wdGlvbnMucGFyZW50LiRpMThuICYmIG9wdGlvbnMucGFyZW50LiRpMThuIGluc3RhbmNlb2YgVnVlSTE4bikge1xuICAgICAgICB0aGlzLl9pMThuLnN1YnNjcmliZURhdGFDaGFuZ2luZyh0aGlzKTtcbiAgICAgICAgdGhpcy5fc3Vic2NyaWJpbmcgPSB0cnVlO1xuICAgICAgfVxuICAgIH0sXG5cbiAgICBtb3VudGVkOiBtb3VudGVkLFxuXG4gICAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSAoKSB7XG4gICAgICBpZiAoIXRoaXMuX2kxOG4pIHsgcmV0dXJuIH1cblxuICAgICAgdmFyIHNlbGYgPSB0aGlzO1xuICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICBpZiAoc2VsZi5fc3Vic2NyaWJpbmcpIHtcbiAgICAgICAgICBzZWxmLl9pMThuLnVuc3Vic2NyaWJlRGF0YUNoYW5naW5nKHNlbGYpO1xuICAgICAgICAgIGRlbGV0ZSBzZWxmLl9zdWJzY3JpYmluZztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChzZWxmLl9pMThuV2F0Y2hlcikge1xuICAgICAgICAgIHNlbGYuX2kxOG5XYXRjaGVyKCk7XG4gICAgICAgICAgc2VsZi5faTE4bi5kZXN0cm95Vk0oKTtcbiAgICAgICAgICBkZWxldGUgc2VsZi5faTE4bldhdGNoZXI7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc2VsZi5fbG9jYWxlV2F0Y2hlcikge1xuICAgICAgICAgIHNlbGYuX2xvY2FsZVdhdGNoZXIoKTtcbiAgICAgICAgICBkZWxldGUgc2VsZi5fbG9jYWxlV2F0Y2hlcjtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qICAqL1xuXG52YXIgaW50ZXJwb2xhdGlvbkNvbXBvbmVudCA9IHtcbiAgbmFtZTogJ2kxOG4nLFxuICBmdW5jdGlvbmFsOiB0cnVlLFxuICBwcm9wczoge1xuICAgIHRhZzoge1xuICAgICAgdHlwZTogW1N0cmluZywgQm9vbGVhbiwgT2JqZWN0XSxcbiAgICAgIGRlZmF1bHQ6ICdzcGFuJ1xuICAgIH0sXG4gICAgcGF0aDoge1xuICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICB9LFxuICAgIGxvY2FsZToge1xuICAgICAgdHlwZTogU3RyaW5nXG4gICAgfSxcbiAgICBwbGFjZXM6IHtcbiAgICAgIHR5cGU6IFtBcnJheSwgT2JqZWN0XVxuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIgKGgsIHJlZikge1xuICAgIHZhciBkYXRhID0gcmVmLmRhdGE7XG4gICAgdmFyIHBhcmVudCA9IHJlZi5wYXJlbnQ7XG4gICAgdmFyIHByb3BzID0gcmVmLnByb3BzO1xuICAgIHZhciBzbG90cyA9IHJlZi5zbG90cztcblxuICAgIHZhciAkaTE4biA9IHBhcmVudC4kaTE4bjtcbiAgICBpZiAoISRpMThuKSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICB3YXJuKCdDYW5ub3QgZmluZCBWdWVJMThuIGluc3RhbmNlIScpO1xuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgdmFyIHBhdGggPSBwcm9wcy5wYXRoO1xuICAgIHZhciBsb2NhbGUgPSBwcm9wcy5sb2NhbGU7XG4gICAgdmFyIHBsYWNlcyA9IHByb3BzLnBsYWNlcztcbiAgICB2YXIgcGFyYW1zID0gc2xvdHMoKTtcbiAgICB2YXIgY2hpbGRyZW4gPSAkaTE4bi5pKFxuICAgICAgcGF0aCxcbiAgICAgIGxvY2FsZSxcbiAgICAgIG9ubHlIYXNEZWZhdWx0UGxhY2UocGFyYW1zKSB8fCBwbGFjZXNcbiAgICAgICAgPyB1c2VMZWdhY3lQbGFjZXMocGFyYW1zLmRlZmF1bHQsIHBsYWNlcylcbiAgICAgICAgOiBwYXJhbXNcbiAgICApO1xuXG4gICAgdmFyIHRhZyA9ICghIXByb3BzLnRhZyAmJiBwcm9wcy50YWcgIT09IHRydWUpIHx8IHByb3BzLnRhZyA9PT0gZmFsc2UgPyBwcm9wcy50YWcgOiAnc3Bhbic7XG4gICAgcmV0dXJuIHRhZyA/IGgodGFnLCBkYXRhLCBjaGlsZHJlbikgOiBjaGlsZHJlblxuICB9XG59O1xuXG5mdW5jdGlvbiBvbmx5SGFzRGVmYXVsdFBsYWNlIChwYXJhbXMpIHtcbiAgdmFyIHByb3A7XG4gIGZvciAocHJvcCBpbiBwYXJhbXMpIHtcbiAgICBpZiAocHJvcCAhPT0gJ2RlZmF1bHQnKSB7IHJldHVybiBmYWxzZSB9XG4gIH1cbiAgcmV0dXJuIEJvb2xlYW4ocHJvcClcbn1cblxuZnVuY3Rpb24gdXNlTGVnYWN5UGxhY2VzIChjaGlsZHJlbiwgcGxhY2VzKSB7XG4gIHZhciBwYXJhbXMgPSBwbGFjZXMgPyBjcmVhdGVQYXJhbXNGcm9tUGxhY2VzKHBsYWNlcykgOiB7fTtcblxuICBpZiAoIWNoaWxkcmVuKSB7IHJldHVybiBwYXJhbXMgfVxuXG4gIC8vIEZpbHRlciBlbXB0eSB0ZXh0IG5vZGVzXG4gIGNoaWxkcmVuID0gY2hpbGRyZW4uZmlsdGVyKGZ1bmN0aW9uIChjaGlsZCkge1xuICAgIHJldHVybiBjaGlsZC50YWcgfHwgY2hpbGQudGV4dC50cmltKCkgIT09ICcnXG4gIH0pO1xuXG4gIHZhciBldmVyeVBsYWNlID0gY2hpbGRyZW4uZXZlcnkodm5vZGVIYXNQbGFjZUF0dHJpYnV0ZSk7XG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIGV2ZXJ5UGxhY2UpIHtcbiAgICB3YXJuKCdgcGxhY2VgIGF0dHJpYnV0ZSBpcyBkZXByZWNhdGVkIGluIG5leHQgbWFqb3IgdmVyc2lvbi4gUGxlYXNlIHN3aXRjaCB0byBWdWUgc2xvdHMuJyk7XG4gIH1cblxuICByZXR1cm4gY2hpbGRyZW4ucmVkdWNlKFxuICAgIGV2ZXJ5UGxhY2UgPyBhc3NpZ25DaGlsZFBsYWNlIDogYXNzaWduQ2hpbGRJbmRleCxcbiAgICBwYXJhbXNcbiAgKVxufVxuXG5mdW5jdGlvbiBjcmVhdGVQYXJhbXNGcm9tUGxhY2VzIChwbGFjZXMpIHtcbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICB3YXJuKCdgcGxhY2VzYCBwcm9wIGlzIGRlcHJlY2F0ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uLiBQbGVhc2Ugc3dpdGNoIHRvIFZ1ZSBzbG90cy4nKTtcbiAgfVxuXG4gIHJldHVybiBBcnJheS5pc0FycmF5KHBsYWNlcylcbiAgICA/IHBsYWNlcy5yZWR1Y2UoYXNzaWduQ2hpbGRJbmRleCwge30pXG4gICAgOiBPYmplY3QuYXNzaWduKHt9LCBwbGFjZXMpXG59XG5cbmZ1bmN0aW9uIGFzc2lnbkNoaWxkUGxhY2UgKHBhcmFtcywgY2hpbGQpIHtcbiAgaWYgKGNoaWxkLmRhdGEgJiYgY2hpbGQuZGF0YS5hdHRycyAmJiBjaGlsZC5kYXRhLmF0dHJzLnBsYWNlKSB7XG4gICAgcGFyYW1zW2NoaWxkLmRhdGEuYXR0cnMucGxhY2VdID0gY2hpbGQ7XG4gIH1cbiAgcmV0dXJuIHBhcmFtc1xufVxuXG5mdW5jdGlvbiBhc3NpZ25DaGlsZEluZGV4IChwYXJhbXMsIGNoaWxkLCBpbmRleCkge1xuICBwYXJhbXNbaW5kZXhdID0gY2hpbGQ7XG4gIHJldHVybiBwYXJhbXNcbn1cblxuZnVuY3Rpb24gdm5vZGVIYXNQbGFjZUF0dHJpYnV0ZSAodm5vZGUpIHtcbiAgcmV0dXJuIEJvb2xlYW4odm5vZGUuZGF0YSAmJiB2bm9kZS5kYXRhLmF0dHJzICYmIHZub2RlLmRhdGEuYXR0cnMucGxhY2UpXG59XG5cbi8qICAqL1xuXG52YXIgbnVtYmVyQ29tcG9uZW50ID0ge1xuICBuYW1lOiAnaTE4bi1uJyxcbiAgZnVuY3Rpb25hbDogdHJ1ZSxcbiAgcHJvcHM6IHtcbiAgICB0YWc6IHtcbiAgICAgIHR5cGU6IFtTdHJpbmcsIEJvb2xlYW4sIE9iamVjdF0sXG4gICAgICBkZWZhdWx0OiAnc3BhbidcbiAgICB9LFxuICAgIHZhbHVlOiB7XG4gICAgICB0eXBlOiBOdW1iZXIsXG4gICAgICByZXF1aXJlZDogdHJ1ZVxuICAgIH0sXG4gICAgZm9ybWF0OiB7XG4gICAgICB0eXBlOiBbU3RyaW5nLCBPYmplY3RdXG4gICAgfSxcbiAgICBsb2NhbGU6IHtcbiAgICAgIHR5cGU6IFN0cmluZ1xuICAgIH1cbiAgfSxcbiAgcmVuZGVyOiBmdW5jdGlvbiByZW5kZXIgKGgsIHJlZikge1xuICAgIHZhciBwcm9wcyA9IHJlZi5wcm9wcztcbiAgICB2YXIgcGFyZW50ID0gcmVmLnBhcmVudDtcbiAgICB2YXIgZGF0YSA9IHJlZi5kYXRhO1xuXG4gICAgdmFyIGkxOG4gPSBwYXJlbnQuJGkxOG47XG5cbiAgICBpZiAoIWkxOG4pIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4oJ0Nhbm5vdCBmaW5kIFZ1ZUkxOG4gaW5zdGFuY2UhJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIHZhciBrZXkgPSBudWxsO1xuICAgIHZhciBvcHRpb25zID0gbnVsbDtcblxuICAgIGlmIChpc1N0cmluZyhwcm9wcy5mb3JtYXQpKSB7XG4gICAgICBrZXkgPSBwcm9wcy5mb3JtYXQ7XG4gICAgfSBlbHNlIGlmIChpc09iamVjdChwcm9wcy5mb3JtYXQpKSB7XG4gICAgICBpZiAocHJvcHMuZm9ybWF0LmtleSkge1xuICAgICAgICBrZXkgPSBwcm9wcy5mb3JtYXQua2V5O1xuICAgICAgfVxuXG4gICAgICAvLyBGaWx0ZXIgb3V0IG51bWJlciBmb3JtYXQgb3B0aW9ucyBvbmx5XG4gICAgICBvcHRpb25zID0gT2JqZWN0LmtleXMocHJvcHMuZm9ybWF0KS5yZWR1Y2UoZnVuY3Rpb24gKGFjYywgcHJvcCkge1xuICAgICAgICB2YXIgb2JqO1xuXG4gICAgICAgIGlmIChpbmNsdWRlcyhudW1iZXJGb3JtYXRLZXlzLCBwcm9wKSkge1xuICAgICAgICAgIHJldHVybiBPYmplY3QuYXNzaWduKHt9LCBhY2MsICggb2JqID0ge30sIG9ialtwcm9wXSA9IHByb3BzLmZvcm1hdFtwcm9wXSwgb2JqICkpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgfSwgbnVsbCk7XG4gICAgfVxuXG4gICAgdmFyIGxvY2FsZSA9IHByb3BzLmxvY2FsZSB8fCBpMThuLmxvY2FsZTtcbiAgICB2YXIgcGFydHMgPSBpMThuLl9udHAocHJvcHMudmFsdWUsIGxvY2FsZSwga2V5LCBvcHRpb25zKTtcblxuICAgIHZhciB2YWx1ZXMgPSBwYXJ0cy5tYXAoZnVuY3Rpb24gKHBhcnQsIGluZGV4KSB7XG4gICAgICB2YXIgb2JqO1xuXG4gICAgICB2YXIgc2xvdCA9IGRhdGEuc2NvcGVkU2xvdHMgJiYgZGF0YS5zY29wZWRTbG90c1twYXJ0LnR5cGVdO1xuICAgICAgcmV0dXJuIHNsb3QgPyBzbG90KCggb2JqID0ge30sIG9ialtwYXJ0LnR5cGVdID0gcGFydC52YWx1ZSwgb2JqLmluZGV4ID0gaW5kZXgsIG9iai5wYXJ0cyA9IHBhcnRzLCBvYmogKSkgOiBwYXJ0LnZhbHVlXG4gICAgfSk7XG5cbiAgICB2YXIgdGFnID0gKCEhcHJvcHMudGFnICYmIHByb3BzLnRhZyAhPT0gdHJ1ZSkgfHwgcHJvcHMudGFnID09PSBmYWxzZSA/IHByb3BzLnRhZyA6ICdzcGFuJztcbiAgICByZXR1cm4gdGFnXG4gICAgICA/IGgodGFnLCB7XG4gICAgICAgIGF0dHJzOiBkYXRhLmF0dHJzLFxuICAgICAgICAnY2xhc3MnOiBkYXRhWydjbGFzcyddLFxuICAgICAgICBzdGF0aWNDbGFzczogZGF0YS5zdGF0aWNDbGFzc1xuICAgICAgfSwgdmFsdWVzKVxuICAgICAgOiB2YWx1ZXNcbiAgfVxufTtcblxuLyogICovXG5cbmZ1bmN0aW9uIGJpbmQgKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xuICBpZiAoIWFzc2VydChlbCwgdm5vZGUpKSB7IHJldHVybiB9XG5cbiAgdChlbCwgYmluZGluZywgdm5vZGUpO1xufVxuXG5mdW5jdGlvbiB1cGRhdGUgKGVsLCBiaW5kaW5nLCB2bm9kZSwgb2xkVk5vZGUpIHtcbiAgaWYgKCFhc3NlcnQoZWwsIHZub2RlKSkgeyByZXR1cm4gfVxuXG4gIHZhciBpMThuID0gdm5vZGUuY29udGV4dC4kaTE4bjtcbiAgaWYgKGxvY2FsZUVxdWFsKGVsLCB2bm9kZSkgJiZcbiAgICAobG9vc2VFcXVhbChiaW5kaW5nLnZhbHVlLCBiaW5kaW5nLm9sZFZhbHVlKSAmJlxuICAgICBsb29zZUVxdWFsKGVsLl9sb2NhbGVNZXNzYWdlLCBpMThuLmdldExvY2FsZU1lc3NhZ2UoaTE4bi5sb2NhbGUpKSkpIHsgcmV0dXJuIH1cblxuICB0KGVsLCBiaW5kaW5nLCB2bm9kZSk7XG59XG5cbmZ1bmN0aW9uIHVuYmluZCAoZWwsIGJpbmRpbmcsIHZub2RlLCBvbGRWTm9kZSkge1xuICB2YXIgdm0gPSB2bm9kZS5jb250ZXh0O1xuICBpZiAoIXZtKSB7XG4gICAgd2FybignVnVlIGluc3RhbmNlIGRvZXMgbm90IGV4aXN0cyBpbiBWTm9kZSBjb250ZXh0Jyk7XG4gICAgcmV0dXJuXG4gIH1cblxuICB2YXIgaTE4biA9IHZub2RlLmNvbnRleHQuJGkxOG4gfHwge307XG4gIGlmICghYmluZGluZy5tb2RpZmllcnMucHJlc2VydmUgJiYgIWkxOG4ucHJlc2VydmVEaXJlY3RpdmVDb250ZW50KSB7XG4gICAgZWwudGV4dENvbnRlbnQgPSAnJztcbiAgfVxuICBlbC5fdnQgPSB1bmRlZmluZWQ7XG4gIGRlbGV0ZSBlbFsnX3Z0J107XG4gIGVsLl9sb2NhbGUgPSB1bmRlZmluZWQ7XG4gIGRlbGV0ZSBlbFsnX2xvY2FsZSddO1xuICBlbC5fbG9jYWxlTWVzc2FnZSA9IHVuZGVmaW5lZDtcbiAgZGVsZXRlIGVsWydfbG9jYWxlTWVzc2FnZSddO1xufVxuXG5mdW5jdGlvbiBhc3NlcnQgKGVsLCB2bm9kZSkge1xuICB2YXIgdm0gPSB2bm9kZS5jb250ZXh0O1xuICBpZiAoIXZtKSB7XG4gICAgd2FybignVnVlIGluc3RhbmNlIGRvZXMgbm90IGV4aXN0cyBpbiBWTm9kZSBjb250ZXh0Jyk7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBpZiAoIXZtLiRpMThuKSB7XG4gICAgd2FybignVnVlSTE4biBpbnN0YW5jZSBkb2VzIG5vdCBleGlzdHMgaW4gVnVlIGluc3RhbmNlJyk7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICByZXR1cm4gdHJ1ZVxufVxuXG5mdW5jdGlvbiBsb2NhbGVFcXVhbCAoZWwsIHZub2RlKSB7XG4gIHZhciB2bSA9IHZub2RlLmNvbnRleHQ7XG4gIHJldHVybiBlbC5fbG9jYWxlID09PSB2bS4kaTE4bi5sb2NhbGVcbn1cblxuZnVuY3Rpb24gdCAoZWwsIGJpbmRpbmcsIHZub2RlKSB7XG4gIHZhciByZWYkMSwgcmVmJDI7XG5cbiAgdmFyIHZhbHVlID0gYmluZGluZy52YWx1ZTtcblxuICB2YXIgcmVmID0gcGFyc2VWYWx1ZSh2YWx1ZSk7XG4gIHZhciBwYXRoID0gcmVmLnBhdGg7XG4gIHZhciBsb2NhbGUgPSByZWYubG9jYWxlO1xuICB2YXIgYXJncyA9IHJlZi5hcmdzO1xuICB2YXIgY2hvaWNlID0gcmVmLmNob2ljZTtcbiAgaWYgKCFwYXRoICYmICFsb2NhbGUgJiYgIWFyZ3MpIHtcbiAgICB3YXJuKCd2YWx1ZSB0eXBlIG5vdCBzdXBwb3J0ZWQnKTtcbiAgICByZXR1cm5cbiAgfVxuXG4gIGlmICghcGF0aCkge1xuICAgIHdhcm4oJ2BwYXRoYCBpcyByZXF1aXJlZCBpbiB2LXQgZGlyZWN0aXZlJyk7XG4gICAgcmV0dXJuXG4gIH1cblxuICB2YXIgdm0gPSB2bm9kZS5jb250ZXh0O1xuICBpZiAoY2hvaWNlICE9IG51bGwpIHtcbiAgICBlbC5fdnQgPSBlbC50ZXh0Q29udGVudCA9IChyZWYkMSA9IHZtLiRpMThuKS50Yy5hcHBseShyZWYkMSwgWyBwYXRoLCBjaG9pY2UgXS5jb25jYXQoIG1ha2VQYXJhbXMobG9jYWxlLCBhcmdzKSApKTtcbiAgfSBlbHNlIHtcbiAgICBlbC5fdnQgPSBlbC50ZXh0Q29udGVudCA9IChyZWYkMiA9IHZtLiRpMThuKS50LmFwcGx5KHJlZiQyLCBbIHBhdGggXS5jb25jYXQoIG1ha2VQYXJhbXMobG9jYWxlLCBhcmdzKSApKTtcbiAgfVxuICBlbC5fbG9jYWxlID0gdm0uJGkxOG4ubG9jYWxlO1xuICBlbC5fbG9jYWxlTWVzc2FnZSA9IHZtLiRpMThuLmdldExvY2FsZU1lc3NhZ2Uodm0uJGkxOG4ubG9jYWxlKTtcbn1cblxuZnVuY3Rpb24gcGFyc2VWYWx1ZSAodmFsdWUpIHtcbiAgdmFyIHBhdGg7XG4gIHZhciBsb2NhbGU7XG4gIHZhciBhcmdzO1xuICB2YXIgY2hvaWNlO1xuXG4gIGlmIChpc1N0cmluZyh2YWx1ZSkpIHtcbiAgICBwYXRoID0gdmFsdWU7XG4gIH0gZWxzZSBpZiAoaXNQbGFpbk9iamVjdCh2YWx1ZSkpIHtcbiAgICBwYXRoID0gdmFsdWUucGF0aDtcbiAgICBsb2NhbGUgPSB2YWx1ZS5sb2NhbGU7XG4gICAgYXJncyA9IHZhbHVlLmFyZ3M7XG4gICAgY2hvaWNlID0gdmFsdWUuY2hvaWNlO1xuICB9XG5cbiAgcmV0dXJuIHsgcGF0aDogcGF0aCwgbG9jYWxlOiBsb2NhbGUsIGFyZ3M6IGFyZ3MsIGNob2ljZTogY2hvaWNlIH1cbn1cblxuZnVuY3Rpb24gbWFrZVBhcmFtcyAobG9jYWxlLCBhcmdzKSB7XG4gIHZhciBwYXJhbXMgPSBbXTtcblxuICBsb2NhbGUgJiYgcGFyYW1zLnB1c2gobG9jYWxlKTtcbiAgaWYgKGFyZ3MgJiYgKEFycmF5LmlzQXJyYXkoYXJncykgfHwgaXNQbGFpbk9iamVjdChhcmdzKSkpIHtcbiAgICBwYXJhbXMucHVzaChhcmdzKTtcbiAgfVxuXG4gIHJldHVybiBwYXJhbXNcbn1cblxudmFyIFZ1ZTtcblxuZnVuY3Rpb24gaW5zdGFsbCAoX1Z1ZSwgb3B0aW9ucykge1xuICBpZiAoIG9wdGlvbnMgPT09IHZvaWQgMCApIG9wdGlvbnMgPSB7IGJyaWRnZTogZmFsc2UgfTtcblxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgaW5zdGFsbC5pbnN0YWxsZWQgJiYgX1Z1ZSA9PT0gVnVlKSB7XG4gICAgd2FybignYWxyZWFkeSBpbnN0YWxsZWQuJyk7XG4gICAgcmV0dXJuXG4gIH1cbiAgaW5zdGFsbC5pbnN0YWxsZWQgPSB0cnVlO1xuXG4gIFZ1ZSA9IF9WdWU7XG5cbiAgdmFyIHZlcnNpb24gPSAoVnVlLnZlcnNpb24gJiYgTnVtYmVyKFZ1ZS52ZXJzaW9uLnNwbGl0KCcuJylbMF0pKSB8fCAtMTtcbiAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmIHZlcnNpb24gPCAyKSB7XG4gICAgd2FybigoXCJ2dWUtaTE4biAoXCIgKyAoaW5zdGFsbC52ZXJzaW9uKSArIFwiKSBuZWVkIHRvIHVzZSBWdWUgMi4wIG9yIGxhdGVyIChWdWU6IFwiICsgKFZ1ZS52ZXJzaW9uKSArIFwiKS5cIikpO1xuICAgIHJldHVyblxuICB9XG5cbiAgZXh0ZW5kKFZ1ZSk7XG4gIFZ1ZS5taXhpbihkZWZpbmVNaXhpbihvcHRpb25zLmJyaWRnZSkpO1xuICBWdWUuZGlyZWN0aXZlKCd0JywgeyBiaW5kOiBiaW5kLCB1cGRhdGU6IHVwZGF0ZSwgdW5iaW5kOiB1bmJpbmQgfSk7XG4gIFZ1ZS5jb21wb25lbnQoaW50ZXJwb2xhdGlvbkNvbXBvbmVudC5uYW1lLCBpbnRlcnBvbGF0aW9uQ29tcG9uZW50KTtcbiAgVnVlLmNvbXBvbmVudChudW1iZXJDb21wb25lbnQubmFtZSwgbnVtYmVyQ29tcG9uZW50KTtcblxuICAvLyB1c2Ugc2ltcGxlIG1lcmdlU3RyYXRlZ2llcyB0byBwcmV2ZW50IGkxOG4gaW5zdGFuY2UgbG9zZSAnX19wcm90b19fJ1xuICB2YXIgc3RyYXRzID0gVnVlLmNvbmZpZy5vcHRpb25NZXJnZVN0cmF0ZWdpZXM7XG4gIHN0cmF0cy5pMThuID0gZnVuY3Rpb24gKHBhcmVudFZhbCwgY2hpbGRWYWwpIHtcbiAgICByZXR1cm4gY2hpbGRWYWwgPT09IHVuZGVmaW5lZFxuICAgICAgPyBwYXJlbnRWYWxcbiAgICAgIDogY2hpbGRWYWxcbiAgfTtcbn1cblxuLyogICovXG5cbnZhciBCYXNlRm9ybWF0dGVyID0gZnVuY3Rpb24gQmFzZUZvcm1hdHRlciAoKSB7XG4gIHRoaXMuX2NhY2hlcyA9IE9iamVjdC5jcmVhdGUobnVsbCk7XG59O1xuXG5CYXNlRm9ybWF0dGVyLnByb3RvdHlwZS5pbnRlcnBvbGF0ZSA9IGZ1bmN0aW9uIGludGVycG9sYXRlIChtZXNzYWdlLCB2YWx1ZXMpIHtcbiAgaWYgKCF2YWx1ZXMpIHtcbiAgICByZXR1cm4gW21lc3NhZ2VdXG4gIH1cbiAgdmFyIHRva2VucyA9IHRoaXMuX2NhY2hlc1ttZXNzYWdlXTtcbiAgaWYgKCF0b2tlbnMpIHtcbiAgICB0b2tlbnMgPSBwYXJzZShtZXNzYWdlKTtcbiAgICB0aGlzLl9jYWNoZXNbbWVzc2FnZV0gPSB0b2tlbnM7XG4gIH1cbiAgcmV0dXJuIGNvbXBpbGUodG9rZW5zLCB2YWx1ZXMpXG59O1xuXG5cblxudmFyIFJFX1RPS0VOX0xJU1RfVkFMVUUgPSAvXig/OlxcZCkrLztcbnZhciBSRV9UT0tFTl9OQU1FRF9WQUxVRSA9IC9eKD86XFx3KSsvO1xuXG5mdW5jdGlvbiBwYXJzZSAoZm9ybWF0KSB7XG4gIHZhciB0b2tlbnMgPSBbXTtcbiAgdmFyIHBvc2l0aW9uID0gMDtcblxuICB2YXIgdGV4dCA9ICcnO1xuICB3aGlsZSAocG9zaXRpb24gPCBmb3JtYXQubGVuZ3RoKSB7XG4gICAgdmFyIGNoYXIgPSBmb3JtYXRbcG9zaXRpb24rK107XG4gICAgaWYgKGNoYXIgPT09ICd7Jykge1xuICAgICAgaWYgKHRleHQpIHtcbiAgICAgICAgdG9rZW5zLnB1c2goeyB0eXBlOiAndGV4dCcsIHZhbHVlOiB0ZXh0IH0pO1xuICAgICAgfVxuXG4gICAgICB0ZXh0ID0gJyc7XG4gICAgICB2YXIgc3ViID0gJyc7XG4gICAgICBjaGFyID0gZm9ybWF0W3Bvc2l0aW9uKytdO1xuICAgICAgd2hpbGUgKGNoYXIgIT09IHVuZGVmaW5lZCAmJiBjaGFyICE9PSAnfScpIHtcbiAgICAgICAgc3ViICs9IGNoYXI7XG4gICAgICAgIGNoYXIgPSBmb3JtYXRbcG9zaXRpb24rK107XG4gICAgICB9XG4gICAgICB2YXIgaXNDbG9zZWQgPSBjaGFyID09PSAnfSc7XG5cbiAgICAgIHZhciB0eXBlID0gUkVfVE9LRU5fTElTVF9WQUxVRS50ZXN0KHN1YilcbiAgICAgICAgPyAnbGlzdCdcbiAgICAgICAgOiBpc0Nsb3NlZCAmJiBSRV9UT0tFTl9OQU1FRF9WQUxVRS50ZXN0KHN1YilcbiAgICAgICAgICA/ICduYW1lZCdcbiAgICAgICAgICA6ICd1bmtub3duJztcbiAgICAgIHRva2Vucy5wdXNoKHsgdmFsdWU6IHN1YiwgdHlwZTogdHlwZSB9KTtcbiAgICB9IGVsc2UgaWYgKGNoYXIgPT09ICclJykge1xuICAgICAgLy8gd2hlbiBmb3VuZCByYWlscyBpMThuIHN5bnRheCwgc2tpcCB0ZXh0IGNhcHR1cmVcbiAgICAgIGlmIChmb3JtYXRbKHBvc2l0aW9uKV0gIT09ICd7Jykge1xuICAgICAgICB0ZXh0ICs9IGNoYXI7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRleHQgKz0gY2hhcjtcbiAgICB9XG4gIH1cblxuICB0ZXh0ICYmIHRva2Vucy5wdXNoKHsgdHlwZTogJ3RleHQnLCB2YWx1ZTogdGV4dCB9KTtcblxuICByZXR1cm4gdG9rZW5zXG59XG5cbmZ1bmN0aW9uIGNvbXBpbGUgKHRva2VucywgdmFsdWVzKSB7XG4gIHZhciBjb21waWxlZCA9IFtdO1xuICB2YXIgaW5kZXggPSAwO1xuXG4gIHZhciBtb2RlID0gQXJyYXkuaXNBcnJheSh2YWx1ZXMpXG4gICAgPyAnbGlzdCdcbiAgICA6IGlzT2JqZWN0KHZhbHVlcylcbiAgICAgID8gJ25hbWVkJ1xuICAgICAgOiAndW5rbm93bic7XG4gIGlmIChtb2RlID09PSAndW5rbm93bicpIHsgcmV0dXJuIGNvbXBpbGVkIH1cblxuICB3aGlsZSAoaW5kZXggPCB0b2tlbnMubGVuZ3RoKSB7XG4gICAgdmFyIHRva2VuID0gdG9rZW5zW2luZGV4XTtcbiAgICBzd2l0Y2ggKHRva2VuLnR5cGUpIHtcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICBjb21waWxlZC5wdXNoKHRva2VuLnZhbHVlKTtcbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ2xpc3QnOlxuICAgICAgICBjb21waWxlZC5wdXNoKHZhbHVlc1twYXJzZUludCh0b2tlbi52YWx1ZSwgMTApXSk7XG4gICAgICAgIGJyZWFrXG4gICAgICBjYXNlICduYW1lZCc6XG4gICAgICAgIGlmIChtb2RlID09PSAnbmFtZWQnKSB7XG4gICAgICAgICAgY29tcGlsZWQucHVzaCgodmFsdWVzKVt0b2tlbi52YWx1ZV0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICB3YXJuKChcIlR5cGUgb2YgdG9rZW4gJ1wiICsgKHRva2VuLnR5cGUpICsgXCInIGFuZCBmb3JtYXQgb2YgdmFsdWUgJ1wiICsgbW9kZSArIFwiJyBkb24ndCBtYXRjaCFcIikpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAndW5rbm93bic6XG4gICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgd2FybihcIkRldGVjdCAndW5rbm93bicgdHlwZSBvZiB0b2tlbiFcIik7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICB9XG4gICAgaW5kZXgrKztcbiAgfVxuXG4gIHJldHVybiBjb21waWxlZFxufVxuXG4vKiAgKi9cblxuLyoqXG4gKiAgUGF0aCBwYXJzZXJcbiAqICAtIEluc3BpcmVkOlxuICogICAgVnVlLmpzIFBhdGggcGFyc2VyXG4gKi9cblxuLy8gYWN0aW9uc1xudmFyIEFQUEVORCA9IDA7XG52YXIgUFVTSCA9IDE7XG52YXIgSU5DX1NVQl9QQVRIX0RFUFRIID0gMjtcbnZhciBQVVNIX1NVQl9QQVRIID0gMztcblxuLy8gc3RhdGVzXG52YXIgQkVGT1JFX1BBVEggPSAwO1xudmFyIElOX1BBVEggPSAxO1xudmFyIEJFRk9SRV9JREVOVCA9IDI7XG52YXIgSU5fSURFTlQgPSAzO1xudmFyIElOX1NVQl9QQVRIID0gNDtcbnZhciBJTl9TSU5HTEVfUVVPVEUgPSA1O1xudmFyIElOX0RPVUJMRV9RVU9URSA9IDY7XG52YXIgQUZURVJfUEFUSCA9IDc7XG52YXIgRVJST1IgPSA4O1xuXG52YXIgcGF0aFN0YXRlTWFjaGluZSA9IFtdO1xuXG5wYXRoU3RhdGVNYWNoaW5lW0JFRk9SRV9QQVRIXSA9IHtcbiAgJ3dzJzogW0JFRk9SRV9QQVRIXSxcbiAgJ2lkZW50JzogW0lOX0lERU5ULCBBUFBFTkRdLFxuICAnWyc6IFtJTl9TVUJfUEFUSF0sXG4gICdlb2YnOiBbQUZURVJfUEFUSF1cbn07XG5cbnBhdGhTdGF0ZU1hY2hpbmVbSU5fUEFUSF0gPSB7XG4gICd3cyc6IFtJTl9QQVRIXSxcbiAgJy4nOiBbQkVGT1JFX0lERU5UXSxcbiAgJ1snOiBbSU5fU1VCX1BBVEhdLFxuICAnZW9mJzogW0FGVEVSX1BBVEhdXG59O1xuXG5wYXRoU3RhdGVNYWNoaW5lW0JFRk9SRV9JREVOVF0gPSB7XG4gICd3cyc6IFtCRUZPUkVfSURFTlRdLFxuICAnaWRlbnQnOiBbSU5fSURFTlQsIEFQUEVORF0sXG4gICcwJzogW0lOX0lERU5ULCBBUFBFTkRdLFxuICAnbnVtYmVyJzogW0lOX0lERU5ULCBBUFBFTkRdXG59O1xuXG5wYXRoU3RhdGVNYWNoaW5lW0lOX0lERU5UXSA9IHtcbiAgJ2lkZW50JzogW0lOX0lERU5ULCBBUFBFTkRdLFxuICAnMCc6IFtJTl9JREVOVCwgQVBQRU5EXSxcbiAgJ251bWJlcic6IFtJTl9JREVOVCwgQVBQRU5EXSxcbiAgJ3dzJzogW0lOX1BBVEgsIFBVU0hdLFxuICAnLic6IFtCRUZPUkVfSURFTlQsIFBVU0hdLFxuICAnWyc6IFtJTl9TVUJfUEFUSCwgUFVTSF0sXG4gICdlb2YnOiBbQUZURVJfUEFUSCwgUFVTSF1cbn07XG5cbnBhdGhTdGF0ZU1hY2hpbmVbSU5fU1VCX1BBVEhdID0ge1xuICBcIidcIjogW0lOX1NJTkdMRV9RVU9URSwgQVBQRU5EXSxcbiAgJ1wiJzogW0lOX0RPVUJMRV9RVU9URSwgQVBQRU5EXSxcbiAgJ1snOiBbSU5fU1VCX1BBVEgsIElOQ19TVUJfUEFUSF9ERVBUSF0sXG4gICddJzogW0lOX1BBVEgsIFBVU0hfU1VCX1BBVEhdLFxuICAnZW9mJzogRVJST1IsXG4gICdlbHNlJzogW0lOX1NVQl9QQVRILCBBUFBFTkRdXG59O1xuXG5wYXRoU3RhdGVNYWNoaW5lW0lOX1NJTkdMRV9RVU9URV0gPSB7XG4gIFwiJ1wiOiBbSU5fU1VCX1BBVEgsIEFQUEVORF0sXG4gICdlb2YnOiBFUlJPUixcbiAgJ2Vsc2UnOiBbSU5fU0lOR0xFX1FVT1RFLCBBUFBFTkRdXG59O1xuXG5wYXRoU3RhdGVNYWNoaW5lW0lOX0RPVUJMRV9RVU9URV0gPSB7XG4gICdcIic6IFtJTl9TVUJfUEFUSCwgQVBQRU5EXSxcbiAgJ2VvZic6IEVSUk9SLFxuICAnZWxzZSc6IFtJTl9ET1VCTEVfUVVPVEUsIEFQUEVORF1cbn07XG5cbi8qKlxuICogQ2hlY2sgaWYgYW4gZXhwcmVzc2lvbiBpcyBhIGxpdGVyYWwgdmFsdWUuXG4gKi9cblxudmFyIGxpdGVyYWxWYWx1ZVJFID0gL15cXHM/KD86dHJ1ZXxmYWxzZXwtP1tcXGQuXSt8J1teJ10qJ3xcIlteXCJdKlwiKVxccz8kLztcbmZ1bmN0aW9uIGlzTGl0ZXJhbCAoZXhwKSB7XG4gIHJldHVybiBsaXRlcmFsVmFsdWVSRS50ZXN0KGV4cClcbn1cblxuLyoqXG4gKiBTdHJpcCBxdW90ZXMgZnJvbSBhIHN0cmluZ1xuICovXG5cbmZ1bmN0aW9uIHN0cmlwUXVvdGVzIChzdHIpIHtcbiAgdmFyIGEgPSBzdHIuY2hhckNvZGVBdCgwKTtcbiAgdmFyIGIgPSBzdHIuY2hhckNvZGVBdChzdHIubGVuZ3RoIC0gMSk7XG4gIHJldHVybiBhID09PSBiICYmIChhID09PSAweDIyIHx8IGEgPT09IDB4MjcpXG4gICAgPyBzdHIuc2xpY2UoMSwgLTEpXG4gICAgOiBzdHJcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmUgdGhlIHR5cGUgb2YgYSBjaGFyYWN0ZXIgaW4gYSBrZXlwYXRoLlxuICovXG5cbmZ1bmN0aW9uIGdldFBhdGhDaGFyVHlwZSAoY2gpIHtcbiAgaWYgKGNoID09PSB1bmRlZmluZWQgfHwgY2ggPT09IG51bGwpIHsgcmV0dXJuICdlb2YnIH1cblxuICB2YXIgY29kZSA9IGNoLmNoYXJDb2RlQXQoMCk7XG5cbiAgc3dpdGNoIChjb2RlKSB7XG4gICAgY2FzZSAweDVCOiAvLyBbXG4gICAgY2FzZSAweDVEOiAvLyBdXG4gICAgY2FzZSAweDJFOiAvLyAuXG4gICAgY2FzZSAweDIyOiAvLyBcIlxuICAgIGNhc2UgMHgyNzogLy8gJ1xuICAgICAgcmV0dXJuIGNoXG5cbiAgICBjYXNlIDB4NUY6IC8vIF9cbiAgICBjYXNlIDB4MjQ6IC8vICRcbiAgICBjYXNlIDB4MkQ6IC8vIC1cbiAgICAgIHJldHVybiAnaWRlbnQnXG5cbiAgICBjYXNlIDB4MDk6IC8vIFRhYlxuICAgIGNhc2UgMHgwQTogLy8gTmV3bGluZVxuICAgIGNhc2UgMHgwRDogLy8gUmV0dXJuXG4gICAgY2FzZSAweEEwOiAgLy8gTm8tYnJlYWsgc3BhY2VcbiAgICBjYXNlIDB4RkVGRjogIC8vIEJ5dGUgT3JkZXIgTWFya1xuICAgIGNhc2UgMHgyMDI4OiAgLy8gTGluZSBTZXBhcmF0b3JcbiAgICBjYXNlIDB4MjAyOTogIC8vIFBhcmFncmFwaCBTZXBhcmF0b3JcbiAgICAgIHJldHVybiAnd3MnXG4gIH1cblxuICByZXR1cm4gJ2lkZW50J1xufVxuXG4vKipcbiAqIEZvcm1hdCBhIHN1YlBhdGgsIHJldHVybiBpdHMgcGxhaW4gZm9ybSBpZiBpdCBpc1xuICogYSBsaXRlcmFsIHN0cmluZyBvciBudW1iZXIuIE90aGVyd2lzZSBwcmVwZW5kIHRoZVxuICogZHluYW1pYyBpbmRpY2F0b3IgKCopLlxuICovXG5cbmZ1bmN0aW9uIGZvcm1hdFN1YlBhdGggKHBhdGgpIHtcbiAgdmFyIHRyaW1tZWQgPSBwYXRoLnRyaW0oKTtcbiAgLy8gaW52YWxpZCBsZWFkaW5nIDBcbiAgaWYgKHBhdGguY2hhckF0KDApID09PSAnMCcgJiYgaXNOYU4ocGF0aCkpIHsgcmV0dXJuIGZhbHNlIH1cblxuICByZXR1cm4gaXNMaXRlcmFsKHRyaW1tZWQpID8gc3RyaXBRdW90ZXModHJpbW1lZCkgOiAnKicgKyB0cmltbWVkXG59XG5cbi8qKlxuICogUGFyc2UgYSBzdHJpbmcgcGF0aCBpbnRvIGFuIGFycmF5IG9mIHNlZ21lbnRzXG4gKi9cblxuZnVuY3Rpb24gcGFyc2UkMSAocGF0aCkge1xuICB2YXIga2V5cyA9IFtdO1xuICB2YXIgaW5kZXggPSAtMTtcbiAgdmFyIG1vZGUgPSBCRUZPUkVfUEFUSDtcbiAgdmFyIHN1YlBhdGhEZXB0aCA9IDA7XG4gIHZhciBjO1xuICB2YXIga2V5O1xuICB2YXIgbmV3Q2hhcjtcbiAgdmFyIHR5cGU7XG4gIHZhciB0cmFuc2l0aW9uO1xuICB2YXIgYWN0aW9uO1xuICB2YXIgdHlwZU1hcDtcbiAgdmFyIGFjdGlvbnMgPSBbXTtcblxuICBhY3Rpb25zW1BVU0hdID0gZnVuY3Rpb24gKCkge1xuICAgIGlmIChrZXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAga2V5cy5wdXNoKGtleSk7XG4gICAgICBrZXkgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9O1xuXG4gIGFjdGlvbnNbQVBQRU5EXSA9IGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoa2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGtleSA9IG5ld0NoYXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGtleSArPSBuZXdDaGFyO1xuICAgIH1cbiAgfTtcblxuICBhY3Rpb25zW0lOQ19TVUJfUEFUSF9ERVBUSF0gPSBmdW5jdGlvbiAoKSB7XG4gICAgYWN0aW9uc1tBUFBFTkRdKCk7XG4gICAgc3ViUGF0aERlcHRoKys7XG4gIH07XG5cbiAgYWN0aW9uc1tQVVNIX1NVQl9QQVRIXSA9IGZ1bmN0aW9uICgpIHtcbiAgICBpZiAoc3ViUGF0aERlcHRoID4gMCkge1xuICAgICAgc3ViUGF0aERlcHRoLS07XG4gICAgICBtb2RlID0gSU5fU1VCX1BBVEg7XG4gICAgICBhY3Rpb25zW0FQUEVORF0oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc3ViUGF0aERlcHRoID0gMDtcbiAgICAgIGlmIChrZXkgPT09IHVuZGVmaW5lZCkgeyByZXR1cm4gZmFsc2UgfVxuICAgICAga2V5ID0gZm9ybWF0U3ViUGF0aChrZXkpO1xuICAgICAgaWYgKGtleSA9PT0gZmFsc2UpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhY3Rpb25zW1BVU0hdKCk7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGZ1bmN0aW9uIG1heWJlVW5lc2NhcGVRdW90ZSAoKSB7XG4gICAgdmFyIG5leHRDaGFyID0gcGF0aFtpbmRleCArIDFdO1xuICAgIGlmICgobW9kZSA9PT0gSU5fU0lOR0xFX1FVT1RFICYmIG5leHRDaGFyID09PSBcIidcIikgfHxcbiAgICAgIChtb2RlID09PSBJTl9ET1VCTEVfUVVPVEUgJiYgbmV4dENoYXIgPT09ICdcIicpKSB7XG4gICAgICBpbmRleCsrO1xuICAgICAgbmV3Q2hhciA9ICdcXFxcJyArIG5leHRDaGFyO1xuICAgICAgYWN0aW9uc1tBUFBFTkRdKCk7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIHdoaWxlIChtb2RlICE9PSBudWxsKSB7XG4gICAgaW5kZXgrKztcbiAgICBjID0gcGF0aFtpbmRleF07XG5cbiAgICBpZiAoYyA9PT0gJ1xcXFwnICYmIG1heWJlVW5lc2NhcGVRdW90ZSgpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIHR5cGUgPSBnZXRQYXRoQ2hhclR5cGUoYyk7XG4gICAgdHlwZU1hcCA9IHBhdGhTdGF0ZU1hY2hpbmVbbW9kZV07XG4gICAgdHJhbnNpdGlvbiA9IHR5cGVNYXBbdHlwZV0gfHwgdHlwZU1hcFsnZWxzZSddIHx8IEVSUk9SO1xuXG4gICAgaWYgKHRyYW5zaXRpb24gPT09IEVSUk9SKSB7XG4gICAgICByZXR1cm4gLy8gcGFyc2UgZXJyb3JcbiAgICB9XG5cbiAgICBtb2RlID0gdHJhbnNpdGlvblswXTtcbiAgICBhY3Rpb24gPSBhY3Rpb25zW3RyYW5zaXRpb25bMV1dO1xuICAgIGlmIChhY3Rpb24pIHtcbiAgICAgIG5ld0NoYXIgPSB0cmFuc2l0aW9uWzJdO1xuICAgICAgbmV3Q2hhciA9IG5ld0NoYXIgPT09IHVuZGVmaW5lZFxuICAgICAgICA/IGNcbiAgICAgICAgOiBuZXdDaGFyO1xuICAgICAgaWYgKGFjdGlvbigpID09PSBmYWxzZSkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobW9kZSA9PT0gQUZURVJfUEFUSCkge1xuICAgICAgcmV0dXJuIGtleXNcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG52YXIgSTE4blBhdGggPSBmdW5jdGlvbiBJMThuUGF0aCAoKSB7XG4gIHRoaXMuX2NhY2hlID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcbn07XG5cbi8qKlxuICogRXh0ZXJuYWwgcGFyc2UgdGhhdCBjaGVjayBmb3IgYSBjYWNoZSBoaXQgZmlyc3RcbiAqL1xuSTE4blBhdGgucHJvdG90eXBlLnBhcnNlUGF0aCA9IGZ1bmN0aW9uIHBhcnNlUGF0aCAocGF0aCkge1xuICB2YXIgaGl0ID0gdGhpcy5fY2FjaGVbcGF0aF07XG4gIGlmICghaGl0KSB7XG4gICAgaGl0ID0gcGFyc2UkMShwYXRoKTtcbiAgICBpZiAoaGl0KSB7XG4gICAgICB0aGlzLl9jYWNoZVtwYXRoXSA9IGhpdDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGhpdCB8fCBbXVxufTtcblxuLyoqXG4gKiBHZXQgcGF0aCB2YWx1ZSBmcm9tIHBhdGggc3RyaW5nXG4gKi9cbkkxOG5QYXRoLnByb3RvdHlwZS5nZXRQYXRoVmFsdWUgPSBmdW5jdGlvbiBnZXRQYXRoVmFsdWUgKG9iaiwgcGF0aCkge1xuICBpZiAoIWlzT2JqZWN0KG9iaikpIHsgcmV0dXJuIG51bGwgfVxuXG4gIHZhciBwYXRocyA9IHRoaXMucGFyc2VQYXRoKHBhdGgpO1xuICBpZiAocGF0aHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfSBlbHNlIHtcbiAgICB2YXIgbGVuZ3RoID0gcGF0aHMubGVuZ3RoO1xuICAgIHZhciBsYXN0ID0gb2JqO1xuICAgIHZhciBpID0gMDtcbiAgICB3aGlsZSAoaSA8IGxlbmd0aCkge1xuICAgICAgdmFyIHZhbHVlID0gbGFzdFtwYXRoc1tpXV07XG4gICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuICAgICAgbGFzdCA9IHZhbHVlO1xuICAgICAgaSsrO1xuICAgIH1cblxuICAgIHJldHVybiBsYXN0XG4gIH1cbn07XG5cbi8qICAqL1xuXG5cblxudmFyIGh0bWxUYWdNYXRjaGVyID0gLzxcXC8/W1xcd1xccz1cIi8uJzo7Iy1cXC9dKz4vO1xudmFyIGxpbmtLZXlNYXRjaGVyID0gLyg/OkAoPzpcXC5bYS16XSspPzooPzpbXFx3XFwtX3wuL10rfFxcKFtcXHdcXC1fOnwuL10rXFwpKSkvZztcbnZhciBsaW5rS2V5UHJlZml4TWF0Y2hlciA9IC9eQCg/OlxcLihbYS16XSspKT86LztcbnZhciBicmFja2V0c01hdGNoZXIgPSAvWygpXS9nO1xudmFyIGRlZmF1bHRNb2RpZmllcnMgPSB7XG4gICd1cHBlcic6IGZ1bmN0aW9uIChzdHIpIHsgcmV0dXJuIHN0ci50b0xvY2FsZVVwcGVyQ2FzZSgpOyB9LFxuICAnbG93ZXInOiBmdW5jdGlvbiAoc3RyKSB7IHJldHVybiBzdHIudG9Mb2NhbGVMb3dlckNhc2UoKTsgfSxcbiAgJ2NhcGl0YWxpemUnOiBmdW5jdGlvbiAoc3RyKSB7IHJldHVybiAoXCJcIiArIChzdHIuY2hhckF0KDApLnRvTG9jYWxlVXBwZXJDYXNlKCkpICsgKHN0ci5zdWJzdHIoMSkpKTsgfVxufTtcblxudmFyIGRlZmF1bHRGb3JtYXR0ZXIgPSBuZXcgQmFzZUZvcm1hdHRlcigpO1xuXG52YXIgVnVlSTE4biA9IGZ1bmN0aW9uIFZ1ZUkxOG4gKG9wdGlvbnMpIHtcbiAgdmFyIHRoaXMkMSA9IHRoaXM7XG4gIGlmICggb3B0aW9ucyA9PT0gdm9pZCAwICkgb3B0aW9ucyA9IHt9O1xuXG4gIC8vIEF1dG8gaW5zdGFsbCBpZiBpdCBpcyBub3QgZG9uZSB5ZXQgYW5kIGB3aW5kb3dgIGhhcyBgVnVlYC5cbiAgLy8gVG8gYWxsb3cgdXNlcnMgdG8gYXZvaWQgYXV0by1pbnN0YWxsYXRpb24gaW4gc29tZSBjYXNlcyxcbiAgLy8gdGhpcyBjb2RlIHNob3VsZCBiZSBwbGFjZWQgaGVyZS4gU2VlICMyOTBcbiAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gIGlmICghVnVlICYmIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5WdWUpIHtcbiAgICBpbnN0YWxsKHdpbmRvdy5WdWUpO1xuICB9XG5cbiAgdmFyIGxvY2FsZSA9IG9wdGlvbnMubG9jYWxlIHx8ICdlbi1VUyc7XG4gIHZhciBmYWxsYmFja0xvY2FsZSA9IG9wdGlvbnMuZmFsbGJhY2tMb2NhbGUgPT09IGZhbHNlXG4gICAgPyBmYWxzZVxuICAgIDogb3B0aW9ucy5mYWxsYmFja0xvY2FsZSB8fCAnZW4tVVMnO1xuICB2YXIgbWVzc2FnZXMgPSBvcHRpb25zLm1lc3NhZ2VzIHx8IHt9O1xuICB2YXIgZGF0ZVRpbWVGb3JtYXRzID0gb3B0aW9ucy5kYXRlVGltZUZvcm1hdHMgfHwgb3B0aW9ucy5kYXRldGltZUZvcm1hdHMgfHwge307XG4gIHZhciBudW1iZXJGb3JtYXRzID0gb3B0aW9ucy5udW1iZXJGb3JtYXRzIHx8IHt9O1xuXG4gIHRoaXMuX3ZtID0gbnVsbDtcbiAgdGhpcy5fZm9ybWF0dGVyID0gb3B0aW9ucy5mb3JtYXR0ZXIgfHwgZGVmYXVsdEZvcm1hdHRlcjtcbiAgdGhpcy5fbW9kaWZpZXJzID0gb3B0aW9ucy5tb2RpZmllcnMgfHwge307XG4gIHRoaXMuX21pc3NpbmcgPSBvcHRpb25zLm1pc3NpbmcgfHwgbnVsbDtcbiAgdGhpcy5fcm9vdCA9IG9wdGlvbnMucm9vdCB8fCBudWxsO1xuICB0aGlzLl9zeW5jID0gb3B0aW9ucy5zeW5jID09PSB1bmRlZmluZWQgPyB0cnVlIDogISFvcHRpb25zLnN5bmM7XG4gIHRoaXMuX2ZhbGxiYWNrUm9vdCA9IG9wdGlvbnMuZmFsbGJhY2tSb290ID09PSB1bmRlZmluZWRcbiAgICA/IHRydWVcbiAgICA6ICEhb3B0aW9ucy5mYWxsYmFja1Jvb3Q7XG4gIHRoaXMuX2ZhbGxiYWNrUm9vdFdpdGhFbXB0eVN0cmluZyA9IG9wdGlvbnMuZmFsbGJhY2tSb290V2l0aEVtcHR5U3RyaW5nID09PSB1bmRlZmluZWRcbiAgICA/IHRydWVcbiAgICA6ICEhb3B0aW9ucy5mYWxsYmFja1Jvb3RXaXRoRW1wdHlTdHJpbmc7XG4gIHRoaXMuX2Zvcm1hdEZhbGxiYWNrTWVzc2FnZXMgPSBvcHRpb25zLmZvcm1hdEZhbGxiYWNrTWVzc2FnZXMgPT09IHVuZGVmaW5lZFxuICAgID8gZmFsc2VcbiAgICA6ICEhb3B0aW9ucy5mb3JtYXRGYWxsYmFja01lc3NhZ2VzO1xuICB0aGlzLl9zaWxlbnRUcmFuc2xhdGlvbldhcm4gPSBvcHRpb25zLnNpbGVudFRyYW5zbGF0aW9uV2FybiA9PT0gdW5kZWZpbmVkXG4gICAgPyBmYWxzZVxuICAgIDogb3B0aW9ucy5zaWxlbnRUcmFuc2xhdGlvbldhcm47XG4gIHRoaXMuX3NpbGVudEZhbGxiYWNrV2FybiA9IG9wdGlvbnMuc2lsZW50RmFsbGJhY2tXYXJuID09PSB1bmRlZmluZWRcbiAgICA/IGZhbHNlXG4gICAgOiAhIW9wdGlvbnMuc2lsZW50RmFsbGJhY2tXYXJuO1xuICB0aGlzLl9kYXRlVGltZUZvcm1hdHRlcnMgPSB7fTtcbiAgdGhpcy5fbnVtYmVyRm9ybWF0dGVycyA9IHt9O1xuICB0aGlzLl9wYXRoID0gbmV3IEkxOG5QYXRoKCk7XG4gIHRoaXMuX2RhdGFMaXN0ZW5lcnMgPSBuZXcgU2V0KCk7XG4gIHRoaXMuX2NvbXBvbmVudEluc3RhbmNlQ3JlYXRlZExpc3RlbmVyID0gb3B0aW9ucy5jb21wb25lbnRJbnN0YW5jZUNyZWF0ZWRMaXN0ZW5lciB8fCBudWxsO1xuICB0aGlzLl9wcmVzZXJ2ZURpcmVjdGl2ZUNvbnRlbnQgPSBvcHRpb25zLnByZXNlcnZlRGlyZWN0aXZlQ29udGVudCA9PT0gdW5kZWZpbmVkXG4gICAgPyBmYWxzZVxuICAgIDogISFvcHRpb25zLnByZXNlcnZlRGlyZWN0aXZlQ29udGVudDtcbiAgdGhpcy5wbHVyYWxpemF0aW9uUnVsZXMgPSBvcHRpb25zLnBsdXJhbGl6YXRpb25SdWxlcyB8fCB7fTtcbiAgdGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UgPSBvcHRpb25zLndhcm5IdG1sSW5NZXNzYWdlIHx8ICdvZmYnO1xuICB0aGlzLl9wb3N0VHJhbnNsYXRpb24gPSBvcHRpb25zLnBvc3RUcmFuc2xhdGlvbiB8fCBudWxsO1xuICB0aGlzLl9lc2NhcGVQYXJhbWV0ZXJIdG1sID0gb3B0aW9ucy5lc2NhcGVQYXJhbWV0ZXJIdG1sIHx8IGZhbHNlO1xuXG4gIGlmICgnX19WVUVfSTE4Tl9CUklER0VfXycgaW4gb3B0aW9ucykge1xuICAgIHRoaXMuX19WVUVfSTE4Tl9CUklER0VfXyA9IG9wdGlvbnMuX19WVUVfSTE4Tl9CUklER0VfXztcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gY2hvaWNlIHtudW1iZXJ9IGEgY2hvaWNlIGluZGV4IGdpdmVuIGJ5IHRoZSBpbnB1dCB0byAkdGM6IGAkdGMoJ3BhdGgudG8ucnVsZScsIGNob2ljZUluZGV4KWBcbiAgICogQHBhcmFtIGNob2ljZXNMZW5ndGgge251bWJlcn0gYW4gb3ZlcmFsbCBhbW91bnQgb2YgYXZhaWxhYmxlIGNob2ljZXNcbiAgICogQHJldHVybnMgYSBmaW5hbCBjaG9pY2UgaW5kZXhcbiAgKi9cbiAgdGhpcy5nZXRDaG9pY2VJbmRleCA9IGZ1bmN0aW9uIChjaG9pY2UsIGNob2ljZXNMZW5ndGgpIHtcbiAgICB2YXIgdGhpc1Byb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZih0aGlzJDEpO1xuICAgIGlmICh0aGlzUHJvdG90eXBlICYmIHRoaXNQcm90b3R5cGUuZ2V0Q2hvaWNlSW5kZXgpIHtcbiAgICAgIHZhciBwcm90b3R5cGVHZXRDaG9pY2VJbmRleCA9ICh0aGlzUHJvdG90eXBlLmdldENob2ljZUluZGV4KTtcbiAgICAgIHJldHVybiAocHJvdG90eXBlR2V0Q2hvaWNlSW5kZXgpLmNhbGwodGhpcyQxLCBjaG9pY2UsIGNob2ljZXNMZW5ndGgpXG4gICAgfVxuXG4gICAgLy8gRGVmYXVsdCAob2xkKSBnZXRDaG9pY2VJbmRleCBpbXBsZW1lbnRhdGlvbiAtIGVuZ2xpc2gtY29tcGF0aWJsZVxuICAgIHZhciBkZWZhdWx0SW1wbCA9IGZ1bmN0aW9uIChfY2hvaWNlLCBfY2hvaWNlc0xlbmd0aCkge1xuICAgICAgX2Nob2ljZSA9IE1hdGguYWJzKF9jaG9pY2UpO1xuXG4gICAgICBpZiAoX2Nob2ljZXNMZW5ndGggPT09IDIpIHtcbiAgICAgICAgcmV0dXJuIF9jaG9pY2VcbiAgICAgICAgICA/IF9jaG9pY2UgPiAxXG4gICAgICAgICAgICA/IDFcbiAgICAgICAgICAgIDogMFxuICAgICAgICAgIDogMVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gX2Nob2ljZSA/IE1hdGgubWluKF9jaG9pY2UsIDIpIDogMFxuICAgIH07XG5cbiAgICBpZiAodGhpcyQxLmxvY2FsZSBpbiB0aGlzJDEucGx1cmFsaXphdGlvblJ1bGVzKSB7XG4gICAgICByZXR1cm4gdGhpcyQxLnBsdXJhbGl6YXRpb25SdWxlc1t0aGlzJDEubG9jYWxlXS5hcHBseSh0aGlzJDEsIFtjaG9pY2UsIGNob2ljZXNMZW5ndGhdKVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZGVmYXVsdEltcGwoY2hvaWNlLCBjaG9pY2VzTGVuZ3RoKVxuICAgIH1cbiAgfTtcblxuXG4gIHRoaXMuX2V4aXN0ID0gZnVuY3Rpb24gKG1lc3NhZ2UsIGtleSkge1xuICAgIGlmICghbWVzc2FnZSB8fCAha2V5KSB7IHJldHVybiBmYWxzZSB9XG4gICAgaWYgKCFpc051bGwodGhpcyQxLl9wYXRoLmdldFBhdGhWYWx1ZShtZXNzYWdlLCBrZXkpKSkgeyByZXR1cm4gdHJ1ZSB9XG4gICAgLy8gZmFsbGJhY2sgZm9yIGZsYXQga2V5XG4gICAgaWYgKG1lc3NhZ2Vba2V5XSkgeyByZXR1cm4gdHJ1ZSB9XG4gICAgcmV0dXJuIGZhbHNlXG4gIH07XG5cbiAgaWYgKHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlID09PSAnd2FybicgfHwgdGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UgPT09ICdlcnJvcicpIHtcbiAgICBPYmplY3Qua2V5cyhtZXNzYWdlcykuZm9yRWFjaChmdW5jdGlvbiAobG9jYWxlKSB7XG4gICAgICB0aGlzJDEuX2NoZWNrTG9jYWxlTWVzc2FnZShsb2NhbGUsIHRoaXMkMS5fd2Fybkh0bWxJbk1lc3NhZ2UsIG1lc3NhZ2VzW2xvY2FsZV0pO1xuICAgIH0pO1xuICB9XG5cbiAgdGhpcy5faW5pdFZNKHtcbiAgICBsb2NhbGU6IGxvY2FsZSxcbiAgICBmYWxsYmFja0xvY2FsZTogZmFsbGJhY2tMb2NhbGUsXG4gICAgbWVzc2FnZXM6IG1lc3NhZ2VzLFxuICAgIGRhdGVUaW1lRm9ybWF0czogZGF0ZVRpbWVGb3JtYXRzLFxuICAgIG51bWJlckZvcm1hdHM6IG51bWJlckZvcm1hdHNcbiAgfSk7XG59O1xuXG52YXIgcHJvdG90eXBlQWNjZXNzb3JzID0geyB2bTogeyBjb25maWd1cmFibGU6IHRydWUgfSxtZXNzYWdlczogeyBjb25maWd1cmFibGU6IHRydWUgfSxkYXRlVGltZUZvcm1hdHM6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0sbnVtYmVyRm9ybWF0czogeyBjb25maWd1cmFibGU6IHRydWUgfSxhdmFpbGFibGVMb2NhbGVzOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LGxvY2FsZTogeyBjb25maWd1cmFibGU6IHRydWUgfSxmYWxsYmFja0xvY2FsZTogeyBjb25maWd1cmFibGU6IHRydWUgfSxmb3JtYXRGYWxsYmFja01lc3NhZ2VzOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LG1pc3Npbmc6IHsgY29uZmlndXJhYmxlOiB0cnVlIH0sZm9ybWF0dGVyOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LHNpbGVudFRyYW5zbGF0aW9uV2FybjogeyBjb25maWd1cmFibGU6IHRydWUgfSxzaWxlbnRGYWxsYmFja1dhcm46IHsgY29uZmlndXJhYmxlOiB0cnVlIH0scHJlc2VydmVEaXJlY3RpdmVDb250ZW50OiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LHdhcm5IdG1sSW5NZXNzYWdlOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9LHBvc3RUcmFuc2xhdGlvbjogeyBjb25maWd1cmFibGU6IHRydWUgfSxzeW5jOiB7IGNvbmZpZ3VyYWJsZTogdHJ1ZSB9IH07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9jaGVja0xvY2FsZU1lc3NhZ2UgPSBmdW5jdGlvbiBfY2hlY2tMb2NhbGVNZXNzYWdlIChsb2NhbGUsIGxldmVsLCBtZXNzYWdlKSB7XG4gIHZhciBwYXRocyA9IFtdO1xuXG4gIHZhciBmbiA9IGZ1bmN0aW9uIChsZXZlbCwgbG9jYWxlLCBtZXNzYWdlLCBwYXRocykge1xuICAgIGlmIChpc1BsYWluT2JqZWN0KG1lc3NhZ2UpKSB7XG4gICAgICBPYmplY3Qua2V5cyhtZXNzYWdlKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXkpIHtcbiAgICAgICAgdmFyIHZhbCA9IG1lc3NhZ2Vba2V5XTtcbiAgICAgICAgaWYgKGlzUGxhaW5PYmplY3QodmFsKSkge1xuICAgICAgICAgIHBhdGhzLnB1c2goa2V5KTtcbiAgICAgICAgICBwYXRocy5wdXNoKCcuJyk7XG4gICAgICAgICAgZm4obGV2ZWwsIGxvY2FsZSwgdmFsLCBwYXRocyk7XG4gICAgICAgICAgcGF0aHMucG9wKCk7XG4gICAgICAgICAgcGF0aHMucG9wKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcGF0aHMucHVzaChrZXkpO1xuICAgICAgICAgIGZuKGxldmVsLCBsb2NhbGUsIHZhbCwgcGF0aHMpO1xuICAgICAgICAgIHBhdGhzLnBvcCgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGlzQXJyYXkobWVzc2FnZSkpIHtcbiAgICAgIG1lc3NhZ2UuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSwgaW5kZXgpIHtcbiAgICAgICAgaWYgKGlzUGxhaW5PYmplY3QoaXRlbSkpIHtcbiAgICAgICAgICBwYXRocy5wdXNoKChcIltcIiArIGluZGV4ICsgXCJdXCIpKTtcbiAgICAgICAgICBwYXRocy5wdXNoKCcuJyk7XG4gICAgICAgICAgZm4obGV2ZWwsIGxvY2FsZSwgaXRlbSwgcGF0aHMpO1xuICAgICAgICAgIHBhdGhzLnBvcCgpO1xuICAgICAgICAgIHBhdGhzLnBvcCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHBhdGhzLnB1c2goKFwiW1wiICsgaW5kZXggKyBcIl1cIikpO1xuICAgICAgICAgIGZuKGxldmVsLCBsb2NhbGUsIGl0ZW0sIHBhdGhzKTtcbiAgICAgICAgICBwYXRocy5wb3AoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChpc1N0cmluZyhtZXNzYWdlKSkge1xuICAgICAgdmFyIHJldCA9IGh0bWxUYWdNYXRjaGVyLnRlc3QobWVzc2FnZSk7XG4gICAgICBpZiAocmV0KSB7XG4gICAgICAgIHZhciBtc2cgPSBcIkRldGVjdGVkIEhUTUwgaW4gbWVzc2FnZSAnXCIgKyBtZXNzYWdlICsgXCInIG9mIGtleXBhdGggJ1wiICsgKHBhdGhzLmpvaW4oJycpKSArIFwiJyBhdCAnXCIgKyBsb2NhbGUgKyBcIicuIENvbnNpZGVyIGNvbXBvbmVudCBpbnRlcnBvbGF0aW9uIHdpdGggJzxpMThuPicgdG8gYXZvaWQgWFNTLiBTZWUgaHR0cHM6Ly9iaXQubHkvMlpxSnprcFwiO1xuICAgICAgICBpZiAobGV2ZWwgPT09ICd3YXJuJykge1xuICAgICAgICAgIHdhcm4obXNnKTtcbiAgICAgICAgfSBlbHNlIGlmIChsZXZlbCA9PT0gJ2Vycm9yJykge1xuICAgICAgICAgIGVycm9yKG1zZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgZm4obGV2ZWwsIGxvY2FsZSwgbWVzc2FnZSwgcGF0aHMpO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2luaXRWTSA9IGZ1bmN0aW9uIF9pbml0Vk0gKGRhdGEpIHtcbiAgdmFyIHNpbGVudCA9IFZ1ZS5jb25maWcuc2lsZW50O1xuICBWdWUuY29uZmlnLnNpbGVudCA9IHRydWU7XG4gIHRoaXMuX3ZtID0gbmV3IFZ1ZSh7IGRhdGE6IGRhdGEsIF9fVlVFMThOX19JTlNUQU5DRV9fOiB0cnVlIH0pO1xuICBWdWUuY29uZmlnLnNpbGVudCA9IHNpbGVudDtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLmRlc3Ryb3lWTSA9IGZ1bmN0aW9uIGRlc3Ryb3lWTSAoKSB7XG4gIHRoaXMuX3ZtLiRkZXN0cm95KCk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcgPSBmdW5jdGlvbiBzdWJzY3JpYmVEYXRhQ2hhbmdpbmcgKHZtKSB7XG4gIHRoaXMuX2RhdGFMaXN0ZW5lcnMuYWRkKHZtKTtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLnVuc3Vic2NyaWJlRGF0YUNoYW5naW5nID0gZnVuY3Rpb24gdW5zdWJzY3JpYmVEYXRhQ2hhbmdpbmcgKHZtKSB7XG4gIHJlbW92ZSh0aGlzLl9kYXRhTGlzdGVuZXJzLCB2bSk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS53YXRjaEkxOG5EYXRhID0gZnVuY3Rpb24gd2F0Y2hJMThuRGF0YSAoKSB7XG4gICAgdmFyIHRoaXMkMSA9IHRoaXM7XG4gIHJldHVybiB0aGlzLl92bS4kd2F0Y2goJyRkYXRhJywgZnVuY3Rpb24gKCkge1xuICAgIHZhciBsaXN0ZW5lcnMgPSBhcnJheUZyb20odGhpcyQxLl9kYXRhTGlzdGVuZXJzKTtcbiAgICB2YXIgaSA9IGxpc3RlbmVycy5sZW5ndGg7XG4gICAgd2hpbGUoaS0tKSB7XG4gICAgICBWdWUubmV4dFRpY2soZnVuY3Rpb24gKCkge1xuICAgICAgICBsaXN0ZW5lcnNbaV0gJiYgbGlzdGVuZXJzW2ldLiRmb3JjZVVwZGF0ZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9LCB7IGRlZXA6IHRydWUgfSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLndhdGNoTG9jYWxlID0gZnVuY3Rpb24gd2F0Y2hMb2NhbGUgKGNvbXBvc2VyKSB7XG4gIGlmICghY29tcG9zZXIpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIXRoaXMuX3N5bmMgfHwgIXRoaXMuX3Jvb3QpIHsgcmV0dXJuIG51bGwgfVxuICAgIHZhciB0YXJnZXQgPSB0aGlzLl92bTtcbiAgICByZXR1cm4gdGhpcy5fcm9vdC4kaTE4bi52bS4kd2F0Y2goJ2xvY2FsZScsIGZ1bmN0aW9uICh2YWwpIHtcbiAgICAgIHRhcmdldC4kc2V0KHRhcmdldCwgJ2xvY2FsZScsIHZhbCk7XG4gICAgICB0YXJnZXQuJGZvcmNlVXBkYXRlKCk7XG4gICAgfSwgeyBpbW1lZGlhdGU6IHRydWUgfSlcbiAgfSBlbHNlIHtcbiAgICAvLyBkZWFsIHdpdGggdnVlLWkxOG4tYnJpZGdlXG4gICAgaWYgKCF0aGlzLl9fVlVFX0kxOE5fQlJJREdFX18pIHsgcmV0dXJuIG51bGwgfVxuICAgIHZhciBzZWxmID0gdGhpcztcbiAgICB2YXIgdGFyZ2V0JDEgPSB0aGlzLl92bTtcbiAgICByZXR1cm4gdGhpcy52bS4kd2F0Y2goJ2xvY2FsZScsIGZ1bmN0aW9uICh2YWwpIHtcbiAgICAgIHRhcmdldCQxLiRzZXQodGFyZ2V0JDEsICdsb2NhbGUnLCB2YWwpO1xuICAgICAgaWYgKHNlbGYuX19WVUVfSTE4Tl9CUklER0VfXyAmJiBjb21wb3Nlcikge1xuICAgICAgICBjb21wb3Nlci5sb2NhbGUudmFsdWUgPSB2YWw7XG4gICAgICB9XG4gICAgICB0YXJnZXQkMS4kZm9yY2VVcGRhdGUoKTtcbiAgICB9LCB7IGltbWVkaWF0ZTogdHJ1ZSB9KVxuICB9XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5vbkNvbXBvbmVudEluc3RhbmNlQ3JlYXRlZCA9IGZ1bmN0aW9uIG9uQ29tcG9uZW50SW5zdGFuY2VDcmVhdGVkIChuZXdJMThuKSB7XG4gIGlmICh0aGlzLl9jb21wb25lbnRJbnN0YW5jZUNyZWF0ZWRMaXN0ZW5lcikge1xuICAgIHRoaXMuX2NvbXBvbmVudEluc3RhbmNlQ3JlYXRlZExpc3RlbmVyKG5ld0kxOG4sIHRoaXMpO1xuICB9XG59O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMudm0uZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fdm0gfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLm1lc3NhZ2VzLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGxvb3NlQ2xvbmUodGhpcy5fZ2V0TWVzc2FnZXMoKSkgfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5kYXRlVGltZUZvcm1hdHMuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gbG9vc2VDbG9uZSh0aGlzLl9nZXREYXRlVGltZUZvcm1hdHMoKSkgfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5udW1iZXJGb3JtYXRzLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIGxvb3NlQ2xvbmUodGhpcy5fZ2V0TnVtYmVyRm9ybWF0cygpKSB9O1xucHJvdG90eXBlQWNjZXNzb3JzLmF2YWlsYWJsZUxvY2FsZXMuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gT2JqZWN0LmtleXModGhpcy5tZXNzYWdlcykuc29ydCgpIH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5sb2NhbGUuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fdm0ubG9jYWxlIH07XG5wcm90b3R5cGVBY2Nlc3NvcnMubG9jYWxlLnNldCA9IGZ1bmN0aW9uIChsb2NhbGUpIHtcbiAgdGhpcy5fdm0uJHNldCh0aGlzLl92bSwgJ2xvY2FsZScsIGxvY2FsZSk7XG59O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMuZmFsbGJhY2tMb2NhbGUuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fdm0uZmFsbGJhY2tMb2NhbGUgfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5mYWxsYmFja0xvY2FsZS5zZXQgPSBmdW5jdGlvbiAobG9jYWxlKSB7XG4gIHRoaXMuX2xvY2FsZUNoYWluQ2FjaGUgPSB7fTtcbiAgdGhpcy5fdm0uJHNldCh0aGlzLl92bSwgJ2ZhbGxiYWNrTG9jYWxlJywgbG9jYWxlKTtcbn07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5mb3JtYXRGYWxsYmFja01lc3NhZ2VzLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX2Zvcm1hdEZhbGxiYWNrTWVzc2FnZXMgfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5mb3JtYXRGYWxsYmFja01lc3NhZ2VzLnNldCA9IGZ1bmN0aW9uIChmYWxsYmFjaykgeyB0aGlzLl9mb3JtYXRGYWxsYmFja01lc3NhZ2VzID0gZmFsbGJhY2s7IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5taXNzaW5nLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX21pc3NpbmcgfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5taXNzaW5nLnNldCA9IGZ1bmN0aW9uIChoYW5kbGVyKSB7IHRoaXMuX21pc3NpbmcgPSBoYW5kbGVyOyB9O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMuZm9ybWF0dGVyLmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX2Zvcm1hdHRlciB9O1xucHJvdG90eXBlQWNjZXNzb3JzLmZvcm1hdHRlci5zZXQgPSBmdW5jdGlvbiAoZm9ybWF0dGVyKSB7IHRoaXMuX2Zvcm1hdHRlciA9IGZvcm1hdHRlcjsgfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLnNpbGVudFRyYW5zbGF0aW9uV2Fybi5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl9zaWxlbnRUcmFuc2xhdGlvbldhcm4gfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5zaWxlbnRUcmFuc2xhdGlvbldhcm4uc2V0ID0gZnVuY3Rpb24gKHNpbGVudCkgeyB0aGlzLl9zaWxlbnRUcmFuc2xhdGlvbldhcm4gPSBzaWxlbnQ7IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy5zaWxlbnRGYWxsYmFja1dhcm4uZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fc2lsZW50RmFsbGJhY2tXYXJuIH07XG5wcm90b3R5cGVBY2Nlc3NvcnMuc2lsZW50RmFsbGJhY2tXYXJuLnNldCA9IGZ1bmN0aW9uIChzaWxlbnQpIHsgdGhpcy5fc2lsZW50RmFsbGJhY2tXYXJuID0gc2lsZW50OyB9O1xuXG5wcm90b3R5cGVBY2Nlc3NvcnMucHJlc2VydmVEaXJlY3RpdmVDb250ZW50LmdldCA9IGZ1bmN0aW9uICgpIHsgcmV0dXJuIHRoaXMuX3ByZXNlcnZlRGlyZWN0aXZlQ29udGVudCB9O1xucHJvdG90eXBlQWNjZXNzb3JzLnByZXNlcnZlRGlyZWN0aXZlQ29udGVudC5zZXQgPSBmdW5jdGlvbiAocHJlc2VydmUpIHsgdGhpcy5fcHJlc2VydmVEaXJlY3RpdmVDb250ZW50ID0gcHJlc2VydmU7IH07XG5cbnByb3RvdHlwZUFjY2Vzc29ycy53YXJuSHRtbEluTWVzc2FnZS5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSB9O1xucHJvdG90eXBlQWNjZXNzb3JzLndhcm5IdG1sSW5NZXNzYWdlLnNldCA9IGZ1bmN0aW9uIChsZXZlbCkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHZhciBvcmdMZXZlbCA9IHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlO1xuICB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSA9IGxldmVsO1xuICBpZiAob3JnTGV2ZWwgIT09IGxldmVsICYmIChsZXZlbCA9PT0gJ3dhcm4nIHx8IGxldmVsID09PSAnZXJyb3InKSkge1xuICAgIHZhciBtZXNzYWdlcyA9IHRoaXMuX2dldE1lc3NhZ2VzKCk7XG4gICAgT2JqZWN0LmtleXMobWVzc2FnZXMpLmZvckVhY2goZnVuY3Rpb24gKGxvY2FsZSkge1xuICAgICAgdGhpcyQxLl9jaGVja0xvY2FsZU1lc3NhZ2UobG9jYWxlLCB0aGlzJDEuX3dhcm5IdG1sSW5NZXNzYWdlLCBtZXNzYWdlc1tsb2NhbGVdKTtcbiAgICB9KTtcbiAgfVxufTtcblxucHJvdG90eXBlQWNjZXNzb3JzLnBvc3RUcmFuc2xhdGlvbi5nZXQgPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzLl9wb3N0VHJhbnNsYXRpb24gfTtcbnByb3RvdHlwZUFjY2Vzc29ycy5wb3N0VHJhbnNsYXRpb24uc2V0ID0gZnVuY3Rpb24gKGhhbmRsZXIpIHsgdGhpcy5fcG9zdFRyYW5zbGF0aW9uID0gaGFuZGxlcjsgfTtcblxucHJvdG90eXBlQWNjZXNzb3JzLnN5bmMuZ2V0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpcy5fc3luYyB9O1xucHJvdG90eXBlQWNjZXNzb3JzLnN5bmMuc2V0ID0gZnVuY3Rpb24gKHZhbCkgeyB0aGlzLl9zeW5jID0gdmFsOyB9O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fZ2V0TWVzc2FnZXMgPSBmdW5jdGlvbiBfZ2V0TWVzc2FnZXMgKCkgeyByZXR1cm4gdGhpcy5fdm0ubWVzc2FnZXMgfTtcblZ1ZUkxOG4ucHJvdG90eXBlLl9nZXREYXRlVGltZUZvcm1hdHMgPSBmdW5jdGlvbiBfZ2V0RGF0ZVRpbWVGb3JtYXRzICgpIHsgcmV0dXJuIHRoaXMuX3ZtLmRhdGVUaW1lRm9ybWF0cyB9O1xuVnVlSTE4bi5wcm90b3R5cGUuX2dldE51bWJlckZvcm1hdHMgPSBmdW5jdGlvbiBfZ2V0TnVtYmVyRm9ybWF0cyAoKSB7IHJldHVybiB0aGlzLl92bS5udW1iZXJGb3JtYXRzIH07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl93YXJuRGVmYXVsdCA9IGZ1bmN0aW9uIF93YXJuRGVmYXVsdCAobG9jYWxlLCBrZXksIHJlc3VsdCwgdm0sIHZhbHVlcywgaW50ZXJwb2xhdGVNb2RlKSB7XG4gIGlmICghaXNOdWxsKHJlc3VsdCkpIHsgcmV0dXJuIHJlc3VsdCB9XG4gIGlmICh0aGlzLl9taXNzaW5nKSB7XG4gICAgdmFyIG1pc3NpbmdSZXQgPSB0aGlzLl9taXNzaW5nLmFwcGx5KG51bGwsIFtsb2NhbGUsIGtleSwgdm0sIHZhbHVlc10pO1xuICAgIGlmIChpc1N0cmluZyhtaXNzaW5nUmV0KSkge1xuICAgICAgcmV0dXJuIG1pc3NpbmdSZXRcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkpIHtcbiAgICAgIHdhcm4oXG4gICAgICAgIFwiQ2Fubm90IHRyYW5zbGF0ZSB0aGUgdmFsdWUgb2Yga2V5cGF0aCAnXCIgKyBrZXkgKyBcIicuIFwiICtcbiAgICAgICAgJ1VzZSB0aGUgdmFsdWUgb2Yga2V5cGF0aCBhcyBkZWZhdWx0LidcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHRoaXMuX2Zvcm1hdEZhbGxiYWNrTWVzc2FnZXMpIHtcbiAgICB2YXIgcGFyc2VkQXJncyA9IHBhcnNlQXJncy5hcHBseSh2b2lkIDAsIHZhbHVlcyk7XG4gICAgcmV0dXJuIHRoaXMuX3JlbmRlcihrZXksIGludGVycG9sYXRlTW9kZSwgcGFyc2VkQXJncy5wYXJhbXMsIGtleSlcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ga2V5XG4gIH1cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9pc0ZhbGxiYWNrUm9vdCA9IGZ1bmN0aW9uIF9pc0ZhbGxiYWNrUm9vdCAodmFsKSB7XG4gIHJldHVybiAodGhpcy5fZmFsbGJhY2tSb290V2l0aEVtcHR5U3RyaW5nPyAhdmFsIDogaXNOdWxsKHZhbCkpICYmICFpc051bGwodGhpcy5fcm9vdCkgJiYgdGhpcy5fZmFsbGJhY2tSb290XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5faXNTaWxlbnRGYWxsYmFja1dhcm4gPSBmdW5jdGlvbiBfaXNTaWxlbnRGYWxsYmFja1dhcm4gKGtleSkge1xuICByZXR1cm4gdGhpcy5fc2lsZW50RmFsbGJhY2tXYXJuIGluc3RhbmNlb2YgUmVnRXhwXG4gICAgPyB0aGlzLl9zaWxlbnRGYWxsYmFja1dhcm4udGVzdChrZXkpXG4gICAgOiB0aGlzLl9zaWxlbnRGYWxsYmFja1dhcm5cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9pc1NpbGVudEZhbGxiYWNrID0gZnVuY3Rpb24gX2lzU2lsZW50RmFsbGJhY2sgKGxvY2FsZSwga2V5KSB7XG4gIHJldHVybiB0aGlzLl9pc1NpbGVudEZhbGxiYWNrV2FybihrZXkpICYmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdCgpIHx8IGxvY2FsZSAhPT0gdGhpcy5mYWxsYmFja0xvY2FsZSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9pc1NpbGVudFRyYW5zbGF0aW9uV2FybiA9IGZ1bmN0aW9uIF9pc1NpbGVudFRyYW5zbGF0aW9uV2FybiAoa2V5KSB7XG4gIHJldHVybiB0aGlzLl9zaWxlbnRUcmFuc2xhdGlvbldhcm4gaW5zdGFuY2VvZiBSZWdFeHBcbiAgICA/IHRoaXMuX3NpbGVudFRyYW5zbGF0aW9uV2Fybi50ZXN0KGtleSlcbiAgICA6IHRoaXMuX3NpbGVudFRyYW5zbGF0aW9uV2FyblxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2ludGVycG9sYXRlID0gZnVuY3Rpb24gX2ludGVycG9sYXRlIChcbiAgbG9jYWxlLFxuICBtZXNzYWdlLFxuICBrZXksXG4gIGhvc3QsXG4gIGludGVycG9sYXRlTW9kZSxcbiAgdmFsdWVzLFxuICB2aXNpdGVkTGlua1N0YWNrXG4pIHtcbiAgaWYgKCFtZXNzYWdlKSB7IHJldHVybiBudWxsIH1cblxuICB2YXIgcGF0aFJldCA9IHRoaXMuX3BhdGguZ2V0UGF0aFZhbHVlKG1lc3NhZ2UsIGtleSk7XG4gIGlmIChpc0FycmF5KHBhdGhSZXQpIHx8IGlzUGxhaW5PYmplY3QocGF0aFJldCkpIHsgcmV0dXJuIHBhdGhSZXQgfVxuXG4gIHZhciByZXQ7XG4gIGlmIChpc051bGwocGF0aFJldCkpIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChpc1BsYWluT2JqZWN0KG1lc3NhZ2UpKSB7XG4gICAgICByZXQgPSBtZXNzYWdlW2tleV07XG4gICAgICBpZiAoIShpc1N0cmluZyhyZXQpIHx8IGlzRnVuY3Rpb24ocmV0KSkpIHtcbiAgICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkgJiYgIXRoaXMuX2lzU2lsZW50RmFsbGJhY2sobG9jYWxlLCBrZXkpKSB7XG4gICAgICAgICAgd2FybigoXCJWYWx1ZSBvZiBrZXkgJ1wiICsga2V5ICsgXCInIGlzIG5vdCBhIHN0cmluZyBvciBmdW5jdGlvbiAhXCIpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cbiAgfSBlbHNlIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmIChpc1N0cmluZyhwYXRoUmV0KSB8fCBpc0Z1bmN0aW9uKHBhdGhSZXQpKSB7XG4gICAgICByZXQgPSBwYXRoUmV0O1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFjayhsb2NhbGUsIGtleSkpIHtcbiAgICAgICAgd2FybigoXCJWYWx1ZSBvZiBrZXkgJ1wiICsga2V5ICsgXCInIGlzIG5vdCBhIHN0cmluZyBvciBmdW5jdGlvbiFcIikpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG4gIH1cblxuICAvLyBDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBvZiBsaW5rcyB3aXRoaW4gdGhlIHRyYW5zbGF0ZWQgc3RyaW5nXG4gIGlmIChpc1N0cmluZyhyZXQpICYmIChyZXQuaW5kZXhPZignQDonKSA+PSAwIHx8IHJldC5pbmRleE9mKCdALicpID49IDApKSB7XG4gICAgcmV0ID0gdGhpcy5fbGluayhsb2NhbGUsIG1lc3NhZ2UsIHJldCwgaG9zdCwgJ3JhdycsIHZhbHVlcywgdmlzaXRlZExpbmtTdGFjayk7XG4gIH1cblxuICByZXR1cm4gdGhpcy5fcmVuZGVyKHJldCwgaW50ZXJwb2xhdGVNb2RlLCB2YWx1ZXMsIGtleSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9saW5rID0gZnVuY3Rpb24gX2xpbmsgKFxuICBsb2NhbGUsXG4gIG1lc3NhZ2UsXG4gIHN0cixcbiAgaG9zdCxcbiAgaW50ZXJwb2xhdGVNb2RlLFxuICB2YWx1ZXMsXG4gIHZpc2l0ZWRMaW5rU3RhY2tcbikge1xuICB2YXIgcmV0ID0gc3RyO1xuXG4gIC8vIE1hdGNoIGFsbCB0aGUgbGlua3Mgd2l0aGluIHRoZSBsb2NhbFxuICAvLyBXZSBhcmUgZ29pbmcgdG8gcmVwbGFjZSBlYWNoIG9mXG4gIC8vIHRoZW0gd2l0aCBpdHMgdHJhbnNsYXRpb25cbiAgdmFyIG1hdGNoZXMgPSByZXQubWF0Y2gobGlua0tleU1hdGNoZXIpO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1hdXRvZml4L3ByZWZlci1jb25zdFxuICBmb3IgKHZhciBpZHggaW4gbWF0Y2hlcykge1xuICAgIC8vIGllIGNvbXBhdGlibGU6IGZpbHRlciBjdXN0b20gYXJyYXlcbiAgICAvLyBwcm90b3R5cGUgbWV0aG9kXG4gICAgaWYgKCFtYXRjaGVzLmhhc093blByb3BlcnR5KGlkeCkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIHZhciBsaW5rID0gbWF0Y2hlc1tpZHhdO1xuICAgIHZhciBsaW5rS2V5UHJlZml4TWF0Y2hlcyA9IGxpbmsubWF0Y2gobGlua0tleVByZWZpeE1hdGNoZXIpO1xuICAgIHZhciBsaW5rUHJlZml4ID0gbGlua0tleVByZWZpeE1hdGNoZXNbMF07XG4gICAgICB2YXIgZm9ybWF0dGVyTmFtZSA9IGxpbmtLZXlQcmVmaXhNYXRjaGVzWzFdO1xuXG4gICAgLy8gUmVtb3ZlIHRoZSBsZWFkaW5nIEA6LCBALmNhc2U6IGFuZCB0aGUgYnJhY2tldHNcbiAgICB2YXIgbGlua1BsYWNlaG9sZGVyID0gbGluay5yZXBsYWNlKGxpbmtQcmVmaXgsICcnKS5yZXBsYWNlKGJyYWNrZXRzTWF0Y2hlciwgJycpO1xuXG4gICAgaWYgKGluY2x1ZGVzKHZpc2l0ZWRMaW5rU3RhY2ssIGxpbmtQbGFjZWhvbGRlcikpIHtcbiAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgIHdhcm4oKFwiQ2lyY3VsYXIgcmVmZXJlbmNlIGZvdW5kLiBcXFwiXCIgKyBsaW5rICsgXCJcXFwiIGlzIGFscmVhZHkgdmlzaXRlZCBpbiB0aGUgY2hhaW4gb2YgXCIgKyAodmlzaXRlZExpbmtTdGFjay5yZXZlcnNlKCkuam9pbignIDwtICcpKSkpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJldFxuICAgIH1cbiAgICB2aXNpdGVkTGlua1N0YWNrLnB1c2gobGlua1BsYWNlaG9sZGVyKTtcblxuICAgIC8vIFRyYW5zbGF0ZSB0aGUgbGlua1xuICAgIHZhciB0cmFuc2xhdGVkID0gdGhpcy5faW50ZXJwb2xhdGUoXG4gICAgICBsb2NhbGUsIG1lc3NhZ2UsIGxpbmtQbGFjZWhvbGRlciwgaG9zdCxcbiAgICAgIGludGVycG9sYXRlTW9kZSA9PT0gJ3JhdycgPyAnc3RyaW5nJyA6IGludGVycG9sYXRlTW9kZSxcbiAgICAgIGludGVycG9sYXRlTW9kZSA9PT0gJ3JhdycgPyB1bmRlZmluZWQgOiB2YWx1ZXMsXG4gICAgICB2aXNpdGVkTGlua1N0YWNrXG4gICAgKTtcblxuICAgIGlmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdCh0cmFuc2xhdGVkKSkge1xuICAgICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGxpbmtQbGFjZWhvbGRlcikpIHtcbiAgICAgICAgd2FybigoXCJGYWxsIGJhY2sgdG8gdHJhbnNsYXRlIHRoZSBsaW5rIHBsYWNlaG9sZGVyICdcIiArIGxpbmtQbGFjZWhvbGRlciArIFwiJyB3aXRoIHJvb3QgbG9jYWxlLlwiKSk7XG4gICAgICB9XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICAgIGlmICghdGhpcy5fcm9vdCkgeyB0aHJvdyBFcnJvcigndW5leHBlY3RlZCBlcnJvcicpIH1cbiAgICAgIHZhciByb290ID0gdGhpcy5fcm9vdC4kaTE4bjtcbiAgICAgIHRyYW5zbGF0ZWQgPSByb290Ll90cmFuc2xhdGUoXG4gICAgICAgIHJvb3QuX2dldE1lc3NhZ2VzKCksIHJvb3QubG9jYWxlLCByb290LmZhbGxiYWNrTG9jYWxlLFxuICAgICAgICBsaW5rUGxhY2Vob2xkZXIsIGhvc3QsIGludGVycG9sYXRlTW9kZSwgdmFsdWVzXG4gICAgICApO1xuICAgIH1cbiAgICB0cmFuc2xhdGVkID0gdGhpcy5fd2FybkRlZmF1bHQoXG4gICAgICBsb2NhbGUsIGxpbmtQbGFjZWhvbGRlciwgdHJhbnNsYXRlZCwgaG9zdCxcbiAgICAgIGlzQXJyYXkodmFsdWVzKSA/IHZhbHVlcyA6IFt2YWx1ZXNdLFxuICAgICAgaW50ZXJwb2xhdGVNb2RlXG4gICAgKTtcblxuICAgIGlmICh0aGlzLl9tb2RpZmllcnMuaGFzT3duUHJvcGVydHkoZm9ybWF0dGVyTmFtZSkpIHtcbiAgICAgIHRyYW5zbGF0ZWQgPSB0aGlzLl9tb2RpZmllcnNbZm9ybWF0dGVyTmFtZV0odHJhbnNsYXRlZCk7XG4gICAgfSBlbHNlIGlmIChkZWZhdWx0TW9kaWZpZXJzLmhhc093blByb3BlcnR5KGZvcm1hdHRlck5hbWUpKSB7XG4gICAgICB0cmFuc2xhdGVkID0gZGVmYXVsdE1vZGlmaWVyc1tmb3JtYXR0ZXJOYW1lXSh0cmFuc2xhdGVkKTtcbiAgICB9XG5cbiAgICB2aXNpdGVkTGlua1N0YWNrLnBvcCgpO1xuXG4gICAgLy8gUmVwbGFjZSB0aGUgbGluayB3aXRoIHRoZSB0cmFuc2xhdGVkXG4gICAgcmV0ID0gIXRyYW5zbGF0ZWQgPyByZXQgOiByZXQucmVwbGFjZShsaW5rLCB0cmFuc2xhdGVkKTtcbiAgfVxuXG4gIHJldHVybiByZXRcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9jcmVhdGVNZXNzYWdlQ29udGV4dCA9IGZ1bmN0aW9uIF9jcmVhdGVNZXNzYWdlQ29udGV4dCAodmFsdWVzLCBmb3JtYXR0ZXIsIHBhdGgsIGludGVycG9sYXRlTW9kZSkge1xuICAgIHZhciB0aGlzJDEgPSB0aGlzO1xuXG4gIHZhciBfbGlzdCA9IGlzQXJyYXkodmFsdWVzKSA/IHZhbHVlcyA6IFtdO1xuICB2YXIgX25hbWVkID0gaXNPYmplY3QodmFsdWVzKSA/IHZhbHVlcyA6IHt9O1xuICB2YXIgbGlzdCA9IGZ1bmN0aW9uIChpbmRleCkgeyByZXR1cm4gX2xpc3RbaW5kZXhdOyB9O1xuICB2YXIgbmFtZWQgPSBmdW5jdGlvbiAoa2V5KSB7IHJldHVybiBfbmFtZWRba2V5XTsgfTtcbiAgdmFyIG1lc3NhZ2VzID0gdGhpcy5fZ2V0TWVzc2FnZXMoKTtcbiAgdmFyIGxvY2FsZSA9IHRoaXMubG9jYWxlO1xuXG4gIHJldHVybiB7XG4gICAgbGlzdDogbGlzdCxcbiAgICBuYW1lZDogbmFtZWQsXG4gICAgdmFsdWVzOiB2YWx1ZXMsXG4gICAgZm9ybWF0dGVyOiBmb3JtYXR0ZXIsXG4gICAgcGF0aDogcGF0aCxcbiAgICBtZXNzYWdlczogbWVzc2FnZXMsXG4gICAgbG9jYWxlOiBsb2NhbGUsXG4gICAgbGlua2VkOiBmdW5jdGlvbiAobGlua2VkS2V5KSB7IHJldHVybiB0aGlzJDEuX2ludGVycG9sYXRlKGxvY2FsZSwgbWVzc2FnZXNbbG9jYWxlXSB8fCB7fSwgbGlua2VkS2V5LCBudWxsLCBpbnRlcnBvbGF0ZU1vZGUsIHVuZGVmaW5lZCwgW2xpbmtlZEtleV0pOyB9XG4gIH1cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9yZW5kZXIgPSBmdW5jdGlvbiBfcmVuZGVyIChtZXNzYWdlLCBpbnRlcnBvbGF0ZU1vZGUsIHZhbHVlcywgcGF0aCkge1xuICBpZiAoaXNGdW5jdGlvbihtZXNzYWdlKSkge1xuICAgIHJldHVybiBtZXNzYWdlKFxuICAgICAgdGhpcy5fY3JlYXRlTWVzc2FnZUNvbnRleHQodmFsdWVzLCB0aGlzLl9mb3JtYXR0ZXIgfHwgZGVmYXVsdEZvcm1hdHRlciwgcGF0aCwgaW50ZXJwb2xhdGVNb2RlKVxuICAgIClcbiAgfVxuXG4gIHZhciByZXQgPSB0aGlzLl9mb3JtYXR0ZXIuaW50ZXJwb2xhdGUobWVzc2FnZSwgdmFsdWVzLCBwYXRoKTtcblxuICAvLyBJZiB0aGUgY3VzdG9tIGZvcm1hdHRlciByZWZ1c2VzIHRvIHdvcmsgLSBhcHBseSB0aGUgZGVmYXVsdCBvbmVcbiAgaWYgKCFyZXQpIHtcbiAgICByZXQgPSBkZWZhdWx0Rm9ybWF0dGVyLmludGVycG9sYXRlKG1lc3NhZ2UsIHZhbHVlcywgcGF0aCk7XG4gIH1cblxuICAvLyBpZiBpbnRlcnBvbGF0ZU1vZGUgaXMgKipub3QqKiAnc3RyaW5nJyAoJ3JvdycpLFxuICAvLyByZXR1cm4gdGhlIGNvbXBpbGVkIGRhdGEgKGUuZy4gWydmb28nLCBWTm9kZSwgJ2JhciddKSB3aXRoIGZvcm1hdHRlclxuICByZXR1cm4gaW50ZXJwb2xhdGVNb2RlID09PSAnc3RyaW5nJyAmJiAhaXNTdHJpbmcocmV0KSA/IHJldC5qb2luKCcnKSA6IHJldFxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2FwcGVuZEl0ZW1Ub0NoYWluID0gZnVuY3Rpb24gX2FwcGVuZEl0ZW1Ub0NoYWluIChjaGFpbiwgaXRlbSwgYmxvY2tzKSB7XG4gIHZhciBmb2xsb3cgPSBmYWxzZTtcbiAgaWYgKCFpbmNsdWRlcyhjaGFpbiwgaXRlbSkpIHtcbiAgICBmb2xsb3cgPSB0cnVlO1xuICAgIGlmIChpdGVtKSB7XG4gICAgICBmb2xsb3cgPSBpdGVtW2l0ZW0ubGVuZ3RoIC0gMV0gIT09ICchJztcbiAgICAgIGl0ZW0gPSBpdGVtLnJlcGxhY2UoLyEvZywgJycpO1xuICAgICAgY2hhaW4ucHVzaChpdGVtKTtcbiAgICAgIGlmIChibG9ja3MgJiYgYmxvY2tzW2l0ZW1dKSB7XG4gICAgICAgIGZvbGxvdyA9IGJsb2Nrc1tpdGVtXTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZvbGxvd1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2FwcGVuZExvY2FsZVRvQ2hhaW4gPSBmdW5jdGlvbiBfYXBwZW5kTG9jYWxlVG9DaGFpbiAoY2hhaW4sIGxvY2FsZSwgYmxvY2tzKSB7XG4gIHZhciBmb2xsb3c7XG4gIHZhciB0b2tlbnMgPSBsb2NhbGUuc3BsaXQoJy0nKTtcbiAgZG8ge1xuICAgIHZhciBpdGVtID0gdG9rZW5zLmpvaW4oJy0nKTtcbiAgICBmb2xsb3cgPSB0aGlzLl9hcHBlbmRJdGVtVG9DaGFpbihjaGFpbiwgaXRlbSwgYmxvY2tzKTtcbiAgICB0b2tlbnMuc3BsaWNlKC0xLCAxKTtcbiAgfSB3aGlsZSAodG9rZW5zLmxlbmd0aCAmJiAoZm9sbG93ID09PSB0cnVlKSlcbiAgcmV0dXJuIGZvbGxvd1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2FwcGVuZEJsb2NrVG9DaGFpbiA9IGZ1bmN0aW9uIF9hcHBlbmRCbG9ja1RvQ2hhaW4gKGNoYWluLCBibG9jaywgYmxvY2tzKSB7XG4gIHZhciBmb2xsb3cgPSB0cnVlO1xuICBmb3IgKHZhciBpID0gMDsgKGkgPCBibG9jay5sZW5ndGgpICYmIChpc0Jvb2xlYW4oZm9sbG93KSk7IGkrKykge1xuICAgIHZhciBsb2NhbGUgPSBibG9ja1tpXTtcbiAgICBpZiAoaXNTdHJpbmcobG9jYWxlKSkge1xuICAgICAgZm9sbG93ID0gdGhpcy5fYXBwZW5kTG9jYWxlVG9DaGFpbihjaGFpbiwgbG9jYWxlLCBibG9ja3MpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZm9sbG93XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fZ2V0TG9jYWxlQ2hhaW4gPSBmdW5jdGlvbiBfZ2V0TG9jYWxlQ2hhaW4gKHN0YXJ0LCBmYWxsYmFja0xvY2FsZSkge1xuICBpZiAoc3RhcnQgPT09ICcnKSB7IHJldHVybiBbXSB9XG5cbiAgaWYgKCF0aGlzLl9sb2NhbGVDaGFpbkNhY2hlKSB7XG4gICAgdGhpcy5fbG9jYWxlQ2hhaW5DYWNoZSA9IHt9O1xuICB9XG5cbiAgdmFyIGNoYWluID0gdGhpcy5fbG9jYWxlQ2hhaW5DYWNoZVtzdGFydF07XG4gIGlmICghY2hhaW4pIHtcbiAgICBpZiAoIWZhbGxiYWNrTG9jYWxlKSB7XG4gICAgICBmYWxsYmFja0xvY2FsZSA9IHRoaXMuZmFsbGJhY2tMb2NhbGU7XG4gICAgfVxuICAgIGNoYWluID0gW107XG5cbiAgICAvLyBmaXJzdCBibG9jayBkZWZpbmVkIGJ5IHN0YXJ0XG4gICAgdmFyIGJsb2NrID0gW3N0YXJ0XTtcblxuICAgIC8vIHdoaWxlIGFueSBpbnRlcnZlbmluZyBibG9jayBmb3VuZFxuICAgIHdoaWxlIChpc0FycmF5KGJsb2NrKSkge1xuICAgICAgYmxvY2sgPSB0aGlzLl9hcHBlbmRCbG9ja1RvQ2hhaW4oXG4gICAgICAgIGNoYWluLFxuICAgICAgICBibG9jayxcbiAgICAgICAgZmFsbGJhY2tMb2NhbGVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gbGFzdCBibG9jayBkZWZpbmVkIGJ5IGRlZmF1bHRcbiAgICB2YXIgZGVmYXVsdHM7XG4gICAgaWYgKGlzQXJyYXkoZmFsbGJhY2tMb2NhbGUpKSB7XG4gICAgICBkZWZhdWx0cyA9IGZhbGxiYWNrTG9jYWxlO1xuICAgIH0gZWxzZSBpZiAoaXNPYmplY3QoZmFsbGJhY2tMb2NhbGUpKSB7XG4gICAgICAvKiAkRmxvd0ZpeE1lICovXG4gICAgICBpZiAoZmFsbGJhY2tMb2NhbGVbJ2RlZmF1bHQnXSkge1xuICAgICAgICBkZWZhdWx0cyA9IGZhbGxiYWNrTG9jYWxlWydkZWZhdWx0J107XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkZWZhdWx0cyA9IG51bGw7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGRlZmF1bHRzID0gZmFsbGJhY2tMb2NhbGU7XG4gICAgfVxuXG4gICAgLy8gY29udmVydCBkZWZhdWx0cyB0byBhcnJheVxuICAgIGlmIChpc1N0cmluZyhkZWZhdWx0cykpIHtcbiAgICAgIGJsb2NrID0gW2RlZmF1bHRzXTtcbiAgICB9IGVsc2Uge1xuICAgICAgYmxvY2sgPSBkZWZhdWx0cztcbiAgICB9XG4gICAgaWYgKGJsb2NrKSB7XG4gICAgICB0aGlzLl9hcHBlbmRCbG9ja1RvQ2hhaW4oXG4gICAgICAgIGNoYWluLFxuICAgICAgICBibG9jayxcbiAgICAgICAgbnVsbFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5fbG9jYWxlQ2hhaW5DYWNoZVtzdGFydF0gPSBjaGFpbjtcbiAgfVxuICByZXR1cm4gY2hhaW5cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl90cmFuc2xhdGUgPSBmdW5jdGlvbiBfdHJhbnNsYXRlIChcbiAgbWVzc2FnZXMsXG4gIGxvY2FsZSxcbiAgZmFsbGJhY2ssXG4gIGtleSxcbiAgaG9zdCxcbiAgaW50ZXJwb2xhdGVNb2RlLFxuICBhcmdzXG4pIHtcbiAgdmFyIGNoYWluID0gdGhpcy5fZ2V0TG9jYWxlQ2hhaW4obG9jYWxlLCBmYWxsYmFjayk7XG4gIHZhciByZXM7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgY2hhaW4ubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgc3RlcCA9IGNoYWluW2ldO1xuICAgIHJlcyA9XG4gICAgICB0aGlzLl9pbnRlcnBvbGF0ZShzdGVwLCBtZXNzYWdlc1tzdGVwXSwga2V5LCBob3N0LCBpbnRlcnBvbGF0ZU1vZGUsIGFyZ3MsIFtrZXldKTtcbiAgICBpZiAoIWlzTnVsbChyZXMpKSB7XG4gICAgICBpZiAoc3RlcCAhPT0gbG9jYWxlICYmIHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkgJiYgIXRoaXMuX2lzU2lsZW50RmFsbGJhY2tXYXJuKGtleSkpIHtcbiAgICAgICAgd2FybigoXCJGYWxsIGJhY2sgdG8gdHJhbnNsYXRlIHRoZSBrZXlwYXRoICdcIiArIGtleSArIFwiJyB3aXRoICdcIiArIHN0ZXAgKyBcIicgbG9jYWxlLlwiKSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmVzXG4gICAgfVxuICB9XG4gIHJldHVybiBudWxsXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5fdCA9IGZ1bmN0aW9uIF90IChrZXksIF9sb2NhbGUsIG1lc3NhZ2VzLCBob3N0KSB7XG4gICAgdmFyIHJlZjtcblxuICAgIHZhciB2YWx1ZXMgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDQ7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSB2YWx1ZXNbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyA0IF07XG4gIGlmICgha2V5KSB7IHJldHVybiAnJyB9XG5cbiAgdmFyIHBhcnNlZEFyZ3MgPSBwYXJzZUFyZ3MuYXBwbHkodm9pZCAwLCB2YWx1ZXMpO1xuICBpZih0aGlzLl9lc2NhcGVQYXJhbWV0ZXJIdG1sKSB7XG4gICAgcGFyc2VkQXJncy5wYXJhbXMgPSBlc2NhcGVQYXJhbXMocGFyc2VkQXJncy5wYXJhbXMpO1xuICB9XG5cbiAgdmFyIGxvY2FsZSA9IHBhcnNlZEFyZ3MubG9jYWxlIHx8IF9sb2NhbGU7XG5cbiAgdmFyIHJldCA9IHRoaXMuX3RyYW5zbGF0ZShcbiAgICBtZXNzYWdlcywgbG9jYWxlLCB0aGlzLmZhbGxiYWNrTG9jYWxlLCBrZXksXG4gICAgaG9zdCwgJ3N0cmluZycsIHBhcnNlZEFyZ3MucGFyYW1zXG4gICk7XG4gIGlmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdChyZXQpKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkgJiYgIXRoaXMuX2lzU2lsZW50RmFsbGJhY2tXYXJuKGtleSkpIHtcbiAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvIHRyYW5zbGF0ZSB0aGUga2V5cGF0aCAnXCIgKyBrZXkgKyBcIicgd2l0aCByb290IGxvY2FsZS5cIikpO1xuICAgIH1cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgICBpZiAoIXRoaXMuX3Jvb3QpIHsgdGhyb3cgRXJyb3IoJ3VuZXhwZWN0ZWQgZXJyb3InKSB9XG4gICAgcmV0dXJuIChyZWYgPSB0aGlzLl9yb290KS4kdC5hcHBseShyZWYsIFsga2V5IF0uY29uY2F0KCB2YWx1ZXMgKSlcbiAgfSBlbHNlIHtcbiAgICByZXQgPSB0aGlzLl93YXJuRGVmYXVsdChsb2NhbGUsIGtleSwgcmV0LCBob3N0LCB2YWx1ZXMsICdzdHJpbmcnKTtcbiAgICBpZiAodGhpcy5fcG9zdFRyYW5zbGF0aW9uICYmIHJldCAhPT0gbnVsbCAmJiByZXQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0ID0gdGhpcy5fcG9zdFRyYW5zbGF0aW9uKHJldCwga2V5KTtcbiAgICB9XG4gICAgcmV0dXJuIHJldFxuICB9XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS50ID0gZnVuY3Rpb24gdCAoa2V5KSB7XG4gICAgdmFyIHJlZjtcblxuICAgIHZhciB2YWx1ZXMgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSB2YWx1ZXNbIGxlbiBdID0gYXJndW1lbnRzWyBsZW4gKyAxIF07XG4gIHJldHVybiAocmVmID0gdGhpcykuX3QuYXBwbHkocmVmLCBbIGtleSwgdGhpcy5sb2NhbGUsIHRoaXMuX2dldE1lc3NhZ2VzKCksIG51bGwgXS5jb25jYXQoIHZhbHVlcyApKVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2kgPSBmdW5jdGlvbiBfaSAoa2V5LCBsb2NhbGUsIG1lc3NhZ2VzLCBob3N0LCB2YWx1ZXMpIHtcbiAgdmFyIHJldCA9XG4gICAgdGhpcy5fdHJhbnNsYXRlKG1lc3NhZ2VzLCBsb2NhbGUsIHRoaXMuZmFsbGJhY2tMb2NhbGUsIGtleSwgaG9zdCwgJ3JhdycsIHZhbHVlcyk7XG4gIGlmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdChyZXQpKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkpIHtcbiAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvIGludGVycG9sYXRlIHRoZSBrZXlwYXRoICdcIiArIGtleSArIFwiJyB3aXRoIHJvb3QgbG9jYWxlLlwiKSk7XG4gICAgfVxuICAgIGlmICghdGhpcy5fcm9vdCkgeyB0aHJvdyBFcnJvcigndW5leHBlY3RlZCBlcnJvcicpIH1cbiAgICByZXR1cm4gdGhpcy5fcm9vdC4kaTE4bi5pKGtleSwgbG9jYWxlLCB2YWx1ZXMpXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHRoaXMuX3dhcm5EZWZhdWx0KGxvY2FsZSwga2V5LCByZXQsIGhvc3QsIFt2YWx1ZXNdLCAncmF3JylcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuaSA9IGZ1bmN0aW9uIGkgKGtleSwgbG9jYWxlLCB2YWx1ZXMpIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gIGlmICgha2V5KSB7IHJldHVybiAnJyB9XG5cbiAgaWYgKCFpc1N0cmluZyhsb2NhbGUpKSB7XG4gICAgbG9jYWxlID0gdGhpcy5sb2NhbGU7XG4gIH1cblxuICByZXR1cm4gdGhpcy5faShrZXksIGxvY2FsZSwgdGhpcy5fZ2V0TWVzc2FnZXMoKSwgbnVsbCwgdmFsdWVzKVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX3RjID0gZnVuY3Rpb24gX3RjIChcbiAga2V5LFxuICBfbG9jYWxlLFxuICBtZXNzYWdlcyxcbiAgaG9zdCxcbiAgY2hvaWNlXG4pIHtcbiAgICB2YXIgcmVmO1xuXG4gICAgdmFyIHZhbHVlcyA9IFtdLCBsZW4gPSBhcmd1bWVudHMubGVuZ3RoIC0gNTtcbiAgICB3aGlsZSAoIGxlbi0tID4gMCApIHZhbHVlc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiArIDUgXTtcbiAgaWYgKCFrZXkpIHsgcmV0dXJuICcnIH1cbiAgaWYgKGNob2ljZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgY2hvaWNlID0gMTtcbiAgfVxuXG4gIHZhciBwcmVkZWZpbmVkID0geyAnY291bnQnOiBjaG9pY2UsICduJzogY2hvaWNlIH07XG4gIHZhciBwYXJzZWRBcmdzID0gcGFyc2VBcmdzLmFwcGx5KHZvaWQgMCwgdmFsdWVzKTtcbiAgcGFyc2VkQXJncy5wYXJhbXMgPSBPYmplY3QuYXNzaWduKHByZWRlZmluZWQsIHBhcnNlZEFyZ3MucGFyYW1zKTtcbiAgdmFsdWVzID0gcGFyc2VkQXJncy5sb2NhbGUgPT09IG51bGwgPyBbcGFyc2VkQXJncy5wYXJhbXNdIDogW3BhcnNlZEFyZ3MubG9jYWxlLCBwYXJzZWRBcmdzLnBhcmFtc107XG4gIHJldHVybiB0aGlzLmZldGNoQ2hvaWNlKChyZWYgPSB0aGlzKS5fdC5hcHBseShyZWYsIFsga2V5LCBfbG9jYWxlLCBtZXNzYWdlcywgaG9zdCBdLmNvbmNhdCggdmFsdWVzICkpLCBjaG9pY2UpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5mZXRjaENob2ljZSA9IGZ1bmN0aW9uIGZldGNoQ2hvaWNlIChtZXNzYWdlLCBjaG9pY2UpIHtcbiAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gIGlmICghbWVzc2FnZSB8fCAhaXNTdHJpbmcobWVzc2FnZSkpIHsgcmV0dXJuIG51bGwgfVxuICB2YXIgY2hvaWNlcyA9IG1lc3NhZ2Uuc3BsaXQoJ3wnKTtcblxuICBjaG9pY2UgPSB0aGlzLmdldENob2ljZUluZGV4KGNob2ljZSwgY2hvaWNlcy5sZW5ndGgpO1xuICBpZiAoIWNob2ljZXNbY2hvaWNlXSkgeyByZXR1cm4gbWVzc2FnZSB9XG4gIHJldHVybiBjaG9pY2VzW2Nob2ljZV0udHJpbSgpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS50YyA9IGZ1bmN0aW9uIHRjIChrZXksIGNob2ljZSkge1xuICAgIHZhciByZWY7XG5cbiAgICB2YXIgdmFsdWVzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSAyO1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgdmFsdWVzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMiBdO1xuICByZXR1cm4gKHJlZiA9IHRoaXMpLl90Yy5hcHBseShyZWYsIFsga2V5LCB0aGlzLmxvY2FsZSwgdGhpcy5fZ2V0TWVzc2FnZXMoKSwgbnVsbCwgY2hvaWNlIF0uY29uY2F0KCB2YWx1ZXMgKSlcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl90ZSA9IGZ1bmN0aW9uIF90ZSAoa2V5LCBsb2NhbGUsIG1lc3NhZ2VzKSB7XG4gICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDM7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMyBdO1xuXG4gIHZhciBfbG9jYWxlID0gcGFyc2VBcmdzLmFwcGx5KHZvaWQgMCwgYXJncykubG9jYWxlIHx8IGxvY2FsZTtcbiAgcmV0dXJuIHRoaXMuX2V4aXN0KG1lc3NhZ2VzW19sb2NhbGVdLCBrZXkpXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS50ZSA9IGZ1bmN0aW9uIHRlIChrZXksIGxvY2FsZSkge1xuICByZXR1cm4gdGhpcy5fdGUoa2V5LCB0aGlzLmxvY2FsZSwgdGhpcy5fZ2V0TWVzc2FnZXMoKSwgbG9jYWxlKVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuZ2V0TG9jYWxlTWVzc2FnZSA9IGZ1bmN0aW9uIGdldExvY2FsZU1lc3NhZ2UgKGxvY2FsZSkge1xuICByZXR1cm4gbG9vc2VDbG9uZSh0aGlzLl92bS5tZXNzYWdlc1tsb2NhbGVdIHx8IHt9KVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuc2V0TG9jYWxlTWVzc2FnZSA9IGZ1bmN0aW9uIHNldExvY2FsZU1lc3NhZ2UgKGxvY2FsZSwgbWVzc2FnZSkge1xuICBpZiAodGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UgPT09ICd3YXJuJyB8fCB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSA9PT0gJ2Vycm9yJykge1xuICAgIHRoaXMuX2NoZWNrTG9jYWxlTWVzc2FnZShsb2NhbGUsIHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlLCBtZXNzYWdlKTtcbiAgfVxuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLm1lc3NhZ2VzLCBsb2NhbGUsIG1lc3NhZ2UpO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUubWVyZ2VMb2NhbGVNZXNzYWdlID0gZnVuY3Rpb24gbWVyZ2VMb2NhbGVNZXNzYWdlIChsb2NhbGUsIG1lc3NhZ2UpIHtcbiAgaWYgKHRoaXMuX3dhcm5IdG1sSW5NZXNzYWdlID09PSAnd2FybicgfHwgdGhpcy5fd2Fybkh0bWxJbk1lc3NhZ2UgPT09ICdlcnJvcicpIHtcbiAgICB0aGlzLl9jaGVja0xvY2FsZU1lc3NhZ2UobG9jYWxlLCB0aGlzLl93YXJuSHRtbEluTWVzc2FnZSwgbWVzc2FnZSk7XG4gIH1cbiAgdGhpcy5fdm0uJHNldCh0aGlzLl92bS5tZXNzYWdlcywgbG9jYWxlLCBtZXJnZShcbiAgICB0eXBlb2YgdGhpcy5fdm0ubWVzc2FnZXNbbG9jYWxlXSAhPT0gJ3VuZGVmaW5lZCcgJiYgT2JqZWN0LmtleXModGhpcy5fdm0ubWVzc2FnZXNbbG9jYWxlXSkubGVuZ3RoXG4gICAgICA/IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuX3ZtLm1lc3NhZ2VzW2xvY2FsZV0pXG4gICAgICA6IHt9LFxuICAgIG1lc3NhZ2VcbiAgKSk7XG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5nZXREYXRlVGltZUZvcm1hdCA9IGZ1bmN0aW9uIGdldERhdGVUaW1lRm9ybWF0IChsb2NhbGUpIHtcbiAgcmV0dXJuIGxvb3NlQ2xvbmUodGhpcy5fdm0uZGF0ZVRpbWVGb3JtYXRzW2xvY2FsZV0gfHwge30pXG59O1xuXG5WdWVJMThuLnByb3RvdHlwZS5zZXREYXRlVGltZUZvcm1hdCA9IGZ1bmN0aW9uIHNldERhdGVUaW1lRm9ybWF0IChsb2NhbGUsIGZvcm1hdCkge1xuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLmRhdGVUaW1lRm9ybWF0cywgbG9jYWxlLCBmb3JtYXQpO1xuICB0aGlzLl9jbGVhckRhdGVUaW1lRm9ybWF0KGxvY2FsZSwgZm9ybWF0KTtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLm1lcmdlRGF0ZVRpbWVGb3JtYXQgPSBmdW5jdGlvbiBtZXJnZURhdGVUaW1lRm9ybWF0IChsb2NhbGUsIGZvcm1hdCkge1xuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLmRhdGVUaW1lRm9ybWF0cywgbG9jYWxlLCBtZXJnZSh0aGlzLl92bS5kYXRlVGltZUZvcm1hdHNbbG9jYWxlXSB8fCB7fSwgZm9ybWF0KSk7XG4gIHRoaXMuX2NsZWFyRGF0ZVRpbWVGb3JtYXQobG9jYWxlLCBmb3JtYXQpO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2NsZWFyRGF0ZVRpbWVGb3JtYXQgPSBmdW5jdGlvbiBfY2xlYXJEYXRlVGltZUZvcm1hdCAobG9jYWxlLCBmb3JtYXQpIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF1dG9maXgvcHJlZmVyLWNvbnN0XG4gIGZvciAodmFyIGtleSBpbiBmb3JtYXQpIHtcbiAgICB2YXIgaWQgPSBsb2NhbGUgKyBcIl9fXCIgKyBrZXk7XG5cbiAgICBpZiAoIXRoaXMuX2RhdGVUaW1lRm9ybWF0dGVycy5oYXNPd25Qcm9wZXJ0eShpZCkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuXG4gICAgZGVsZXRlIHRoaXMuX2RhdGVUaW1lRm9ybWF0dGVyc1tpZF07XG4gIH1cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9sb2NhbGl6ZURhdGVUaW1lID0gZnVuY3Rpb24gX2xvY2FsaXplRGF0ZVRpbWUgKFxuICB2YWx1ZSxcbiAgbG9jYWxlLFxuICBmYWxsYmFjayxcbiAgZGF0ZVRpbWVGb3JtYXRzLFxuICBrZXlcbikge1xuICB2YXIgX2xvY2FsZSA9IGxvY2FsZTtcbiAgdmFyIGZvcm1hdHMgPSBkYXRlVGltZUZvcm1hdHNbX2xvY2FsZV07XG5cbiAgdmFyIGNoYWluID0gdGhpcy5fZ2V0TG9jYWxlQ2hhaW4obG9jYWxlLCBmYWxsYmFjayk7XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgY2hhaW4ubGVuZ3RoOyBpKyspIHtcbiAgICB2YXIgY3VycmVudCA9IF9sb2NhbGU7XG4gICAgdmFyIHN0ZXAgPSBjaGFpbltpXTtcbiAgICBmb3JtYXRzID0gZGF0ZVRpbWVGb3JtYXRzW3N0ZXBdO1xuICAgIF9sb2NhbGUgPSBzdGVwO1xuICAgIC8vIGZhbGxiYWNrIGxvY2FsZVxuICAgIGlmIChpc051bGwoZm9ybWF0cykgfHwgaXNOdWxsKGZvcm1hdHNba2V5XSkpIHtcbiAgICAgIGlmIChzdGVwICE9PSBsb2NhbGUgJiYgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFja1dhcm4oa2V5KSkge1xuICAgICAgICB3YXJuKChcIkZhbGwgYmFjayB0byAnXCIgKyBzdGVwICsgXCInIGRhdGV0aW1lIGZvcm1hdHMgZnJvbSAnXCIgKyBjdXJyZW50ICsgXCInIGRhdGV0aW1lIGZvcm1hdHMuXCIpKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgYnJlYWtcbiAgICB9XG4gIH1cblxuICBpZiAoaXNOdWxsKGZvcm1hdHMpIHx8IGlzTnVsbChmb3JtYXRzW2tleV0pKSB7XG4gICAgcmV0dXJuIG51bGxcbiAgfSBlbHNlIHtcbiAgICB2YXIgZm9ybWF0ID0gZm9ybWF0c1trZXldO1xuICAgIHZhciBpZCA9IF9sb2NhbGUgKyBcIl9fXCIgKyBrZXk7XG4gICAgdmFyIGZvcm1hdHRlciA9IHRoaXMuX2RhdGVUaW1lRm9ybWF0dGVyc1tpZF07XG4gICAgaWYgKCFmb3JtYXR0ZXIpIHtcbiAgICAgIGZvcm1hdHRlciA9IHRoaXMuX2RhdGVUaW1lRm9ybWF0dGVyc1tpZF0gPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChfbG9jYWxlLCBmb3JtYXQpO1xuICAgIH1cbiAgICByZXR1cm4gZm9ybWF0dGVyLmZvcm1hdCh2YWx1ZSlcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2QgPSBmdW5jdGlvbiBfZCAodmFsdWUsIGxvY2FsZSwga2V5KSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhVnVlSTE4bi5hdmFpbGFiaWxpdGllcy5kYXRlVGltZUZvcm1hdCkge1xuICAgIHdhcm4oJ0Nhbm5vdCBmb3JtYXQgYSBEYXRlIHZhbHVlIGR1ZSB0byBub3Qgc3VwcG9ydGVkIEludGwuRGF0ZVRpbWVGb3JtYXQuJyk7XG4gICAgcmV0dXJuICcnXG4gIH1cblxuICBpZiAoIWtleSkge1xuICAgIHJldHVybiBuZXcgSW50bC5EYXRlVGltZUZvcm1hdChsb2NhbGUpLmZvcm1hdCh2YWx1ZSlcbiAgfVxuXG4gIHZhciByZXQgPVxuICAgIHRoaXMuX2xvY2FsaXplRGF0ZVRpbWUodmFsdWUsIGxvY2FsZSwgdGhpcy5mYWxsYmFja0xvY2FsZSwgdGhpcy5fZ2V0RGF0ZVRpbWVGb3JtYXRzKCksIGtleSk7XG4gIGlmICh0aGlzLl9pc0ZhbGxiYWNrUm9vdChyZXQpKSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicgJiYgIXRoaXMuX2lzU2lsZW50VHJhbnNsYXRpb25XYXJuKGtleSkgJiYgIXRoaXMuX2lzU2lsZW50RmFsbGJhY2tXYXJuKGtleSkpIHtcbiAgICAgIHdhcm4oKFwiRmFsbCBiYWNrIHRvIGRhdGV0aW1lIGxvY2FsaXphdGlvbiBvZiByb290OiBrZXkgJ1wiICsga2V5ICsgXCInLlwiKSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICghdGhpcy5fcm9vdCkgeyB0aHJvdyBFcnJvcigndW5leHBlY3RlZCBlcnJvcicpIH1cbiAgICByZXR1cm4gdGhpcy5fcm9vdC4kaTE4bi5kKHZhbHVlLCBrZXksIGxvY2FsZSlcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcmV0IHx8ICcnXG4gIH1cbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLmQgPSBmdW5jdGlvbiBkICh2YWx1ZSkge1xuICAgIHZhciBhcmdzID0gW10sIGxlbiA9IGFyZ3VtZW50cy5sZW5ndGggLSAxO1xuICAgIHdoaWxlICggbGVuLS0gPiAwICkgYXJnc1sgbGVuIF0gPSBhcmd1bWVudHNbIGxlbiArIDEgXTtcblxuICB2YXIgbG9jYWxlID0gdGhpcy5sb2NhbGU7XG4gIHZhciBrZXkgPSBudWxsO1xuXG4gIGlmIChhcmdzLmxlbmd0aCA9PT0gMSkge1xuICAgIGlmIChpc1N0cmluZyhhcmdzWzBdKSkge1xuICAgICAga2V5ID0gYXJnc1swXTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KGFyZ3NbMF0pKSB7XG4gICAgICBpZiAoYXJnc1swXS5sb2NhbGUpIHtcbiAgICAgICAgbG9jYWxlID0gYXJnc1swXS5sb2NhbGU7XG4gICAgICB9XG4gICAgICBpZiAoYXJnc1swXS5rZXkpIHtcbiAgICAgICAga2V5ID0gYXJnc1swXS5rZXk7XG4gICAgICB9XG4gICAgfVxuICB9IGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09PSAyKSB7XG4gICAgaWYgKGlzU3RyaW5nKGFyZ3NbMF0pKSB7XG4gICAgICBrZXkgPSBhcmdzWzBdO1xuICAgIH1cbiAgICBpZiAoaXNTdHJpbmcoYXJnc1sxXSkpIHtcbiAgICAgIGxvY2FsZSA9IGFyZ3NbMV07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRoaXMuX2QodmFsdWUsIGxvY2FsZSwga2V5KVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuZ2V0TnVtYmVyRm9ybWF0ID0gZnVuY3Rpb24gZ2V0TnVtYmVyRm9ybWF0IChsb2NhbGUpIHtcbiAgcmV0dXJuIGxvb3NlQ2xvbmUodGhpcy5fdm0ubnVtYmVyRm9ybWF0c1tsb2NhbGVdIHx8IHt9KVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuc2V0TnVtYmVyRm9ybWF0ID0gZnVuY3Rpb24gc2V0TnVtYmVyRm9ybWF0IChsb2NhbGUsIGZvcm1hdCkge1xuICB0aGlzLl92bS4kc2V0KHRoaXMuX3ZtLm51bWJlckZvcm1hdHMsIGxvY2FsZSwgZm9ybWF0KTtcbiAgdGhpcy5fY2xlYXJOdW1iZXJGb3JtYXQobG9jYWxlLCBmb3JtYXQpO1xufTtcblxuVnVlSTE4bi5wcm90b3R5cGUubWVyZ2VOdW1iZXJGb3JtYXQgPSBmdW5jdGlvbiBtZXJnZU51bWJlckZvcm1hdCAobG9jYWxlLCBmb3JtYXQpIHtcbiAgdGhpcy5fdm0uJHNldCh0aGlzLl92bS5udW1iZXJGb3JtYXRzLCBsb2NhbGUsIG1lcmdlKHRoaXMuX3ZtLm51bWJlckZvcm1hdHNbbG9jYWxlXSB8fCB7fSwgZm9ybWF0KSk7XG4gIHRoaXMuX2NsZWFyTnVtYmVyRm9ybWF0KGxvY2FsZSwgZm9ybWF0KTtcbn07XG5cblZ1ZUkxOG4ucHJvdG90eXBlLl9jbGVhck51bWJlckZvcm1hdCA9IGZ1bmN0aW9uIF9jbGVhck51bWJlckZvcm1hdCAobG9jYWxlLCBmb3JtYXQpIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF1dG9maXgvcHJlZmVyLWNvbnN0XG4gIGZvciAodmFyIGtleSBpbiBmb3JtYXQpIHtcbiAgICB2YXIgaWQgPSBsb2NhbGUgKyBcIl9fXCIgKyBrZXk7XG5cbiAgICBpZiAoIXRoaXMuX251bWJlckZvcm1hdHRlcnMuaGFzT3duUHJvcGVydHkoaWQpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cblxuICAgIGRlbGV0ZSB0aGlzLl9udW1iZXJGb3JtYXR0ZXJzW2lkXTtcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX2dldE51bWJlckZvcm1hdHRlciA9IGZ1bmN0aW9uIF9nZXROdW1iZXJGb3JtYXR0ZXIgKFxuICB2YWx1ZSxcbiAgbG9jYWxlLFxuICBmYWxsYmFjayxcbiAgbnVtYmVyRm9ybWF0cyxcbiAga2V5LFxuICBvcHRpb25zXG4pIHtcbiAgdmFyIF9sb2NhbGUgPSBsb2NhbGU7XG4gIHZhciBmb3JtYXRzID0gbnVtYmVyRm9ybWF0c1tfbG9jYWxlXTtcblxuICB2YXIgY2hhaW4gPSB0aGlzLl9nZXRMb2NhbGVDaGFpbihsb2NhbGUsIGZhbGxiYWNrKTtcbiAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGFpbi5sZW5ndGg7IGkrKykge1xuICAgIHZhciBjdXJyZW50ID0gX2xvY2FsZTtcbiAgICB2YXIgc3RlcCA9IGNoYWluW2ldO1xuICAgIGZvcm1hdHMgPSBudW1iZXJGb3JtYXRzW3N0ZXBdO1xuICAgIF9sb2NhbGUgPSBzdGVwO1xuICAgIC8vIGZhbGxiYWNrIGxvY2FsZVxuICAgIGlmIChpc051bGwoZm9ybWF0cykgfHwgaXNOdWxsKGZvcm1hdHNba2V5XSkpIHtcbiAgICAgIGlmIChzdGVwICE9PSBsb2NhbGUgJiYgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJyAmJiAhdGhpcy5faXNTaWxlbnRUcmFuc2xhdGlvbldhcm4oa2V5KSAmJiAhdGhpcy5faXNTaWxlbnRGYWxsYmFja1dhcm4oa2V5KSkge1xuICAgICAgICB3YXJuKChcIkZhbGwgYmFjayB0byAnXCIgKyBzdGVwICsgXCInIG51bWJlciBmb3JtYXRzIGZyb20gJ1wiICsgY3VycmVudCArIFwiJyBudW1iZXIgZm9ybWF0cy5cIikpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBicmVha1xuICAgIH1cbiAgfVxuXG4gIGlmIChpc051bGwoZm9ybWF0cykgfHwgaXNOdWxsKGZvcm1hdHNba2V5XSkpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9IGVsc2Uge1xuICAgIHZhciBmb3JtYXQgPSBmb3JtYXRzW2tleV07XG5cbiAgICB2YXIgZm9ybWF0dGVyO1xuICAgIGlmIChvcHRpb25zKSB7XG4gICAgICAvLyBJZiBvcHRpb25zIHNwZWNpZmllZCAtIGNyZWF0ZSBvbmUgdGltZSBudW1iZXIgZm9ybWF0dGVyXG4gICAgICBmb3JtYXR0ZXIgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQoX2xvY2FsZSwgT2JqZWN0LmFzc2lnbih7fSwgZm9ybWF0LCBvcHRpb25zKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZhciBpZCA9IF9sb2NhbGUgKyBcIl9fXCIgKyBrZXk7XG4gICAgICBmb3JtYXR0ZXIgPSB0aGlzLl9udW1iZXJGb3JtYXR0ZXJzW2lkXTtcbiAgICAgIGlmICghZm9ybWF0dGVyKSB7XG4gICAgICAgIGZvcm1hdHRlciA9IHRoaXMuX251bWJlckZvcm1hdHRlcnNbaWRdID0gbmV3IEludGwuTnVtYmVyRm9ybWF0KF9sb2NhbGUsIGZvcm1hdCk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmb3JtYXR0ZXJcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX24gPSBmdW5jdGlvbiBfbiAodmFsdWUsIGxvY2FsZSwga2V5LCBvcHRpb25zKSB7XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICBpZiAoIVZ1ZUkxOG4uYXZhaWxhYmlsaXRpZXMubnVtYmVyRm9ybWF0KSB7XG4gICAgaWYgKHByb2Nlc3MuZW52Lk5PREVfRU5WICE9PSAncHJvZHVjdGlvbicpIHtcbiAgICAgIHdhcm4oJ0Nhbm5vdCBmb3JtYXQgYSBOdW1iZXIgdmFsdWUgZHVlIHRvIG5vdCBzdXBwb3J0ZWQgSW50bC5OdW1iZXJGb3JtYXQuJyk7XG4gICAgfVxuICAgIHJldHVybiAnJ1xuICB9XG5cbiAgaWYgKCFrZXkpIHtcbiAgICB2YXIgbmYgPSAhb3B0aW9ucyA/IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUpIDogbmV3IEludGwuTnVtYmVyRm9ybWF0KGxvY2FsZSwgb3B0aW9ucyk7XG4gICAgcmV0dXJuIG5mLmZvcm1hdCh2YWx1ZSlcbiAgfVxuXG4gIHZhciBmb3JtYXR0ZXIgPSB0aGlzLl9nZXROdW1iZXJGb3JtYXR0ZXIodmFsdWUsIGxvY2FsZSwgdGhpcy5mYWxsYmFja0xvY2FsZSwgdGhpcy5fZ2V0TnVtYmVyRm9ybWF0cygpLCBrZXksIG9wdGlvbnMpO1xuICB2YXIgcmV0ID0gZm9ybWF0dGVyICYmIGZvcm1hdHRlci5mb3JtYXQodmFsdWUpO1xuICBpZiAodGhpcy5faXNGYWxsYmFja1Jvb3QocmV0KSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICF0aGlzLl9pc1NpbGVudFRyYW5zbGF0aW9uV2FybihrZXkpICYmICF0aGlzLl9pc1NpbGVudEZhbGxiYWNrV2FybihrZXkpKSB7XG4gICAgICB3YXJuKChcIkZhbGwgYmFjayB0byBudW1iZXIgbG9jYWxpemF0aW9uIG9mIHJvb3Q6IGtleSAnXCIgKyBrZXkgKyBcIicuXCIpKTtcbiAgICB9XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGlmICovXG4gICAgaWYgKCF0aGlzLl9yb290KSB7IHRocm93IEVycm9yKCd1bmV4cGVjdGVkIGVycm9yJykgfVxuICAgIHJldHVybiB0aGlzLl9yb290LiRpMThuLm4odmFsdWUsIE9iamVjdC5hc3NpZ24oe30sIHsga2V5OiBrZXksIGxvY2FsZTogbG9jYWxlIH0sIG9wdGlvbnMpKVxuICB9IGVsc2Uge1xuICAgIHJldHVybiByZXQgfHwgJydcbiAgfVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUubiA9IGZ1bmN0aW9uIG4gKHZhbHVlKSB7XG4gICAgdmFyIGFyZ3MgPSBbXSwgbGVuID0gYXJndW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgd2hpbGUgKCBsZW4tLSA+IDAgKSBhcmdzWyBsZW4gXSA9IGFyZ3VtZW50c1sgbGVuICsgMSBdO1xuXG4gIHZhciBsb2NhbGUgPSB0aGlzLmxvY2FsZTtcbiAgdmFyIGtleSA9IG51bGw7XG4gIHZhciBvcHRpb25zID0gbnVsbDtcblxuICBpZiAoYXJncy5sZW5ndGggPT09IDEpIHtcbiAgICBpZiAoaXNTdHJpbmcoYXJnc1swXSkpIHtcbiAgICAgIGtleSA9IGFyZ3NbMF07XG4gICAgfSBlbHNlIGlmIChpc09iamVjdChhcmdzWzBdKSkge1xuICAgICAgaWYgKGFyZ3NbMF0ubG9jYWxlKSB7XG4gICAgICAgIGxvY2FsZSA9IGFyZ3NbMF0ubG9jYWxlO1xuICAgICAgfVxuICAgICAgaWYgKGFyZ3NbMF0ua2V5KSB7XG4gICAgICAgIGtleSA9IGFyZ3NbMF0ua2V5O1xuICAgICAgfVxuXG4gICAgICAvLyBGaWx0ZXIgb3V0IG51bWJlciBmb3JtYXQgb3B0aW9ucyBvbmx5XG4gICAgICBvcHRpb25zID0gT2JqZWN0LmtleXMoYXJnc1swXSkucmVkdWNlKGZ1bmN0aW9uIChhY2MsIGtleSkge1xuICAgICAgICAgIHZhciBvYmo7XG5cbiAgICAgICAgaWYgKGluY2x1ZGVzKG51bWJlckZvcm1hdEtleXMsIGtleSkpIHtcbiAgICAgICAgICByZXR1cm4gT2JqZWN0LmFzc2lnbih7fSwgYWNjLCAoIG9iaiA9IHt9LCBvYmpba2V5XSA9IGFyZ3NbMF1ba2V5XSwgb2JqICkpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFjY1xuICAgICAgfSwgbnVsbCk7XG4gICAgfVxuICB9IGVsc2UgaWYgKGFyZ3MubGVuZ3RoID09PSAyKSB7XG4gICAgaWYgKGlzU3RyaW5nKGFyZ3NbMF0pKSB7XG4gICAgICBrZXkgPSBhcmdzWzBdO1xuICAgIH1cbiAgICBpZiAoaXNTdHJpbmcoYXJnc1sxXSkpIHtcbiAgICAgIGxvY2FsZSA9IGFyZ3NbMV07XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRoaXMuX24odmFsdWUsIGxvY2FsZSwga2V5LCBvcHRpb25zKVxufTtcblxuVnVlSTE4bi5wcm90b3R5cGUuX250cCA9IGZ1bmN0aW9uIF9udHAgKHZhbHVlLCBsb2NhbGUsIGtleSwgb3B0aW9ucykge1xuICAvKiBpc3RhbmJ1bCBpZ25vcmUgaWYgKi9cbiAgaWYgKCFWdWVJMThuLmF2YWlsYWJpbGl0aWVzLm51bWJlckZvcm1hdCkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICB3YXJuKCdDYW5ub3QgZm9ybWF0IHRvIHBhcnRzIGEgTnVtYmVyIHZhbHVlIGR1ZSB0byBub3Qgc3VwcG9ydGVkIEludGwuTnVtYmVyRm9ybWF0LicpO1xuICAgIH1cbiAgICByZXR1cm4gW11cbiAgfVxuXG4gIGlmICgha2V5KSB7XG4gICAgdmFyIG5mID0gIW9wdGlvbnMgPyBuZXcgSW50bC5OdW1iZXJGb3JtYXQobG9jYWxlKSA6IG5ldyBJbnRsLk51bWJlckZvcm1hdChsb2NhbGUsIG9wdGlvbnMpO1xuICAgIHJldHVybiBuZi5mb3JtYXRUb1BhcnRzKHZhbHVlKVxuICB9XG5cbiAgdmFyIGZvcm1hdHRlciA9IHRoaXMuX2dldE51bWJlckZvcm1hdHRlcih2YWx1ZSwgbG9jYWxlLCB0aGlzLmZhbGxiYWNrTG9jYWxlLCB0aGlzLl9nZXROdW1iZXJGb3JtYXRzKCksIGtleSwgb3B0aW9ucyk7XG4gIHZhciByZXQgPSBmb3JtYXR0ZXIgJiYgZm9ybWF0dGVyLmZvcm1hdFRvUGFydHModmFsdWUpO1xuICBpZiAodGhpcy5faXNGYWxsYmFja1Jvb3QocmV0KSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmICF0aGlzLl9pc1NpbGVudFRyYW5zbGF0aW9uV2FybihrZXkpKSB7XG4gICAgICB3YXJuKChcIkZhbGwgYmFjayB0byBmb3JtYXQgbnVtYmVyIHRvIHBhcnRzIG9mIHJvb3Q6IGtleSAnXCIgKyBrZXkgKyBcIicgLlwiKSk7XG4gICAgfVxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBpZiAqL1xuICAgIGlmICghdGhpcy5fcm9vdCkgeyB0aHJvdyBFcnJvcigndW5leHBlY3RlZCBlcnJvcicpIH1cbiAgICByZXR1cm4gdGhpcy5fcm9vdC4kaTE4bi5fbnRwKHZhbHVlLCBsb2NhbGUsIGtleSwgb3B0aW9ucylcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gcmV0IHx8IFtdXG4gIH1cbn07XG5cbk9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKCBWdWVJMThuLnByb3RvdHlwZSwgcHJvdG90eXBlQWNjZXNzb3JzICk7XG5cbnZhciBhdmFpbGFiaWxpdGllcztcbi8vICRGbG93Rml4TWVcbk9iamVjdC5kZWZpbmVQcm9wZXJ0eShWdWVJMThuLCAnYXZhaWxhYmlsaXRpZXMnLCB7XG4gIGdldDogZnVuY3Rpb24gZ2V0ICgpIHtcbiAgICBpZiAoIWF2YWlsYWJpbGl0aWVzKSB7XG4gICAgICB2YXIgaW50bERlZmluZWQgPSB0eXBlb2YgSW50bCAhPT0gJ3VuZGVmaW5lZCc7XG4gICAgICBhdmFpbGFiaWxpdGllcyA9IHtcbiAgICAgICAgZGF0ZVRpbWVGb3JtYXQ6IGludGxEZWZpbmVkICYmIHR5cGVvZiBJbnRsLkRhdGVUaW1lRm9ybWF0ICE9PSAndW5kZWZpbmVkJyxcbiAgICAgICAgbnVtYmVyRm9ybWF0OiBpbnRsRGVmaW5lZCAmJiB0eXBlb2YgSW50bC5OdW1iZXJGb3JtYXQgIT09ICd1bmRlZmluZWQnXG4gICAgICB9O1xuICAgIH1cblxuICAgIHJldHVybiBhdmFpbGFiaWxpdGllc1xuICB9XG59KTtcblxuVnVlSTE4bi5pbnN0YWxsID0gaW5zdGFsbDtcblZ1ZUkxOG4udmVyc2lvbiA9ICc4LjI3LjEnO1xuXG5leHBvcnQgZGVmYXVsdCBWdWVJMThuO1xuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///202\n")},,function(module,__webpack_exports__,__webpack_require__){"use strict";eval('\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ goTo; });\n__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ goto_Goto; });\n\n// NAMESPACE OBJECT: ./node_modules/vuetify/lib/services/goto/easing-patterns.js\nvar easing_patterns_namespaceObject = {};\n__webpack_require__.r(easing_patterns_namespaceObject);\n__webpack_require__.d(easing_patterns_namespaceObject, "linear", function() { return linear; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInQuad", function() { return easeInQuad; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutQuad", function() { return easeOutQuad; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutQuad", function() { return easeInOutQuad; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInCubic", function() { return easeInCubic; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutCubic", function() { return easeOutCubic; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutCubic", function() { return easeInOutCubic; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInQuart", function() { return easeInQuart; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutQuart", function() { return easeOutQuart; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutQuart", function() { return easeInOutQuart; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInQuint", function() { return easeInQuint; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeOutQuint", function() { return easeOutQuint; });\n__webpack_require__.d(easing_patterns_namespaceObject, "easeInOutQuint", function() { return easeInOutQuint; });\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.keys.js\nvar es6_object_keys = __webpack_require__(6);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.symbol.js\nvar es6_symbol = __webpack_require__(5);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.array.filter.js\nvar es6_array_filter = __webpack_require__(7);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.get-own-property-descriptor.js\nvar es6_object_get_own_property_descriptor = __webpack_require__(9);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es7.object.get-own-property-descriptors.js\nvar es7_object_get_own_property_descriptors = __webpack_require__(10);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.reflect.construct.js\nvar es6_reflect_construct = __webpack_require__(87);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js\nvar createClass = __webpack_require__(31);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js\nvar classCallCheck = __webpack_require__(30);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules\nvar inherits = __webpack_require__(48);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js + 1 modules\nvar possibleConstructorReturn = __webpack_require__(40);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js\nvar getPrototypeOf = __webpack_require__(26);\n\n// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js\nvar defineProperty = __webpack_require__(1);\n\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.object.to-string.js\nvar es6_object_to_string = __webpack_require__(17);\n\n// EXTERNAL MODULE: ./node_modules/vuetify/lib/services/service/index.js\nvar service = __webpack_require__(46);\n\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/services/goto/easing-patterns.js\n// linear\nvar linear = function linear(t) {\n return t;\n}; // accelerating from zero velocity\n\nvar easeInQuad = function easeInQuad(t) {\n return Math.pow(t, 2);\n}; // decelerating to zero velocity\n\nvar easeOutQuad = function easeOutQuad(t) {\n return t * (2 - t);\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutQuad = function easeInOutQuad(t) {\n return t < 0.5 ? 2 * Math.pow(t, 2) : -1 + (4 - 2 * t) * t;\n}; // accelerating from zero velocity\n\nvar easeInCubic = function easeInCubic(t) {\n return Math.pow(t, 3);\n}; // decelerating to zero velocity\n\nvar easeOutCubic = function easeOutCubic(t) {\n return Math.pow(--t, 3) + 1;\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutCubic = function easeInOutCubic(t) {\n return t < 0.5 ? 4 * Math.pow(t, 3) : (t - 1) * (2 * t - 2) * (2 * t - 2) + 1;\n}; // accelerating from zero velocity\n\nvar easeInQuart = function easeInQuart(t) {\n return Math.pow(t, 4);\n}; // decelerating to zero velocity\n\nvar easeOutQuart = function easeOutQuart(t) {\n return 1 - Math.pow(--t, 4);\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutQuart = function easeInOutQuart(t) {\n return t < 0.5 ? 8 * t * t * t * t : 1 - 8 * --t * t * t * t;\n}; // accelerating from zero velocity\n\nvar easeInQuint = function easeInQuint(t) {\n return Math.pow(t, 5);\n}; // decelerating to zero velocity\n\nvar easeOutQuint = function easeOutQuint(t) {\n return 1 + Math.pow(--t, 5);\n}; // acceleration until halfway, then deceleration\n\nvar easeInOutQuint = function easeInOutQuint(t) {\n return t < 0.5 ? 16 * Math.pow(t, 5) : 1 + 16 * Math.pow(--t, 5);\n};\n// EXTERNAL MODULE: ./node_modules/core-js/modules/es6.function.name.js\nvar es6_function_name = __webpack_require__(22);\n\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/services/goto/util.js\n\n// Return target\'s cumulative offset from the top\nfunction getOffset(target) {\n if (typeof target === \'number\') {\n return target;\n }\n\n var el = $(target);\n\n if (!el) {\n throw typeof target === \'string\' ? new Error("Target element \\"".concat(target, "\\" not found.")) : new TypeError("Target must be a Number/Selector/HTMLElement/VueComponent, received ".concat(type(target), " instead."));\n }\n\n var totalOffset = 0;\n\n while (el) {\n totalOffset += el.offsetTop;\n el = el.offsetParent;\n }\n\n return totalOffset;\n}\nfunction getContainer(container) {\n var el = $(container);\n if (el) return el;\n throw typeof container === \'string\' ? new Error("Container element \\"".concat(container, "\\" not found.")) : new TypeError("Container must be a Selector/HTMLElement/VueComponent, received ".concat(type(container), " instead."));\n}\n\nfunction type(el) {\n return el == null ? el : el.constructor.name;\n}\n\nfunction $(el) {\n if (typeof el === \'string\') {\n return document.querySelector(el);\n } else if (el && el._isVue) {\n return el.$el;\n } else if (el instanceof HTMLElement) {\n return el;\n } else {\n return null;\n }\n}\n// CONCATENATED MODULE: ./node_modules/vuetify/lib/services/goto/index.js\n\n\n\n\n\n\n\n\n\n\n\n\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\n\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\n// Extensions\n // Utilities\n\n\n\nfunction goTo(_target) {\n var _settings = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var settings = _objectSpread({\n container: document.scrollingElement || document.body || document.documentElement,\n duration: 500,\n offset: 0,\n easing: \'easeInOutCubic\',\n appOffset: true\n }, _settings);\n\n var container = getContainer(settings.container);\n /* istanbul ignore else */\n\n if (settings.appOffset && goTo.framework.application) {\n var isDrawer = container.classList.contains(\'v-navigation-drawer\');\n var isClipped = container.classList.contains(\'v-navigation-drawer--clipped\');\n var _goTo$framework$appli = goTo.framework.application,\n bar = _goTo$framework$appli.bar,\n top = _goTo$framework$appli.top;\n settings.offset += bar;\n /* istanbul ignore else */\n\n if (!isDrawer || isClipped) settings.offset += top;\n }\n\n var startTime = performance.now();\n var targetLocation;\n\n if (typeof _target === \'number\') {\n targetLocation = getOffset(_target) - settings.offset;\n } else {\n targetLocation = getOffset(_target) - getOffset(container) - settings.offset;\n }\n\n var startLocation = container.scrollTop;\n if (targetLocation === startLocation) return Promise.resolve(targetLocation);\n var ease = typeof settings.easing === \'function\' ? settings.easing : easing_patterns_namespaceObject[settings.easing];\n /* istanbul ignore else */\n\n if (!ease) throw new TypeError("Easing function \\"".concat(settings.easing, "\\" not found.")); // Cannot be tested properly in jsdom\n\n /* istanbul ignore next */\n\n return new Promise(function (resolve) {\n return requestAnimationFrame(function step(currentTime) {\n var timeElapsed = currentTime - startTime;\n var progress = Math.abs(settings.duration ? Math.min(timeElapsed / settings.duration, 1) : 1);\n container.scrollTop = Math.floor(startLocation + (targetLocation - startLocation) * ease(progress));\n var clientHeight = container === document.body ? document.documentElement.clientHeight : container.clientHeight;\n var reachBottom = clientHeight + container.scrollTop >= container.scrollHeight;\n\n if (progress === 1 || // Need to go lower but reach bottom\n targetLocation > container.scrollTop && reachBottom) {\n return resolve(targetLocation);\n }\n\n requestAnimationFrame(step);\n });\n });\n}\ngoTo.framework = {};\n\ngoTo.init = function () {};\n\nvar goto_Goto = /*#__PURE__*/function (_Service) {\n Object(inherits["a" /* default */])(Goto, _Service);\n\n var _super = _createSuper(Goto);\n\n function Goto() {\n var _this;\n\n Object(classCallCheck["a" /* default */])(this, Goto);\n\n _this = _super.call(this);\n return Object(possibleConstructorReturn["a" /* default */])(_this, goTo);\n }\n\n return Object(createClass["a" /* default */])(Goto);\n}(service["a" /* Service */]);\ngoto_Goto.property = \'goTo\';//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2dvdG8vZWFzaW5nLXBhdHRlcm5zLnRzPzA0ODIiLCJ3ZWJwYWNrOi8vLy4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9nb3RvL3V0aWwudHM/OTQzYiIsIndlYnBhY2s6Ly8vLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2dvdG8vaW5kZXgudHM/MWQwZCJdLCJuYW1lcyI6WyJsaW5lYXIiLCJ0IiwiZWFzZUluUXVhZCIsImVhc2VPdXRRdWFkIiwiZWFzZUluT3V0UXVhZCIsImVhc2VJbkN1YmljIiwiZWFzZU91dEN1YmljIiwiZWFzZUluT3V0Q3ViaWMiLCJlYXNlSW5RdWFydCIsImVhc2VPdXRRdWFydCIsImVhc2VJbk91dFF1YXJ0IiwiZWFzZUluUXVpbnQiLCJlYXNlT3V0UXVpbnQiLCJlYXNlSW5PdXRRdWludCIsImdldE9mZnNldCIsInRhcmdldCIsImVsIiwiJCIsIkVycm9yIiwiVHlwZUVycm9yIiwidHlwZSIsInRvdGFsT2Zmc2V0Iiwib2Zmc2V0VG9wIiwib2Zmc2V0UGFyZW50IiwiZ2V0Q29udGFpbmVyIiwiY29udGFpbmVyIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiX2lzVnVlIiwiJGVsIiwiSFRNTEVsZW1lbnQiLCJnb1RvIiwiX3RhcmdldCIsIl9zZXR0aW5ncyIsInNldHRpbmdzIiwic2Nyb2xsaW5nRWxlbWVudCIsImJvZHkiLCJkb2N1bWVudEVsZW1lbnQiLCJkdXJhdGlvbiIsIm9mZnNldCIsImVhc2luZyIsImFwcE9mZnNldCIsImZyYW1ld29yayIsImFwcGxpY2F0aW9uIiwiaXNEcmF3ZXIiLCJjbGFzc0xpc3QiLCJjb250YWlucyIsImlzQ2xpcHBlZCIsImJhciIsInRvcCIsInN0YXJ0VGltZSIsInBlcmZvcm1hbmNlIiwibm93IiwidGFyZ2V0TG9jYXRpb24iLCJzdGFydExvY2F0aW9uIiwic2Nyb2xsVG9wIiwiUHJvbWlzZSIsInJlc29sdmUiLCJlYXNlIiwiZWFzaW5nUGF0dGVybnMiLCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJzdGVwIiwiY3VycmVudFRpbWUiLCJ0aW1lRWxhcHNlZCIsInByb2dyZXNzIiwiTWF0aCIsImFicyIsIm1pbiIsImZsb29yIiwiY2xpZW50SGVpZ2h0IiwicmVhY2hCb3R0b20iLCJzY3JvbGxIZWlnaHQiLCJpbml0IiwiR290byIsIlNlcnZpY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7QUFDTyxJQUFNQSxNQUFNLEdBQUksU0FBVkEsTUFBVSxFQUFEO0FBQUEsU0FBZUMsQ0FBZjtBQUFBLENBQWYsQyxDQUNQOztBQUNPLElBQU1DLFVBQVUsR0FBSSxTQUFkQSxVQUFjLEVBQUQ7QUFBQSxrQkFBZUQsQ0FBZixFQUFvQixDQUFwQjtBQUFBLENBQW5CLEMsQ0FDUDs7QUFDTyxJQUFNRSxXQUFXLEdBQUksU0FBZkEsV0FBZSxFQUFEO0FBQUEsU0FBZUYsQ0FBQyxJQUFJLElBQUlBLENBQVIsQ0FBaEI7QUFBQSxDQUFwQixDLENBQ1A7O0FBQ08sSUFBTUcsYUFBYSxHQUFJLFNBQWpCQSxhQUFpQixFQUFEO0FBQUEsU0FBZ0JILENBQUMsR0FBRyxHQUFKLEdBQVUsYUFBSUEsQ0FBSixFQUFTLENBQVQsQ0FBVixHQUF1QixDQUFDLENBQUQsR0FBSyxDQUFDLElBQUksSUFBSUEsQ0FBVCxJQUFjQSxDQUExRDtBQUFBLENBQXRCLEMsQ0FDUDs7QUFDTyxJQUFNSSxXQUFXLEdBQUksU0FBZkEsV0FBZSxFQUFEO0FBQUEsa0JBQWVKLENBQWYsRUFBb0IsQ0FBcEI7QUFBQSxDQUFwQixDLENBQ1A7O0FBQ08sSUFBTUssWUFBWSxHQUFJLFNBQWhCQSxZQUFnQixFQUFEO0FBQUEsU0FBZSxXQUFFTCxDQUFGLEVBQU8sQ0FBUCxJQUFXLENBQTFCO0FBQUEsQ0FBckIsQyxDQUNQOztBQUNPLElBQU1NLGNBQWMs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LEdBQW9CMkIsSUFBSSxDQUFDRSxHQUFMLENBQVNKLFdBQVcsR0FBRzdCLFFBQVEsQ0FBQ0ksUUFBaEMsRUFBMEMsQ0FBMUMsQ0FBcEIsR0FBbUUsQ0FBNUUsQ0FBakI7QUFFQWYsZUFBUyxDQUFDZ0MsU0FBVixHQUFzQlUsSUFBSSxDQUFDRyxLQUFMLENBQVdkLGFBQWEsR0FBRyxDQUFDRCxjQUFjLEdBQUdDLGFBQWxCLElBQW1DSSxJQUFJLENBQUNNLFFBQUQsQ0FBbEUsQ0FBdEI7QUFFQSxVQUFNSyxZQUFZLEdBQUc5QyxTQUFTLEtBQUtHLFFBQVEsQ0FBQ1UsSUFBdkIsR0FBOEJWLFFBQVEsQ0FBQ1csZUFBVCxDQUF5QmdDLFlBQXZELEdBQXNFOUMsU0FBUyxDQUFDOEMsWUFBckc7QUFDQSxVQUFNQyxXQUFXLEdBQUdELFlBQVksR0FBRzlDLFNBQVMsQ0FBQ2dDLFNBQXpCLElBQXNDaEMsU0FBUyxDQUFDZ0QsWUFBcEU7O0FBQ0EsVUFDRVAsUUFBUSxLQUFLLENBQWIsSUFDQTtBQUNDWCxvQkFBYyxHQUFHOUIsU0FBUyxDQUFDZ0MsU0FBM0IsSUFBd0NlLFdBSDNDLEVBSUU7QUFDQSxlQUFPYixPQUFPLENBQUNKLGNBQUQsQ0FBZDtBQUNEOztBQUVETywyQkFBcUIsQ0FBQ0MsSUFBRCxDQUFyQjtBQWhCaUQsTUFBekI7QUFBQSxHQUFuQixDQUFQO0FBa0JEO0FBRUQ5QixJQUFJLENBQUNXLFNBQUwsR0FBaUIsRUFBakI7O0FBQ0FYLElBQUksQ0FBQ3lDLElBQUwsR0FBWSxZQUFLLENBQWpCOztBQUVPLElBQU1DLFNBQWI7QUFBQTs7QUFBQTs7QUFHRTtBQUFBOztBQUFBOztBQUNFO0FBRUEsdUVBQU8xQyxJQUFQO0FBQ0Q7O0FBUEg7QUFBQSxFQUEwQjJDLDBCQUExQjtBQUNnQkQscUJBQW1CLE1BQW5CIiwiZmlsZSI6IjIwNC5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEVhc2luZ0Z1bmN0aW9uID0gKHQ6IG51bWJlcikgPT4gbnVtYmVyXG5cbi8vIGxpbmVhclxuZXhwb3J0IGNvbnN0IGxpbmVhciA9ICh0OiBudW1iZXIpID0+IHRcbi8vIGFjY2VsZXJhdGluZyBmcm9tIHplcm8gdmVsb2NpdHlcbmV4cG9ydCBjb25zdCBlYXNlSW5RdWFkID0gKHQ6IG51bWJlcikgPT4gdCAqKiAyXG4vLyBkZWNlbGVyYXRpbmcgdG8gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VPdXRRdWFkID0gKHQ6IG51bWJlcikgPT4gdCAqICgyIC0gdClcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxuZXhwb3J0IGNvbnN0IGVhc2VJbk91dFF1YWQgPSAodDogbnVtYmVyKSA9PiAodCA8IDAuNSA/IDIgKiB0ICoqIDIgOiAtMSArICg0IC0gMiAqIHQpICogdClcbi8vIGFjY2VsZXJhdGluZyBmcm9tIHplcm8gdmVsb2NpdHlcbmV4cG9ydCBjb25zdCBlYXNlSW5DdWJpYyA9ICh0OiBudW1iZXIpID0+IHQgKiogM1xuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbmV4cG9ydCBjb25zdCBlYXNlT3V0Q3ViaWMgPSAodDogbnVtYmVyKSA9PiAtLXQgKiogMyArIDFcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxuZXhwb3J0IGNvbnN0IGVhc2VJbk91dEN1YmljID0gKHQ6IG51bWJlcikgPT4gdCA8IDAuNSA/IDQgKiB0ICoqIDMgOiAodCAtIDEpICogKDIgKiB0IC0gMikgKiAoMiAqIHQgLSAyKSArIDFcbi8vIGFjY2VsZXJhdGluZyBmcm9tIHplcm8gdmVsb2NpdHlcbmV4cG9ydCBjb25zdCBlYXNlSW5RdWFydCA9ICh0OiBudW1iZXIpID0+IHQgKiogNFxuLy8gZGVjZWxlcmF0aW5nIHRvIHplcm8gdmVsb2NpdHlcbmV4cG9ydCBjb25zdCBlYXNlT3V0UXVhcnQgPSAodDogbnVtYmVyKSA9PiAxIC0gLS10ICoqIDRcbi8vIGFjY2VsZXJhdGlvbiB1bnRpbCBoYWxmd2F5LCB0aGVuIGRlY2VsZXJhdGlvblxuZXhwb3J0IGNvbnN0IGVhc2VJbk91dFF1YXJ0ID0gKHQ6IG51bWJlcikgPT4gKHQgPCAwLjUgPyA4ICogdCAqIHQgKiB0ICogdCA6IDEgLSA4ICogLS10ICogdCAqIHQgKiB0KVxuLy8gYWNjZWxlcmF0aW5nIGZyb20gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VJblF1aW50ID0gKHQ6IG51bWJlcikgPT4gdCAqKiA1XG4vLyBkZWNlbGVyYXRpbmcgdG8gemVybyB2ZWxvY2l0eVxuZXhwb3J0IGNvbnN0IGVhc2VPdXRRdWludCA9ICh0OiBudW1iZXIpID0+IDEgKyAtLXQgKiogNVxuLy8gYWNjZWxlcmF0aW9uIHVudGlsIGhhbGZ3YXksIHRoZW4gZGVjZWxlcmF0aW9uXG5leHBvcnQgY29uc3QgZWFzZUluT3V0UXVpbnQgPSAodDogbnVtYmVyKSA9PiB0IDwgMC41ID8gMTYgKiB0ICoqIDUgOiAxICsgMTYgKiAtLXQgKiogNVxuIiwiaW1wb3J0IFZ1ZSBmcm9tICd2dWUnXG5cbi8vIFJldHVybiB0YXJnZXQncyBjdW11bGF0aXZlIG9mZnNldCBmcm9tIHRoZSB0b3BcbmV4cG9ydCBmdW5jdGlvbiBnZXRPZmZzZXQgKHRhcmdldDogYW55KTogbnVtYmVyIHtcbiAgaWYgKHR5cGVvZiB0YXJnZXQgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHRhcmdldFxuICB9XG5cbiAgbGV0IGVsID0gJCh0YXJnZXQpXG4gIGlmICghZWwpIHtcbiAgICB0aHJvdyB0eXBlb2YgdGFyZ2V0ID09PSAnc3RyaW5nJ1xuICAgICAgPyBuZXcgRXJyb3IoYFRhcmdldCBlbGVtZW50IFwiJHt0YXJnZXR9XCIgbm90IGZvdW5kLmApXG4gICAgICA6IG5ldyBUeXBlRXJyb3IoYFRhcmdldCBtdXN0IGJlIGEgTnVtYmVyL1NlbGVjdG9yL0hUTUxFbGVtZW50L1Z1ZUNvbXBvbmVudCwgcmVjZWl2ZWQgJHt0eXBlKHRhcmdldCl9IGluc3RlYWQuYClcbiAgfVxuXG4gIGxldCB0b3RhbE9mZnNldCA9IDBcbiAgd2hpbGUgKGVsKSB7XG4gICAgdG90YWxPZmZzZXQgKz0gZWwub2Zmc2V0VG9wXG4gICAgZWwgPSBlbC5vZmZzZXRQYXJlbnQgYXMgSFRNTEVsZW1lbnRcbiAgfVxuXG4gIHJldHVybiB0b3RhbE9mZnNldFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29udGFpbmVyIChjb250YWluZXI6IGFueSk6IEhUTUxFbGVtZW50IHtcbiAgY29uc3QgZWwgPSAkKGNvbnRhaW5lcilcblxuICBpZiAoZWwpIHJldHVybiBlbFxuXG4gIHRocm93IHR5cGVvZiBjb250YWluZXIgPT09ICdzdHJpbmcnXG4gICAgPyBuZXcgRXJyb3IoYENvbnRhaW5lciBlbGVtZW50IFwiJHtjb250YWluZXJ9XCIgbm90IGZvdW5kLmApXG4gICAgOiBuZXcgVHlwZUVycm9yKGBDb250YWluZXIgbXVzdCBiZSBhIFNlbGVjdG9yL0hUTUxFbGVtZW50L1Z1ZUNvbXBvbmVudCwgcmVjZWl2ZWQgJHt0eXBlKGNvbnRhaW5lcil9IGluc3RlYWQuYClcbn1cblxuZnVuY3Rpb24gdHlwZSAoZWw6IGFueSkge1xuICByZXR1cm4gZWwgPT0gbnVsbCA/IGVsIDogZWwuY29uc3RydWN0b3IubmFtZVxufVxuXG5mdW5jdGlvbiAkIChlbDogYW55KTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgaWYgKHR5cGVvZiBlbCA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcjxIVE1MRWxlbWVudD4oZWwpXG4gIH0gZWxzZSBpZiAoZWwgJiYgZWwuX2lzVnVlKSB7XG4gICAgcmV0dXJuIChlbCBhcyBWdWUpLiRlbCBhcyBIVE1MRWxlbWVudFxuICB9IGVsc2UgaWYgKGVsIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpIHtcbiAgICByZXR1cm4gZWxcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG59XG4iLCIvLyBFeHRlbnNpb25zXG5pbXBvcnQgeyBTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZSdcblxuLy8gVXRpbGl0aWVzXG5pbXBvcnQgKiBhcyBlYXNpbmdQYXR0ZXJucyBmcm9tICcuL2Vhc2luZy1wYXR0ZXJucydcbmltcG9ydCB7XG4gIGdldENvbnRhaW5lcixcbiAgZ2V0T2Zmc2V0LFxufSBmcm9tICcuL3V0aWwnXG5cbi8vIFR5cGVzXG5pbXBvcnQgeyBHb1RvT3B0aW9ucywgVnVldGlmeUdvVG9UYXJnZXQgfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzL2dvdG8nXG5cbmltcG9ydCB7IFZ1ZXRpZnlTZXJ2aWNlQ29udHJhY3QgfSBmcm9tICd2dWV0aWZ5L3R5cGVzL3NlcnZpY2VzJ1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnb1RvIChcbiAgX3RhcmdldDogVnVldGlmeUdvVG9UYXJnZXQsXG4gIF9zZXR0aW5nczogR29Ub09wdGlvbnMgPSB7fVxuKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgY29uc3Qgc2V0dGluZ3M6IEdvVG9PcHRpb25zID0ge1xuICAgIGNvbnRhaW5lcjogKGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQgYXMgSFRNTEVsZW1lbnQgfCBudWxsKSB8fCBkb2N1bWVudC5ib2R5IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxcbiAgICBkdXJhdGlvbjogNTAwLFxuICAgIG9mZnNldDogMCxcbiAgICBlYXNpbmc6ICdlYXNlSW5PdXRDdWJpYycsXG4gICAgYXBwT2Zmc2V0OiB0cnVlLFxuICAgIC4uLl9zZXR0aW5ncyxcbiAgfVxuICBjb25zdCBjb250YWluZXIgPSBnZXRDb250YWluZXIoc2V0dGluZ3MuY29udGFpbmVyKVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gIGlmIChzZXR0aW5ncy5hcHBPZmZzZXQgJiYgZ29Uby5mcmFtZXdvcmsuYXBwbGljYXRpb24pIHtcbiAgICBjb25zdCBpc0RyYXdlciA9IGNvbnRhaW5lci5jbGFzc0xpc3QuY29udGFpbnMoJ3YtbmF2aWdhdGlvbi1kcmF3ZXInKVxuICAgIGNvbnN0IGlzQ2xpcHBlZCA9IGNvbnRhaW5lci5jbGFzc0xpc3QuY29udGFpbnMoJ3YtbmF2aWdhdGlvbi1kcmF3ZXItLWNsaXBwZWQnKVxuICAgIGNvbnN0IHsgYmFyLCB0b3AgfSA9IGdvVG8uZnJhbWV3b3JrLmFwcGxpY2F0aW9uIGFzIGFueVxuXG4gICAgc2V0dGluZ3Mub2Zmc2V0ICs9IGJhclxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKCFpc0RyYXdlciB8fCBpc0NsaXBwZWQpIHNldHRpbmdzLm9mZnNldCArPSB0b3BcbiAgfVxuXG4gIGNvbnN0IHN0YXJ0VGltZSA9IHBlcmZvcm1hbmNlLm5vdygpXG5cbiAgbGV0IHRhcmdldExvY2F0aW9uOiBudW1iZXJcbiAgaWYgKHR5cGVvZiBfdGFyZ2V0ID09PSAnbnVtYmVyJykge1xuICAgIHRhcmdldExvY2F0aW9uID0gZ2V0T2Zmc2V0KF90YXJnZXQpIC0gc2V0dGluZ3Mub2Zmc2V0IVxuICB9IGVsc2Uge1xuICAgIHRhcmdldExvY2F0aW9uID0gZ2V0T2Zmc2V0KF90YXJnZXQpIC0gZ2V0T2Zmc2V0KGNvbnRhaW5lcikgLSBzZXR0aW5ncy5vZmZzZXQhXG4gIH1cblxuICBjb25zdCBzdGFydExvY2F0aW9uID0gY29udGFpbmVyLnNjcm9sbFRvcFxuICBpZiAodGFyZ2V0TG9jYXRpb24gPT09IHN0YXJ0TG9jYXRpb24pIHJldHVybiBQcm9taXNlLnJlc29sdmUodGFyZ2V0TG9jYXRpb24pXG5cbiAgY29uc3QgZWFzZSA9IHR5cGVvZiBzZXR0aW5ncy5lYXNpbmcgPT09ICdmdW5jdGlvbidcbiAgICA/IHNldHRpbmdzLmVhc2luZ1xuICAgIDogZWFzaW5nUGF0dGVybnNbc2V0dGluZ3MuZWFzaW5nIV1cbiAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgaWYgKCFlYXNlKSB0aHJvdyBuZXcgVHlwZUVycm9yKGBFYXNpbmcgZnVuY3Rpb24gXCIke3NldHRpbmdzLmVhc2luZ31cIiBub3QgZm91bmQuYClcblxuICAvLyBDYW5ub3QgYmUgdGVzdGVkIHByb3Blcmx5IGluIGpzZG9tXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbiBzdGVwIChjdXJyZW50VGltZTogbnVtYmVyKSB7XG4gICAgY29uc3QgdGltZUVsYXBzZWQgPSBjdXJyZW50VGltZSAtIHN0YXJ0VGltZVxuICAgIGNvbnN0IHByb2dyZXNzID0gTWF0aC5hYnMoc2V0dGluZ3MuZHVyYXRpb24gPyBNYXRoLm1pbih0aW1lRWxhcHNlZCAvIHNldHRpbmdzLmR1cmF0aW9uLCAxKSA6IDEpXG5cbiAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gTWF0aC5mbG9vcihzdGFydExvY2F0aW9uICsgKHRhcmdldExvY2F0aW9uIC0gc3RhcnRMb2NhdGlvbikgKiBlYXNlKHByb2dyZXNzKSlcblxuICAgIGNvbnN0IGNsaWVudEhlaWdodCA9IGNvbnRhaW5lciA9PT0gZG9jdW1lbnQuYm9keSA/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgOiBjb250YWluZXIuY2xpZW50SGVpZ2h0XG4gICAgY29uc3QgcmVhY2hCb3R0b20gPSBjbGllbnRIZWlnaHQgKyBjb250YWluZXIuc2Nyb2xsVG9wID49IGNvbnRhaW5lci5zY3JvbGxIZWlnaHRcbiAgICBpZiAoXG4gICAgICBwcm9ncmVzcyA9PT0gMSB8fFxuICAgICAgLy8gTmVlZCB0byBnbyBsb3dlciBidXQgcmVhY2ggYm90dG9tXG4gICAgICAodGFyZ2V0TG9jYXRpb24gPiBjb250YWluZXIuc2Nyb2xsVG9wICYmIHJlYWNoQm90dG9tKVxuICAgICkge1xuICAgICAgcmV0dXJuIHJlc29sdmUodGFyZ2V0TG9jYXRpb24pXG4gICAgfVxuXG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApXG4gIH0pKVxufVxuXG5nb1RvLmZyYW1ld29yayA9IHt9IGFzIFJlY29yZDxzdHJpbmcsIFZ1ZXRpZnlTZXJ2aWNlQ29udHJhY3Q+XG5nb1RvLmluaXQgPSAoKSA9PiB7fVxuXG5leHBvcnQgY2xhc3MgR290byBleHRlbmRzIFNlcnZpY2Uge1xuICBwdWJsaWMgc3RhdGljIHByb3BlcnR5OiAnZ29UbycgPSAnZ29UbydcblxuICBjb25zdHJ1Y3RvciAoKSB7XG4gICAgc3VwZXIoKVxuXG4gICAgcmV0dXJuIGdvVG9cbiAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///204\n')},function(module,exports,__webpack_require__){eval("// style-loader: Adds some css to the DOM by adding a
Loading...
- +
Loading...
+ diff --git a/web/loading/index.html b/web/loading/index.html index e40ce4914..bd545ff55 100644 --- a/web/loading/index.html +++ b/web/loading/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/nodeStatus/index.html b/web/nodeStatus/index.html index e40ce4914..bd545ff55 100644 --- a/web/nodeStatus/index.html +++ b/web/nodeStatus/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/overview/index.html b/web/overview/index.html index e40ce4914..bd545ff55 100644 --- a/web/overview/index.html +++ b/web/overview/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/settings/index.html b/web/settings/index.html index e40ce4914..bd545ff55 100644 --- a/web/settings/index.html +++ b/web/settings/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/sw.js b/web/sw.js index bbb00f0a4..17429d3df 100644 --- a/web/sw.js +++ b/web/sw.js @@ -1,4 +1,4 @@ -const options = {"workboxURL":"https://cdn.jsdelivr.net/npm/workbox-cdn@5.1.4/workbox/workbox-sw.js","importScripts":[],"config":{"debug":false},"cacheOptions":{"cacheId":"nkn-web-prod","directoryIndex":"/","revision":"FFWSw74oZcT4"},"clientsClaim":true,"skipWaiting":true,"cleanupOutdatedCaches":true,"offlineAnalytics":false,"preCaching":[{"revision":"FFWSw74oZcT4","url":"/web/?standalone=true"}],"runtimeCaching":[{"urlPattern":"/web/_nuxt/","handler":"CacheFirst","method":"GET","strategyPlugins":[]},{"urlPattern":"/web/","handler":"NetworkFirst","method":"GET","strategyPlugins":[]}],"offlinePage":null,"pagesURLPattern":"/web/","offlineStrategy":"NetworkFirst"} +const options = {"workboxURL":"https://cdn.jsdelivr.net/npm/workbox-cdn@5.1.4/workbox/workbox-sw.js","importScripts":[],"config":{"debug":false},"cacheOptions":{"cacheId":"nkn-web-prod","directoryIndex":"/","revision":"FNmkQKxk6WS0"},"clientsClaim":true,"skipWaiting":true,"cleanupOutdatedCaches":true,"offlineAnalytics":false,"preCaching":[{"revision":"FNmkQKxk6WS0","url":"/web/?standalone=true"}],"runtimeCaching":[{"urlPattern":"/web/_nuxt/","handler":"CacheFirst","method":"GET","strategyPlugins":[]},{"urlPattern":"/web/","handler":"NetworkFirst","method":"GET","strategyPlugins":[]}],"offlinePage":null,"pagesURLPattern":"/web/","offlineStrategy":"NetworkFirst"} importScripts(...[options.workboxURL, ...options.importScripts]) diff --git a/web/wallet/create/index.html b/web/wallet/create/index.html index e40ce4914..bd545ff55 100644 --- a/web/wallet/create/index.html +++ b/web/wallet/create/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/wallet/open/index.html b/web/wallet/open/index.html index e40ce4914..bd545ff55 100644 --- a/web/wallet/open/index.html +++ b/web/wallet/open/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/index.html b/web/zh/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/index.html +++ b/web/zh/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/loading/index.html b/web/zh/loading/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/loading/index.html +++ b/web/zh/loading/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/nodeStatus/index.html b/web/zh/nodeStatus/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/nodeStatus/index.html +++ b/web/zh/nodeStatus/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/overview/index.html b/web/zh/overview/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/overview/index.html +++ b/web/zh/overview/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/settings/index.html b/web/zh/settings/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/settings/index.html +++ b/web/zh/settings/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/wallet/create/index.html b/web/zh/wallet/create/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/wallet/create/index.html +++ b/web/zh/wallet/create/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ diff --git a/web/zh/wallet/open/index.html b/web/zh/wallet/open/index.html index e40ce4914..bd545ff55 100644 --- a/web/zh/wallet/open/index.html +++ b/web/zh/wallet/open/index.html @@ -1,9 +1,9 @@ - nkn-web - nkn-web + nkn-web - nkn-web -
Loading...
- +
Loading...
+ From c9773e84e67ccd886f017a22051b8ad645bd26d5 Mon Sep 17 00:00:00 2001 From: Yilun Date: Thu, 7 Mar 2024 23:09:28 -0800 Subject: [PATCH 07/30] fix findSuccessorAddrs has wrong params in comment Signed-off-by: Yilun --- api/common/interfaces.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/common/interfaces.go b/api/common/interfaces.go index 642e153ec..e878ce226 100644 --- a/api/common/interfaces.go +++ b/api/common/interfaces.go @@ -900,7 +900,7 @@ func getMyExtIP(s Serverer, params map[string]interface{}, ctx context.Context) } // findSuccessorAddrs find the successors of a key -// params: {"address":
} +// params: {"key":} // return: {"resultOrData":|, "error":} func findSuccessorAddrs(s Serverer, params map[string]interface{}, ctx context.Context) map[string]interface{} { if len(params) < 1 { From 6edd104cccb4b75f11ad221f136668a245040c52 Mon Sep 17 00:00:00 2001 From: billfort Date: Wed, 17 Apr 2024 19:01:51 +0800 Subject: [PATCH 08/30] Support WebRTC communication Signed-off-by: billfort --- api/common/interfaces.go | 65 ++++- api/httpjson/RPCserver.go | 1 + api/httpjson/client/client.go | 33 +++ api/webrtc/webrtc.go | 395 +++++++++++++++++++++++++++ api/websocket/server/relay.go | 32 +-- api/websocket/server/server.go | 366 +++++++++++-------------- api/websocket/server/wsserver.go | 117 ++++++++ api/websocket/session/session.go | 15 +- api/websocket/session/sessionlist.go | 4 +- api/websocket/websocket.go | 8 +- cmd/nknd/commands/root.go | 1 + config.local.json | 5 + config.mainnet.json | 5 + config.testnet.json | 5 + config/config.go | 10 + go.mod | 30 +- go.sum | 115 +++++++- 17 files changed, 945 insertions(+), 262 deletions(-) create mode 100644 api/webrtc/webrtc.go create mode 100644 api/websocket/server/wsserver.go diff --git a/api/common/interfaces.go b/api/common/interfaces.go index e878ce226..e4e0dd7e1 100644 --- a/api/common/interfaces.go +++ b/api/common/interfaces.go @@ -7,9 +7,13 @@ import ( "encoding/json" "fmt" "net" + "net/url" "strings" + "time" "github.com/nknorg/nkn/v2/api/common/errcode" + "github.com/nknorg/nkn/v2/api/httpjson/client" + "github.com/nknorg/nkn/v2/api/webrtc" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/common" @@ -412,12 +416,13 @@ func getVersion(s Serverer, params map[string]interface{}, ctx context.Context) return respPacking(errcode.SUCCESS, config.Version) } -func NodeInfo(wsAddr, rpcAddr string, pubkey, id []byte) map[string]string { +func NodeInfo(wsAddr, rpcAddr string, pubkey, id []byte, sdp string) map[string]string { nodeInfo := make(map[string]string) nodeInfo["addr"] = wsAddr nodeInfo["rpcAddr"] = rpcAddr nodeInfo["pubkey"] = hex.EncodeToString(pubkey) nodeInfo["id"] = hex.EncodeToString(id) + nodeInfo["sdp"] = sdp return nodeInfo } @@ -444,7 +449,7 @@ func getWsAddr(s Serverer, params map[string]interface{}, ctx context.Context) m return respPacking(errcode.INTERNAL_ERROR, err.Error()) } - return respPacking(errcode.SUCCESS, NodeInfo(wsAddr, rpcAddr, pubkey, id)) + return respPacking(errcode.SUCCESS, NodeInfo(wsAddr, rpcAddr, pubkey, id, "")) } func getWssAddr(s Serverer, params map[string]interface{}, ctx context.Context) map[string]interface{} { @@ -467,7 +472,7 @@ func getWssAddr(s Serverer, params map[string]interface{}, ctx context.Context) return respPacking(errcode.INTERNAL_ERROR, err.Error()) } - return respPacking(errcode.SUCCESS, NodeInfo(wsAddr, rpcAddr, pubkey, id)) + return respPacking(errcode.SUCCESS, NodeInfo(wsAddr, rpcAddr, pubkey, id, "")) } // getBalanceByAddr gets balance by address @@ -953,6 +958,59 @@ func findSuccessorAddr(s Serverer, params map[string]interface{}, ctx context.Co return respPacking(errcode.SUCCESS, addrs[0]) } +// getPeerAddr get a node address +// params: {"address":
} +// return: {"resultOrData":|, "error":} +func getPeerAddr(s Serverer, params map[string]interface{}, ctx context.Context) map[string]interface{} { + if len(params) < 1 { + return RespPacking("length of params is less than 1", errcode.INVALID_PARAMS) + } + + str, ok := params["address"].(string) + if !ok { + return RespPacking("address should be a string", errcode.INTERNAL_ERROR) + } + + clientID, _, _, err := address.ParseClientAddress(str) + if err != nil { + return RespPacking(err.Error(), errcode.INTERNAL_ERROR) + } + + wsAddr, rpcAddr, pubkey, id, err := s.GetNetNode().FindWsAddr(clientID) + if err != nil { + return RespPacking(err.Error(), errcode.INTERNAL_ERROR) + } + + n := s.GetNetNode() + if n == nil { + return nil + } + + if n.GetWsAddr() == wsAddr { + offer := params["offer"].(string) + peer := webrtc.NewPeer(config.Parameters.StunList) + + err = peer.Answer(offer) + if err != nil { + return RespPacking(err.Error(), errcode.INTERNAL_ERROR) + } + select { + case answer := <-peer.OnSdp: + return RespPacking(NodeInfo(wsAddr, rpcAddr, pubkey, id, answer), errcode.SUCCESS) + case <-time.After(10 * time.Second): + return RespPacking(fmt.Errorf("webrtc, wait for sdp time out"), errcode.INTERNAL_ERROR) + } + } + + reqAddr := (&url.URL{Scheme: "http", Host: rpcAddr}).String() + wsAddr, rpcAddr, pubkey, id, sdp, err := client.GetPeerAddr(reqAddr, params) + if err != nil { + return RespPacking(err.Error(), errcode.INTERNAL_ERROR) + } + + return RespPacking(NodeInfo(wsAddr, rpcAddr, pubkey, id, sdp), errcode.SUCCESS) +} + var InitialAPIHandlers = map[string]APIHandler{ "getlatestblockhash": {Handler: getLatestBlockHash, AccessCtrl: BIT_JSONRPC}, "getblock": {Handler: getBlock, AccessCtrl: BIT_JSONRPC}, @@ -983,4 +1041,5 @@ var InitialAPIHandlers = map[string]APIHandler{ "findsuccessoraddr": {Handler: findSuccessorAddr, AccessCtrl: BIT_JSONRPC}, "findsuccessoraddrs": {Handler: findSuccessorAddrs, AccessCtrl: BIT_JSONRPC}, "getregistrant": {Handler: getRegistrant, AccessCtrl: BIT_JSONRPC}, + "getpeeraddr": {Handler: getPeerAddr, AccessCtrl: BIT_JSONRPC}, } diff --git a/api/httpjson/RPCserver.go b/api/httpjson/RPCserver.go index 96fd9d555..217b4cbd6 100644 --- a/api/httpjson/RPCserver.go +++ b/api/httpjson/RPCserver.go @@ -130,6 +130,7 @@ func (s *RPCServer) Handle(w http.ResponseWriter, r *http.Request) { } method, ok = request["method"].(string) if !ok { + log.Warning("RPC Server - No function to call for ", method) code = errcode.INVALID_METHOD } if request["params"] != nil { diff --git a/api/httpjson/client/client.go b/api/httpjson/client/client.go index 650f61a36..562e9b954 100644 --- a/api/httpjson/client/client.go +++ b/api/httpjson/client/client.go @@ -222,3 +222,36 @@ func GetNonceByAddr(remote, addr string, txPool bool) (uint64, uint32, error) { return nonce, ret.Result.CurrentHeight, nil } + +func GetPeerAddr(remote string, params map[string]interface{}) (string, string, []byte, []byte, string, error) { + fmt.Println("......GetPeerAddr, remote: ", remote) + resp, err := Call(remote, "getpeeraddr", 0, params) + if err != nil { + return "", "", nil, nil, "", err + } + + // log.Infof("Node-to-Node GetPeerAddr got resp: %v from %s\n", string(resp), remote) + + var ret struct { + Result struct { + Addr string `json:"addr"` + RpcAddr string `json:"rpcAddr"` + Pubkey []byte `json:"pubkey"` + Id []byte `json:"id"` + Sdp string `json:"sdp"` + } `json:"result"` + Err map[string]interface{} `json:"error"` + } + + if err := json.Unmarshal(resp, &ret); err != nil { + log.Error("Node-to-Node GetPeerAddr json.Unmarshal error: ", err) + return "", "", nil, nil, "", err + } + if len(ret.Err) != 0 { // resp.error NOT empty + log.Error("Node-to-Node GetPeerAddr ret.Err: ", ret.Err) + return "", "", nil, nil, "", fmt.Errorf("GetPeerAddr(%s) resp error: %v", remote, string(resp)) + } + + fmt.Printf("......GetPeerAddr got result: %+v\n", ret.Result) + return ret.Result.Addr, ret.Result.RpcAddr, ret.Result.Pubkey, ret.Result.Id, ret.Result.Sdp, nil +} diff --git a/api/webrtc/webrtc.go b/api/webrtc/webrtc.go new file mode 100644 index 000000000..ac76d3823 --- /dev/null +++ b/api/webrtc/webrtc.go @@ -0,0 +1,395 @@ +package webrtc + +import ( + "encoding/base64" + "encoding/json" + "fmt" + "net/http" + "os" + "sync" + "time" + + "github.com/nknorg/nkn/v2/api/ratelimiter" + "github.com/nknorg/nkn/v2/api/websocket/session" + "github.com/nknorg/nkn/v2/config" + "github.com/nknorg/nkn/v2/util/log" + "github.com/pion/webrtc/v4" +) + +// compitable to websocket +const ( + UnknownMessage = 0 + TextMessage = 1 + BinaryMessage = 2 + CloseMessage = 8 + PingMessage = 9 + PongMessage = 10 + + PingData = "ping" + PongData = "pong" +) + +var NewConnection func(conn session.Conn, r *http.Request) + +type DataChannelMessage struct { + messageType int + data []byte +} + +type Peer struct { + pc *webrtc.PeerConnection + dc *webrtc.DataChannel + offer string + answer string + OnSdp chan string + OnMessage chan DataChannelMessage + + mutex sync.RWMutex + isConnected bool + readDeadline time.Time + writeDeadline time.Time + readLimit int64 + pongHandler func(string) error +} + +func NewPeer(urls []string) *Peer { + p := &Peer{ + OnSdp: make(chan string, 1), + isConnected: false, + OnMessage: make(chan DataChannelMessage, 128), + } + + config := webrtc.Configuration{ + ICEServers: []webrtc.ICEServer{ + { + URLs: urls, + }, + }, + } + var err error + pc, err := webrtc.NewPeerConnection(config) + if err != nil { + log.Error("NewPeerConnection error: ", err) + return nil + } + + p.pc = pc + return p +} + +func (c *Peer) Offer(label string) error { + if c.pc == nil { + return fmt.Errorf("PeerConnection not available") + } + + c.pc.OnICECandidate(func(candidate *webrtc.ICECandidate) { + if candidate == nil { + localDesc := c.pc.LocalDescription() + encodedDescr, err := Encode(localDesc) + if err != nil { + log.Error("WebRTC OnICECandidate error: ", err) + return + } + c.offer = encodedDescr + c.OnSdp <- encodedDescr + } + }) + + dc, err := c.pc.CreateDataChannel(label, nil) + if err != nil { + return err + } + dc.OnOpen(func() { + log.Debugf("data channel %v has been opened\n", dc.Label()) + c.mutex.Lock() + defer c.mutex.Unlock() + c.isConnected = true + }) + dc.OnMessage(func(msg webrtc.DataChannelMessage) { + var dcmsg DataChannelMessage + if msg.IsString { + dcmsg.messageType = TextMessage + if string(msg.Data) == PongData { + if c.pongHandler != nil { + c.pongHandler(PongData) + } else { + log.Info("Pong handler not set") + } + return + } else if string(msg.Data) == PingData { + dc.SendText(PongData) + return + } + } else { + dcmsg.messageType = BinaryMessage + } + dcmsg.data = msg.Data + c.OnMessage <- dcmsg + }) + dc.OnClose(func() { + c.mutex.Lock() + defer c.mutex.Unlock() + c.isConnected = false + }) + + dc.OnError(func(err error) { + log.Errorf("Data Channel %s error: %s\n", dc.Label(), err.Error()) + }) + + offer, err := c.pc.CreateOffer(&webrtc.OfferOptions{ICERestart: false}) + if err != nil { + return nil + } + if err = c.pc.SetLocalDescription(offer); err != nil { + return nil + } + + c.dc = dc + return nil +} + +func (c *Peer) Answer(offerSdp string) error { + offer := webrtc.SessionDescription{} + err := Decode(offerSdp, &offer) + if err != nil { + return err + } + + sdp, err := offer.Unmarshal() + if err != nil { + return err + } + limiter := ratelimiter.GetLimiter("webrtc:"+sdp.Origin.UnicastAddress, config.Parameters.WsIPRateLimit, int(config.Parameters.WsIPRateBurst)) + if !limiter.Allow() { + return fmt.Errorf("webrtc connection limit of %s reached", sdp.Origin.UnicastAddress) + } + + if err := c.pc.SetRemoteDescription(offer); err != nil { + return err + } + + answer, err := c.pc.CreateAnswer(nil) + if err != nil { + return err + } + + if err := c.pc.SetLocalDescription(answer); err != nil { + return err + } + + c.pc.OnICECandidate(func(candidate *webrtc.ICECandidate) { + if candidate == nil { + localDesc := c.pc.LocalDescription() + encodedDescr, err := Encode(localDesc) + if err != nil { + log.Error("WebRTC OnICECandidate error: ", err) + return + } + c.answer = encodedDescr + c.OnSdp <- encodedDescr + } + }) + + c.pc.OnDataChannel(func(dc *webrtc.DataChannel) { + dc.OnOpen(func() { + c.dc = dc + + c.mutex.Lock() + c.isConnected = true + c.mutex.Unlock() + + if NewConnection != nil { + go NewConnection(c, nil) + } + }) + + dc.OnMessage(func(msg webrtc.DataChannelMessage) { + var dcmsg DataChannelMessage + if msg.IsString { + dcmsg.messageType = TextMessage + if string(msg.Data) == PingData { + dc.SendText(PongData) + return + } else if string(msg.Data) == PongData { + if c.pongHandler != nil { + c.pongHandler(PongData) + } else { + log.Info("Pong handler not set") + } + return + } + } else { + dcmsg.messageType = BinaryMessage + } + dcmsg.data = msg.Data + c.OnMessage <- dcmsg + }) + + dc.OnClose(func() { + c.mutex.Lock() + c.isConnected = false + c.mutex.Unlock() + }) + + dc.OnError(func(err error) { + log.Errorf("Data Channel %v error: %s\n", dc.Label(), err.Error()) + }) + }) + + return nil +} + +func (c *Peer) IsConnected() bool { + c.mutex.RLock() + defer c.mutex.RUnlock() + return c.isConnected +} + +func (c *Peer) SetRemoteSdp(sdp string) error { + answer := webrtc.SessionDescription{} + err := Decode(sdp, &answer) + if err != nil { + return err + } + return c.pc.SetRemoteDescription(answer) +} + +func (c *Peer) WriteMessage(messageType int, data []byte) (err error) { + if c.dc == nil { + return fmt.Errorf("DataChannel not available") + } + + if messageType == PingMessage { + return c.dc.SendText(PingData) + } + if messageType == PongMessage { + return c.dc.SendText(PongData) + } + if data == nil { + return fmt.Errorf("data to send is nil") + } + + if c.writeDeadline.IsZero() { + if messageType == TextMessage { + err = c.dc.SendText(string(data)) + } else { + err = c.dc.Send(data) + } + return err + } + + var dur time.Duration + now := time.Now() + switch { + case c.writeDeadline.Before(now), c.writeDeadline == now: + return os.ErrDeadlineExceeded + + case c.writeDeadline.After(now): + writeResult := make(chan error) + go func() { + if messageType == TextMessage { + err = c.dc.SendText(string(data)) + } else { + err = c.dc.Send(data) + } + + writeResult <- err + }() + + dur = time.Until(c.writeDeadline) + select { + case err = <-writeResult: + return err + case <-time.After(dur): + return os.ErrDeadlineExceeded + } + } + + return fmt.Errorf("unknown error") +} + +// WriteJSON writes the JSON encoding of v as a message. +func (c *Peer) WriteJSON(v interface{}) error { + b, err := json.Marshal(v) + if err != nil { + return err + } + return c.WriteMessage(TextMessage, b) +} + +func (c *Peer) ReadMessage() (messageType int, data []byte, err error) { + if c.readDeadline.IsZero() { + msg := <-c.OnMessage + return msg.messageType, msg.data, nil + } + + now := time.Now() + switch { + case c.readDeadline.After(now): + for { + oldReadDeadline := c.readDeadline + dur := time.Until(c.readDeadline) + select { + case msg := <-c.OnMessage: + return msg.messageType, msg.data, nil + case <-time.After(dur): + if c.readDeadline.After(oldReadDeadline) { + continue + } + return UnknownMessage, nil, os.ErrDeadlineExceeded + } + } + + case c.readDeadline.Before(now), c.readDeadline == now: + return UnknownMessage, nil, os.ErrDeadlineExceeded + } + + return UnknownMessage, nil, fmt.Errorf("unknown error") +} + +func (c *Peer) SetWriteDeadline(t time.Time) error { + c.writeDeadline = t + return nil +} + +func (c *Peer) SetReadDeadline(t time.Time) error { + c.readDeadline = t + return nil +} + +func (c *Peer) SetReadLimit(l int64) { + c.readLimit = l +} + +func (c *Peer) Close() error { + if c.dc != nil { + if err := c.dc.Close(); err != nil { + return err + } + } + return c.pc.Close() +} + +func (c *Peer) SetPongHandler(f func(string) error) { + c.pongHandler = f +} + +// Encode the input in base64 +func Encode(obj interface{}) (string, error) { + b, err := json.Marshal(obj) + if err != nil { + return "", err + } + + return base64.StdEncoding.EncodeToString(b), nil +} + +// Decode the input from base64 +func Decode(in string, obj interface{}) error { + b, err := base64.StdEncoding.DecodeString(in) + if err != nil { + return err + } + + return json.Unmarshal(b, obj) +} diff --git a/api/websocket/server/relay.go b/api/websocket/server/relay.go index 1900de4ea..d3bb83b6c 100644 --- a/api/websocket/server/relay.go +++ b/api/websocket/server/relay.go @@ -18,7 +18,7 @@ type sigChainInfo struct { sigChainLen int } -func (ws *WsServer) sendOutboundRelayMessage(srcAddrStrPtr *string, msg *pb.OutboundMessage) { +func (ms *MsgServer) sendOutboundRelayMessage(srcAddrStrPtr *string, msg *pb.OutboundMessage) { if srcAddrStrPtr == nil { log.Warningf("src addr is nil") return @@ -56,15 +56,15 @@ func (ws *WsServer) sendOutboundRelayMessage(srcAddrStrPtr *string, msg *pb.Outb } else { payload = payloads[0] } - err := ws.localNode.SendRelayMessage(*srcAddrStrPtr, dest, payload, msg.Signatures[i], msg.BlockHash, msg.Nonce, msg.MaxHoldingSeconds) + err := ms.localNode.SendRelayMessage(*srcAddrStrPtr, dest, payload, msg.Signatures[i], msg.BlockHash, msg.Nonce, msg.MaxHoldingSeconds) if err != nil { log.Error("Send relay message error:", err) } } } -func (ws *WsServer) sendInboundMessage(clientID string, inboundMsg *pb.InboundMessage) bool { - clients := ws.SessionList.GetSessionsById(clientID) +func (ms *MsgServer) sendInboundMessage(clientID string, inboundMsg *pb.InboundMessage) bool { + clients := ms.SessionList.GetSessionsById(clientID) if clients == nil { log.Debugf("Client Not Online: %s", clientID) return false @@ -105,7 +105,7 @@ func (ws *WsServer) sendInboundMessage(clientID string, inboundMsg *pb.InboundMe return success } -func (ws *WsServer) sendInboundRelayMessage(relayMessage *pb.Relay, shouldSign bool) { +func (ms *MsgServer) sendInboundRelayMessage(relayMessage *pb.Relay, shouldSign bool) { clientID := relayMessage.DestId msg := &pb.InboundMessage{ Src: address.AssembleClientAddress(relayMessage.SrcIdentifier, relayMessage.SrcPubkey), @@ -119,34 +119,34 @@ func (ws *WsServer) sendInboundRelayMessage(relayMessage *pb.Relay, shouldSign b } } - success := ws.sendInboundMessage(hex.EncodeToString(clientID), msg) + success := ms.sendInboundMessage(hex.EncodeToString(clientID), msg) if success { if shouldSign { - ws.sigChainCache.Add(relayMessage.LastHash, &sigChainInfo{ + ms.sigChainCache.Add(relayMessage.LastHash, &sigChainInfo{ blockHash: relayMessage.BlockHash, sigChainLen: int(relayMessage.SigChainLen), }) } if time.Duration(relayMessage.MaxHoldingSeconds) > pongTimeout/time.Second { - ok := ws.messageDeliveredCache.Push(relayMessage) + ok := ms.messageDeliveredCache.Push(relayMessage) if !ok { log.Warningf("MessageDeliveredCache full, discarding messages.") } } } else if relayMessage.MaxHoldingSeconds > 0 { - ws.messageBuffer.AddMessage(clientID, relayMessage) + ms.messageBuffer.AddMessage(clientID, relayMessage) } } -func (ws *WsServer) startCheckingLostMessages() { +func (ms *MsgServer) startCheckingLostMessages() { for { - v, ok := ws.messageDeliveredCache.Pop() + v, ok := ms.messageDeliveredCache.Pop() if !ok { break } if relayMessage, ok := v.(*pb.Relay); ok { clientID := relayMessage.DestId - clients := ws.SessionList.GetSessionsById(hex.EncodeToString(clientID)) + clients := ms.SessionList.GetSessionsById(hex.EncodeToString(clientID)) if len(clients) > 0 { threshold := time.Now().Add(-pongTimeout) success := false @@ -157,17 +157,17 @@ func (ws *WsServer) startCheckingLostMessages() { } } if !success { - ws.sendInboundRelayMessage(relayMessage, false) + ms.sendInboundRelayMessage(relayMessage, false) } continue } - ws.messageBuffer.AddMessage(clientID, relayMessage) + ms.messageBuffer.AddMessage(clientID, relayMessage) } } } -func (ws *WsServer) handleReceipt(receipt *pb.Receipt) error { - v, ok := ws.sigChainCache.Get(receipt.PrevHash) +func (ms *MsgServer) handleReceipt(receipt *pb.Receipt) error { + v, ok := ms.sigChainCache.Get(receipt.PrevHash) if !ok { return fmt.Errorf("sigchain info with last hash %x not found in cache", receipt.PrevHash) } diff --git a/api/websocket/server/server.go b/api/websocket/server/server.go index a0d79737f..2e56998af 100644 --- a/api/websocket/server/server.go +++ b/api/websocket/server/server.go @@ -20,7 +20,7 @@ import ( "github.com/golang/protobuf/proto" api "github.com/nknorg/nkn/v2/api/common" "github.com/nknorg/nkn/v2/api/common/errcode" - "github.com/nknorg/nkn/v2/api/ratelimiter" + "github.com/nknorg/nkn/v2/api/webrtc" "github.com/nknorg/nkn/v2/api/websocket/messagebuffer" "github.com/nknorg/nkn/v2/api/websocket/session" "github.com/nknorg/nkn/v2/chain" @@ -53,13 +53,8 @@ type Handler struct { pushFlag bool } -type WsServer struct { +type MsgServer struct { sync.RWMutex - Upgrader websocket.Upgrader - listener net.Listener - tlsListener net.Listener - server *http.Server - tlsServer *http.Server SessionList *session.SessionList ActionMap map[string]Handler TxHashMap map[string]string //key: txHash value:sessionid @@ -68,11 +63,11 @@ type WsServer struct { messageBuffer *messagebuffer.MessageBuffer messageDeliveredCache *DelayedChan sigChainCache common.Cache + ws *wsServer } -func InitWsServer(localNode node.ILocalNode, wallet *vault.Wallet) *WsServer { - ws := &WsServer{ - Upgrader: websocket.Upgrader{}, +func InitMsgServer(localNode node.ILocalNode, wallet *vault.Wallet) *MsgServer { + ws := &MsgServer{ SessionList: session.NewSessionList(), TxHashMap: make(map[string]string), localNode: localNode, @@ -80,68 +75,31 @@ func InitWsServer(localNode node.ILocalNode, wallet *vault.Wallet) *WsServer { messageBuffer: messagebuffer.NewMessageBuffer(true), messageDeliveredCache: NewDelayedChan(messageDeliveredCacheSize, pongTimeout), sigChainCache: common.NewGoCache(sigChainCacheExpiration, sigChainCacheCleanupInterval), + ws: &wsServer{}, } return ws } -func (ws *WsServer) Start(wssCertReady chan struct{}) error { - if config.Parameters.HttpWsPort == 0 { - log.Error("Not configure HttpWsPort port ") - return nil - } - ws.registryMethod() - ws.Upgrader.CheckOrigin = func(r *http.Request) bool { - return true - } +func (ms *MsgServer) Start(wssCertReady chan struct{}) error { - var err error + ms.ws.Start(ms, wssCertReady) + ms.registryMethod() - ws.listener, err = net.Listen("tcp", ":"+strconv.Itoa(int(config.Parameters.HttpWsPort))) - if err != nil { - log.Error("net.Listen: ", err.Error()) - return err - } - - event.Queue.Subscribe(event.SendInboundMessageToClient, ws.sendInboundRelayMessageToClient) + go ms.startCheckingLostMessages() + go ms.startCheckingWrongClients() - ws.server = &http.Server{Handler: http.HandlerFunc(ws.websocketHandler)} - go ws.server.Serve(ws.listener) + event.Queue.Subscribe(event.SendInboundMessageToClient, ms.sendInboundRelayMessageToClient) - go func(wssCertReady chan struct{}) { - if wssCertReady == nil { - return - } - for { - select { - case <-wssCertReady: - log.Info("wss cert received") - ws.tlsListener, err = ws.initTlsListen() - if err != nil { - log.Error("Https Cert: ", err.Error()) - } - err = ws.server.Serve(ws.tlsListener) - if err != nil { - log.Error(err) - } - return - case <-time.After(300 * time.Second): - log.Info("wss server is unavailable yet") - } - } - }(wssCertReady) - - go ws.startCheckingLostMessages() - - go ws.startCheckingWrongClients() + webrtc.NewConnection = ms.newConnection return nil } -func (ws *WsServer) registryMethod() { +func (ms *MsgServer) registryMethod() { gettxhashmap := func(s api.Serverer, cmd map[string]interface{}, ctx context.Context) map[string]interface{} { - ws.Lock() - defer ws.Unlock() - resp := api.RespPacking(len(ws.TxHashMap), errcode.SUCCESS) + ms.Lock() + defer ms.Unlock() + resp := api.RespPacking(len(ms.TxHashMap), errcode.SUCCESS) return resp } @@ -151,7 +109,7 @@ func (ws *WsServer) registryMethod() { } getsessioncount := func(s api.Serverer, cmd map[string]interface{}, ctx context.Context) map[string]interface{} { - return api.RespPacking(ws.SessionList.GetSessionCount(), errcode.SUCCESS) + return api.RespPacking(ms.SessionList.GetSessionCount(), errcode.SUCCESS) } setClient := func(s api.Serverer, cmd map[string]interface{}, ctx context.Context) map[string]interface{} { @@ -191,7 +149,7 @@ func (ws *WsServer) registryMethod() { } if wsAddr != localAddr { - return api.RespPacking(api.NodeInfo(wsAddr, rpcAddr, pubkey, id), errcode.WRONG_NODE) + return api.RespPacking(api.NodeInfo(wsAddr, rpcAddr, pubkey, id, ""), errcode.WRONG_NODE) } // client auth @@ -227,7 +185,7 @@ func (ws *WsServer) registryMethod() { go func() { log.Warning("Client signature is not right, close its conneciton now") time.Sleep(3 * time.Second) // sleep several second, let response reach client - ws.SessionList.CloseSession(sess) // close this session + ms.SessionList.CloseSession(sess) // close this session }() return api.RespPacking(nil, errcode.INVALID_SIGNATURE) } @@ -236,7 +194,7 @@ func (ws *WsServer) registryMethod() { } newSessionID := hex.EncodeToString(clientID) - session, err := ws.SessionList.ChangeSessionToClient(cmd["Userid"].(string), newSessionID) + session, err := ms.SessionList.ChangeSessionToClient(cmd["Userid"].(string), newSessionID) if err != nil { log.Error("Change session id error: ", err) return api.RespPacking(nil, errcode.INTERNAL_ERROR) @@ -244,9 +202,9 @@ func (ws *WsServer) registryMethod() { session.SetClient(clientID, pubKey, &addrStr, isTlsClient) go func() { - messages := ws.messageBuffer.PopMessages(clientID) + messages := ms.messageBuffer.PopMessages(clientID) for _, message := range messages { - ws.sendInboundRelayMessage(message, true) + ms.sendInboundRelayMessage(message, true) } }() @@ -260,7 +218,7 @@ func (ws *WsServer) registryMethod() { } res := make(map[string]interface{}) - res["node"] = api.NodeInfo(wsAddr, rpcAddr, pubkey, id) + res["node"] = api.NodeInfo(wsAddr, rpcAddr, pubkey, id, "") res["sigChainBlockHash"] = hex.EncodeToString(sigChainBlockHash.ToArray()) return api.RespPacking(res, errcode.SUCCESS) @@ -279,101 +237,10 @@ func (ws *WsServer) registryMethod() { } } - ws.ActionMap = actionMap -} - -func (ws *WsServer) Stop() { - if ws.server != nil { - ws.server.Shutdown(context.Background()) - log.Error("Close websocket ") - } -} - -// websocketHandler -func (ws *WsServer) websocketHandler(w http.ResponseWriter, r *http.Request) { - host, _, err := net.SplitHostPort(r.RemoteAddr) - if err == nil { - limiter := ratelimiter.GetLimiter("ws:"+host, config.Parameters.WsIPRateLimit, int(config.Parameters.WsIPRateBurst)) - if !limiter.Allow() { - log.Infof("Ws connection limit of %s reached", host) - w.WriteHeader(http.StatusTooManyRequests) - return - } - } - - wsConn, err := ws.Upgrader.Upgrade(w, r, nil) - if err != nil { - log.Error("websocket Upgrader: ", err) - return - } - defer wsConn.Close() - - sess, err := ws.SessionList.NewSession(wsConn) - if err != nil { - log.Error("websocket NewSession:", err) - return - } - - defer func() { - ws.deleteTxHashs(sess.GetSessionId()) - ws.SessionList.CloseSession(sess) - if err := recover(); err != nil { - log.Error("websocket recover:", err) - } - }() - - wsConn.SetReadLimit(maxMessageSize) - wsConn.SetReadDeadline(time.Now().Add(pongTimeout)) - wsConn.SetPongHandler(func(string) error { - wsConn.SetReadDeadline(time.Now().Add(pongTimeout)) - sess.UpdateLastReadTime() - return nil - }) - - // client auth - err = ws.sendClientAuthChallenge(sess) - if err != nil { - log.Error("send client auth challenge: ", err) - return - } - - done := make(chan struct{}) - defer close(done) - go func() { - ticker := time.NewTicker(pingInterval) - defer ticker.Stop() - var err error - for { - select { - case <-ticker.C: - err = sess.Ping() - if err != nil { - return - } - case <-done: - return - } - } - }() - - for { - messageType, bysMsg, err := wsConn.ReadMessage() - if err != nil { - log.Debugf("websocket read message error: %v", err) - break - } - - wsConn.SetReadDeadline(time.Now().Add(pongTimeout)) - sess.UpdateLastReadTime() - - err = ws.OnDataHandle(sess, messageType, bysMsg, r) - if err != nil { - log.Error(err) - } - } + ms.ActionMap = actionMap } -func (ws *WsServer) IsValidMsg(reqMsg map[string]interface{}) bool { +func (ms *MsgServer) IsValidMsg(reqMsg map[string]interface{}) bool { if _, ok := reqMsg["Hash"].(string); !ok && reqMsg["Hash"] != nil { return false } @@ -386,7 +253,7 @@ func (ws *WsServer) IsValidMsg(reqMsg map[string]interface{}) bool { return true } -func (ws *WsServer) OnDataHandle(curSession *session.Session, messageType int, bysMsg []byte, r *http.Request) error { +func (ms *MsgServer) OnDataHandle(curSession *session.Session, messageType int, bysMsg []byte, httpr *http.Request) error { if messageType == websocket.BinaryMessage { msg := &pb.ClientMessage{} err := proto.Unmarshal(bysMsg, msg) @@ -422,14 +289,14 @@ func (ws *WsServer) OnDataHandle(curSession *session.Session, messageType int, b if err != nil { return fmt.Errorf("Unmarshal outbound message error: %v", err) } - ws.sendOutboundRelayMessage(curSession.GetAddrStr(), outboundMsg) + ms.sendOutboundRelayMessage(curSession.GetAddrStr(), outboundMsg) case pb.ClientMessageType_RECEIPT: receipt := &pb.Receipt{} err = proto.Unmarshal(b, receipt) if err != nil { return fmt.Errorf("Unmarshal receipt error: %v", err) } - err = ws.handleReceipt(receipt) + err = ms.handleReceipt(receipt) if err != nil { return fmt.Errorf("Handle receipt error: %v", err) } @@ -444,24 +311,24 @@ func (ws *WsServer) OnDataHandle(curSession *session.Session, messageType int, b if err := json.Unmarshal(bysMsg, &req); err != nil { resp := api.ResponsePack(errcode.ILLEGAL_DATAFORMAT) - ws.respondToSession(curSession, resp) + ms.respondToSession(curSession, resp) return fmt.Errorf("websocket OnDataHandle: %v", err) } actionName, ok := req["Action"].(string) if !ok { resp := api.ResponsePack(errcode.INVALID_METHOD) - ws.respondToSession(curSession, resp) + ms.respondToSession(curSession, resp) return nil } - action, ok := ws.ActionMap[actionName] + action, ok := ms.ActionMap[actionName] if !ok { resp := api.ResponsePack(errcode.INVALID_METHOD) - ws.respondToSession(curSession, resp) + ms.respondToSession(curSession, resp) return nil } - if !ws.IsValidMsg(req) { + if !ms.IsValidMsg(req) { resp := api.ResponsePack(errcode.INVALID_PARAMS) - ws.respondToSession(curSession, resp) + ms.respondToSession(curSession, resp) return nil } if height, ok := req["Height"].(float64); ok { @@ -471,39 +338,45 @@ func (ws *WsServer) OnDataHandle(curSession *session.Session, messageType int, b req["Raw"] = strconv.FormatInt(int64(raw), 10) } req["Userid"] = curSession.GetSessionId() - req["IsTls"] = r.TLS != nil + ctx := context.Background() + if httpr != nil { + req["IsTls"] = httpr.TLS != nil + ctx = httpr.Context() + } else { + req["IsTls"] = false + } req["session"] = curSession - ret := action.handler(ws, req, r.Context()) + ret := action.handler(ms, req, ctx) resp := api.ResponsePack(ret["error"].(errcode.ErrCode)) resp["Action"] = actionName resp["Result"] = ret["resultOrData"] if txHash, ok := resp["Result"].(string); ok && action.pushFlag { - ws.Lock() - defer ws.Unlock() - ws.TxHashMap[txHash] = curSession.GetSessionId() + ms.Lock() + defer ms.Unlock() + ms.TxHashMap[txHash] = curSession.GetSessionId() } - ws.respondToSession(curSession, resp) + ms.respondToSession(curSession, resp) return nil } -func (ws *WsServer) SetTxHashMap(txhash string, sessionid string) { - ws.Lock() - defer ws.Unlock() - ws.TxHashMap[txhash] = sessionid +func (ms *MsgServer) SetTxHashMap(txhash string, sessionid string) { + ms.Lock() + defer ms.Unlock() + ms.TxHashMap[txhash] = sessionid } -func (ws *WsServer) deleteTxHashs(sSessionId string) { - ws.Lock() - defer ws.Unlock() - for k, v := range ws.TxHashMap { +func (ms *MsgServer) deleteTxHashs(sSessionId string) { + ms.Lock() + defer ms.Unlock() + for k, v := range ms.TxHashMap { if v == sSessionId { - delete(ws.TxHashMap, k) + delete(ms.TxHashMap, k) } } } -func (ws *WsServer) respondToSession(session *session.Session, resp map[string]interface{}) error { +func (ms *MsgServer) respondToSession(session *session.Session, resp map[string]interface{}) error { resp["Desc"] = errcode.ErrMessage[resp["Error"].(errcode.ErrCode)] data, err := json.Marshal(resp) if err != nil { @@ -514,46 +387,46 @@ func (ws *WsServer) respondToSession(session *session.Session, resp map[string]i return err } -func (ws *WsServer) respondToId(sSessionId string, resp map[string]interface{}) { - sessions := ws.SessionList.GetSessionsById(sSessionId) +func (ms *MsgServer) respondToId(sSessionId string, resp map[string]interface{}) { + sessions := ms.SessionList.GetSessionsById(sSessionId) if sessions == nil { log.Error("websocket sessionId Not Exist: " + sSessionId) return } for _, session := range sessions { - ws.respondToSession(session, resp) + ms.respondToSession(session, resp) } } -func (ws *WsServer) PushTxResult(txHashStr string, resp map[string]interface{}) { - ws.Lock() - defer ws.Unlock() - sSessionId := ws.TxHashMap[txHashStr] - delete(ws.TxHashMap, txHashStr) +func (ms *MsgServer) PushTxResult(txHashStr string, resp map[string]interface{}) { + ms.Lock() + defer ms.Unlock() + sSessionId := ms.TxHashMap[txHashStr] + delete(ms.TxHashMap, txHashStr) if len(sSessionId) > 0 { - ws.respondToId(sSessionId, resp) + ms.respondToId(sSessionId, resp) } - ws.PushResult(resp) + ms.PushResult(resp) } -func (ws *WsServer) PushResult(resp map[string]interface{}) { +func (ms *MsgServer) PushResult(resp map[string]interface{}) { resp["Desc"] = errcode.ErrMessage[resp["Error"].(errcode.ErrCode)] data, err := json.Marshal(resp) if err != nil { log.Error("Websocket PushResult:", err) return } - ws.Broadcast(data) + ms.Broadcast(data) } -func (ws *WsServer) Broadcast(data []byte) error { - ws.SessionList.ForEachSession(func(s *session.Session) { +func (ms *MsgServer) Broadcast(data []byte) error { + ms.SessionList.ForEachSession(func(s *session.Session) { s.SendText(data) }) return nil } -func (ws *WsServer) initTlsListen() (net.Listener, error) { +func (ms *MsgServer) initTlsListen() (net.Listener, error) { tlsConfig := &tls.Config{ GetCertificate: api.GetWssCertificate, } @@ -566,23 +439,23 @@ func (ws *WsServer) initTlsListen() (net.Listener, error) { return listener, nil } -func (ws *WsServer) GetClientsById(cliendID []byte) []*session.Session { - sessions := ws.SessionList.GetSessionsById(hex.EncodeToString(cliendID)) +func (ms *MsgServer) GetClientsById(cliendID []byte) []*session.Session { + sessions := ms.SessionList.GetSessionsById(hex.EncodeToString(cliendID)) return sessions } -func (ws *WsServer) GetNetNode() node.ILocalNode { - return ws.localNode +func (ms *MsgServer) GetNetNode() node.ILocalNode { + return ms.localNode } -func (ws *WsServer) NotifyWrongClients() { - ws.SessionList.ForEachClient(func(client *session.Session) { +func (ms *MsgServer) NotifyWrongClients() { + ms.SessionList.ForEachClient(func(client *session.Session) { clientID := client.GetID() if clientID == nil { return } - localNode := ws.GetNetNode() + localNode := ms.GetNetNode() var wsAddr, rpcAddr, localAddr string var pubkey, id []byte @@ -602,29 +475,29 @@ func (ws *WsServer) NotifyWrongClients() { if wsAddr != localAddr { resp := api.ResponsePack(errcode.WRONG_NODE) - resp["Result"] = api.NodeInfo(wsAddr, rpcAddr, pubkey, id) - ws.respondToSession(client, resp) + resp["Result"] = api.NodeInfo(wsAddr, rpcAddr, pubkey, id, "") + ms.respondToSession(client, resp) } }) } -func (ws *WsServer) startCheckingWrongClients() { +func (ms *MsgServer) startCheckingWrongClients() { for { time.Sleep(checkWrongClientsInterval) - ws.NotifyWrongClients() + ms.NotifyWrongClients() } } -func (ws *WsServer) sendInboundRelayMessageToClient(v interface{}) { +func (ms *MsgServer) sendInboundRelayMessageToClient(v interface{}) { if msg, ok := v.(*pb.Relay); ok { - ws.sendInboundRelayMessage(msg, true) + ms.sendInboundRelayMessage(msg, true) } else { log.Error("Decode relay message failed") } } // client auth, generate challenge -func (ws *WsServer) sendClientAuthChallenge(sess *session.Session) error { +func (ms *MsgServer) sendClientAuthChallenge(sess *session.Session) error { resp := api.ResponsePack(errcode.SUCCESS) resp["Action"] = "authChallenge" @@ -633,6 +506,71 @@ func (ws *WsServer) sendClientAuthChallenge(sess *session.Session) error { resp["Challenge"] = hex.EncodeToString(challenge) sess.Challenge = challenge // save this challenge for verifying later. - err := ws.respondToSession(sess, resp) + err := ms.respondToSession(sess, resp) return err } + +func (ms *MsgServer) newConnection(conn session.Conn, r *http.Request) { + sess, err := ms.SessionList.NewSession(conn) + if err != nil { + log.Error("websocket NewSession:", err) + return + } + + defer func() { + ms.deleteTxHashs(sess.GetSessionId()) + ms.SessionList.CloseSession(sess) + if err := recover(); err != nil { + log.Error("websocket recover:", err) + } + }() + + conn.SetReadLimit(maxMessageSize) + conn.SetReadDeadline(time.Now().Add(pongTimeout)) + conn.SetPongHandler(func(string) error { + conn.SetReadDeadline(time.Now().Add(pongTimeout)) + sess.UpdateLastReadTime() + return nil + }) + + // client auth + err = ms.sendClientAuthChallenge(sess) + if err != nil { + log.Error("send client auth challenge: ", err) + return + } + + done := make(chan struct{}) + defer close(done) + go func() { + ticker := time.NewTicker(pingInterval) + defer ticker.Stop() + var err error + for { + select { + case <-ticker.C: + err = sess.Ping() + if err != nil { + return + } + case <-done: + return + } + } + }() + + for { + messageType, bysMsg, err := conn.ReadMessage() + if err != nil { + log.Errorf("websocket read message error: %v", err) + break + } + conn.SetReadDeadline(time.Now().Add(pongTimeout)) + sess.UpdateLastReadTime() + + err = ms.OnDataHandle(sess, messageType, bysMsg, r) + if err != nil { + log.Error(err) + } + } +} diff --git a/api/websocket/server/wsserver.go b/api/websocket/server/wsserver.go new file mode 100644 index 000000000..f91762165 --- /dev/null +++ b/api/websocket/server/wsserver.go @@ -0,0 +1,117 @@ +package server + +import ( + "context" + "crypto/tls" + "net" + "net/http" + "strconv" + "time" + + "github.com/gorilla/websocket" + api "github.com/nknorg/nkn/v2/api/common" + "github.com/nknorg/nkn/v2/api/ratelimiter" + "github.com/nknorg/nkn/v2/config" + "github.com/nknorg/nkn/v2/util/log" +) + +// type conn interface { +// Start(s *MsgServer, wssCertReady chan struct{}) error +// } + +type wsServer struct { + s *MsgServer + Upgrader websocket.Upgrader + listener net.Listener + tlsListener net.Listener + server *http.Server + tlsServer *http.Server +} + +func (ws *wsServer) Start(s *MsgServer, wssCertReady chan struct{}) error { + ws.s = s + if config.Parameters.HttpWsPort == 0 { + log.Error("Not configure HttpWsPort port ") + return nil + } + ws.Upgrader.CheckOrigin = func(r *http.Request) bool { + return true + } + + var err error + + ws.listener, err = net.Listen("tcp", ":"+strconv.Itoa(int(config.Parameters.HttpWsPort))) + if err != nil { + log.Error("net.Listen: ", err.Error()) + return err + } + + ws.server = &http.Server{Handler: http.HandlerFunc(ws.websocketHandler)} + go ws.server.Serve(ws.listener) + + go func(wssCertReady chan struct{}) { + if wssCertReady == nil { + return + } + for { + select { + case <-wssCertReady: + log.Info("wss cert received") + ws.tlsListener, err = ws.initTlsListen() + if err != nil { + log.Error("Https Cert: ", err.Error()) + } + err = ws.server.Serve(ws.tlsListener) + if err != nil { + log.Error(err) + } + return + case <-time.After(300 * time.Second): + log.Info("wss server is unavailable yet") + } + } + }(wssCertReady) + + return nil +} + +func (ws *wsServer) websocketHandler(w http.ResponseWriter, r *http.Request) { + host, _, err := net.SplitHostPort(r.RemoteAddr) + if err == nil { + limiter := ratelimiter.GetLimiter("ws:"+host, config.Parameters.WsIPRateLimit, int(config.Parameters.WsIPRateBurst)) + if !limiter.Allow() { + log.Infof("Ws connection limit of %s reached", host) + w.WriteHeader(http.StatusTooManyRequests) + return + } + } + + wsServer, err := ws.Upgrader.Upgrade(w, r, nil) + if err != nil { + log.Error("websocket Upgrader: ", err) + return + } + defer wsServer.Close() + + ws.s.newConnection(wsServer, r) +} + +func (ws *wsServer) initTlsListen() (net.Listener, error) { + tlsConfig := &tls.Config{ + GetCertificate: api.GetWssCertificate, + } + + listener, err := tls.Listen("tcp", ":"+strconv.Itoa(int(config.Parameters.HttpWssPort)), tlsConfig) + if err != nil { + log.Error(err) + return nil, err + } + return listener, nil +} + +func (ws *wsServer) Stop() { + if ws.server != nil { + ws.server.Shutdown(context.Background()) + log.Error("Close websocket ") + } +} diff --git a/api/websocket/session/session.go b/api/websocket/session/session.go index 5435ccfe5..a9d152219 100644 --- a/api/websocket/session/session.go +++ b/api/websocket/session/session.go @@ -13,6 +13,17 @@ const ( writeTimeout = 10 * time.Second ) +type Conn interface { + SetReadLimit(int64) + SetReadDeadline(t time.Time) error + SetWriteDeadline(t time.Time) error + WriteMessage(messageType int, data []byte) (err error) + WriteJSON(v interface{}) error + ReadMessage() (messageType int, data []byte, err error) + SetPongHandler(func(string) error) + Close() error +} + type Session struct { sync.RWMutex sessionID string @@ -23,7 +34,7 @@ type Session struct { lastReadTime time.Time wsLock sync.Mutex - ws *websocket.Conn + ws Conn Challenge []byte // client auth, authorization challenge connectTime time.Time // The time which the session is established. @@ -33,7 +44,7 @@ func (s *Session) GetSessionId() string { return s.sessionID } -func newSession(wsConn *websocket.Conn) (session *Session, err error) { +func newSession(wsConn Conn) (session *Session, err error) { sessionID := uuid.NewUUID().String() session = &Session{ ws: wsConn, diff --git a/api/websocket/session/sessionlist.go b/api/websocket/session/sessionlist.go index a664671d4..51ac6f81b 100644 --- a/api/websocket/session/sessionlist.go +++ b/api/websocket/session/sessionlist.go @@ -3,8 +3,6 @@ package session import ( "errors" "sync" - - "github.com/gorilla/websocket" ) type SessionList struct { @@ -18,7 +16,7 @@ func NewSessionList() *SessionList { } } -func (sl *SessionList) NewSession(wsConn *websocket.Conn) (*Session, error) { +func (sl *SessionList) NewSession(wsConn Conn) (*Session, error) { session, err := newSession(wsConn) if err != nil { return nil, err diff --git a/api/websocket/websocket.go b/api/websocket/websocket.go index 891605410..f28745eb2 100644 --- a/api/websocket/websocket.go +++ b/api/websocket/websocket.go @@ -16,7 +16,7 @@ import ( "github.com/nknorg/nkn/v2/vault" ) -var ws *server.WsServer +var ws *server.MsgServer var ( pushBlockFlag bool = false @@ -24,10 +24,10 @@ var ( pushBlockTxsFlag bool = false ) -func NewServer(localNode node.ILocalNode, w *vault.Wallet) *server.WsServer { +func NewServer(localNode node.ILocalNode, w *vault.Wallet) *server.MsgServer { // common.SetNode(n) event.Queue.Subscribe(event.NewBlockProduced, SendBlock2WSclient) - ws = server.InitWsServer(localNode, w) + ws = server.InitMsgServer(localNode, w) return ws } @@ -124,6 +124,6 @@ func PushSigChainBlockHash(v interface{}) { } } -func GetServer() *server.WsServer { +func GetServer() *server.MsgServer { return ws } diff --git a/cmd/nknd/commands/root.go b/cmd/nknd/commands/root.go index 36ed5f1fc..1c6f945be 100644 --- a/cmd/nknd/commands/root.go +++ b/cmd/nknd/commands/root.go @@ -100,6 +100,7 @@ func init() { rootCmd.Flags().StringVar(&config.WebGuiListenAddress, "web-gui-listen-address", "", "web gui will listen this address (default: 127.0.0.1)") rootCmd.Flags().BoolVar(&config.WebGuiCreateWallet, "web-gui-create-wallet", false, "web gui create/open wallet") rootCmd.Flags().StringVar(&config.PasswordFile, "password-file", "", "read password from file, save password to file when --web-gui-create-wallet arguments be true and password file does not exist") + rootCmd.Flags().StringVar(&config.StunList, "stun", "", "Webrtc stun servers, multiple servers should be split by comma") rootCmd.Flags().MarkHidden("passwd") } diff --git a/config.local.json b/config.local.json index 562b3a41a..3500ac222 100644 --- a/config.local.json +++ b/config.local.json @@ -6,5 +6,10 @@ "SeedList": [ "http://127.0.0.1:30003" ], + "StunList": [ + "stun:stun.l.google.com:19302", + "stun:stun.cloudflare.com:3478", + "stun:stunserver.stunprotocol.org:3478" + ], "GenesisBlockProposer": "" } diff --git a/config.mainnet.json b/config.mainnet.json index 2f3e2bdf5..8468c5ca6 100644 --- a/config.mainnet.json +++ b/config.mainnet.json @@ -46,5 +46,10 @@ "http://mainnet-seed-0043.nkn.org:30003", "http://mainnet-seed-0044.nkn.org:30003" ], + "StunList": [ + "stun:stun.l.google.com:19302", + "stun:stun.cloudflare.com:3478", + "stun:stunserver.stunprotocol.org:3478" + ], "GenesisBlockProposer": "a0309f8280ca86687a30ca86556113a253762e40eb884fc6063cad2b1ebd7de5" } diff --git a/config.testnet.json b/config.testnet.json index 92302ba9e..c1d6fa9be 100644 --- a/config.testnet.json +++ b/config.testnet.json @@ -7,6 +7,11 @@ "http://devnet-seed-0003.nkn.org:30003", "http://devnet-seed-0004.nkn.org:30003" ], + "StunList": [ + "stun:stun.l.google.com:19302", + "stun:stun.cloudflare.com:3478", + "stun:stunserver.stunprotocol.org:3478" + ], "GenesisBlockProposer": "0149c42944eea91f094c16538eff0449d4d1e236f31c8c706b2e40e98402984c", "BeneficiaryAddr": "" } diff --git a/config/config.go b/config/config.go index 405398587..e184f21e2 100644 --- a/config/config.go +++ b/config/config.go @@ -249,6 +249,7 @@ var ( WalletFile string BeneficiaryAddr string SeedList string + StunList string GenesisBlockProposer string AllowEmptyBeneficiaryAddress bool WebGuiListenAddress string @@ -332,6 +333,7 @@ var ( type Configuration struct { Version int `json:"Version"` SeedList []string `json:"SeedList"` + StunList []string `json:"StunList"` HttpWssDomain string `json:"HttpWssDomain"` HttpWssCert string `json:"HttpWssCert"` HttpWssKey string `json:"HttpWssKey"` @@ -449,6 +451,10 @@ func Init() error { Parameters.SeedList = strings.Split(SeedList, ",") } + if len(StunList) > 0 { + Parameters.StunList = strings.Split(StunList, ",") + } + if len(GenesisBlockProposer) > 0 { Parameters.GenesisBlockProposer = GenesisBlockProposer } @@ -558,6 +564,10 @@ func (config *Configuration) verify() error { return errors.New("seed list in config file should not be blank") } + if len(config.StunList) == 0 { + return errors.New("stun list in config file should not be blank") + } + if config.NumTxnPerBlock > MaxNumTxnPerBlock { return fmt.Errorf("NumTxnPerBlock cannot be greater than %d", MaxNumTxnPerBlock) } diff --git a/go.mod b/go.mod index 168390e10..d46ffb89a 100644 --- a/go.mod +++ b/go.mod @@ -21,15 +21,17 @@ require ( github.com/rdegges/go-ipify v0.0.0-20150526035502-2d94a6a86c40 github.com/spf13/cobra v1.4.0 github.com/spf13/pflag v1.0.5 - github.com/stretchr/testify v1.8.3 + github.com/stretchr/testify v1.9.0 github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954 github.com/wk8/go-ordered-map v1.0.0 - golang.org/x/crypto v0.17.0 - golang.org/x/sys v0.15.0 // indirect + golang.org/x/crypto v0.21.0 + golang.org/x/sys v0.18.0 // indirect golang.org/x/time v0.0.0-20201208040808-7e3f01d25324 google.golang.org/protobuf v1.30.0 ) +require github.com/pion/webrtc/v4 v4.0.0-beta.17 + require ( github.com/bytedance/sonic v1.9.1 // indirect github.com/cenkalti/backoff/v4 v4.0.0 // indirect @@ -43,7 +45,7 @@ require ( github.com/goccy/go-json v0.10.2 // indirect github.com/gogo/protobuf v1.3.2 // indirect github.com/golang/snappy v0.0.1 // indirect - github.com/google/uuid v1.1.1 // indirect + github.com/google/uuid v1.6.0 // indirect github.com/gorilla/context v1.1.1 // indirect github.com/gorilla/sessions v1.1.3 // indirect github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d // indirect @@ -65,6 +67,22 @@ require ( github.com/nknorg/go-nat v1.0.1 // indirect github.com/op/go-logging v0.0.0-20160315200505-970db520ece7 // indirect github.com/pelletier/go-toml/v2 v2.0.8 // indirect + github.com/pion/datachannel v1.5.6 // indirect + github.com/pion/dtls/v2 v2.2.10 // indirect + github.com/pion/ice/v3 v3.0.6 // indirect + github.com/pion/interceptor v0.1.29 // indirect + github.com/pion/logging v0.2.2 // indirect + github.com/pion/mdns/v2 v2.0.7 // indirect + github.com/pion/randutil v0.1.0 // indirect + github.com/pion/rtcp v1.2.14 // indirect + github.com/pion/rtp v1.8.5 // indirect + github.com/pion/sctp v1.8.16 // indirect + github.com/pion/sdp/v3 v3.0.9 // indirect + github.com/pion/srtp/v3 v3.0.1 // indirect + github.com/pion/stun/v2 v2.0.0 // indirect + github.com/pion/transport/v2 v2.2.4 // indirect + github.com/pion/transport/v3 v3.0.2 // indirect + github.com/pion/turn/v3 v3.0.2 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 // indirect @@ -77,8 +95,8 @@ require ( gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 // indirect gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 // indirect golang.org/x/arch v0.3.0 // indirect - golang.org/x/net v0.17.0 // indirect - golang.org/x/term v0.15.0 // indirect + golang.org/x/net v0.22.0 // indirect + golang.org/x/term v0.18.0 // indirect golang.org/x/text v0.14.0 // indirect gopkg.in/square/go-jose.v2 v2.3.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum index 9a97083b5..94208060a 100644 --- a/go.sum +++ b/go.sum @@ -173,8 +173,9 @@ github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hf github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/uuid v1.1.1 h1:Gkbcsh/GbpXz7lPftLA3P6TYMwjCLYm83jiFQZF/3gY= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/gophercloud/gophercloud v0.3.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= @@ -300,12 +301,12 @@ github.com/olekukonko/tablewriter v0.0.1/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXW github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.12.1/go.mod h1:zj2OWP4+oCPe1qIXoGWkgMRwljMUYCdkwsT2108oapk= -github.com/onsi/ginkgo v1.14.0 h1:2mOpI4JVVPBN+WQRa0WKH2eXR+Ey+uK4n7Zj0aYpIQA= github.com/onsi/ginkgo v1.14.0/go.mod h1:iSB4RoI2tjJc9BBv4NKIKWKya62Rps+oPG/Lv9klQyY= +github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= -github.com/onsi/gomega v1.10.1 h1:o0+MgICZLuZ7xjH7Vx6zS/zcu93/BEp1VwkIW1mEXCE= github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= +github.com/onsi/gomega v1.17.0 h1:9Luw4uT5HTjHTN8+aNcSThgH1vdXnmdJ8xIfZ4wyTRE= github.com/op/go-logging v0.0.0-20160315200505-970db520ece7 h1:lDH9UUVJtmYCjyT0CI4q8xvlXPxeZ0gYCVvWbmPlp88= github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= github.com/openzipkin/zipkin-go v0.1.6/go.mod h1:QgAqvLzwWbR/WpD4A3cGpPtJrZXNIiJc5AZX7/PBEpw= @@ -320,6 +321,46 @@ github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtP github.com/pelletier/go-toml/v2 v2.0.8 h1:0ctb6s9mE31h0/lhu+J6OPmVeDxJn+kYnJc2jZR9tGQ= github.com/pelletier/go-toml/v2 v2.0.8/go.mod h1:vuYfssBdrU2XDZ9bYydBu6t+6a6PYNcZljzZR9VXg+4= github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= +github.com/pion/datachannel v1.5.6 h1:1IxKJntfSlYkpUj8LlYRSWpYiTTC02nUrOE8T3DqGeg= +github.com/pion/datachannel v1.5.6/go.mod h1:1eKT6Q85pRnr2mHiWHxJwO50SfZRtWHTsNIVb/NfGW4= +github.com/pion/dtls/v2 v2.2.7/go.mod h1:8WiMkebSHFD0T+dIU+UeBaoV7kDhOW5oDCzZ7WZ/F9s= +github.com/pion/dtls/v2 v2.2.10 h1:u2Axk+FyIR1VFTPurktB+1zoEPGIW3bmyj3LEFrXjAA= +github.com/pion/dtls/v2 v2.2.10/go.mod h1:d9SYc9fch0CqK90mRk1dC7AkzzpwJj6u2GU3u+9pqFE= +github.com/pion/ice/v3 v3.0.6 h1:UC5vZCMhmve7yv+Y6E5eTnRTl+t9LLtmeBYQ9038Zm8= +github.com/pion/ice/v3 v3.0.6/go.mod h1:4eMTUKQEjC1fGQGB6qUzy2ux9Pc1v9EsO3hNaii+kXI= +github.com/pion/interceptor v0.1.29 h1:39fsnlP1U8gw2JzOFWdfCU82vHvhW9o0rZnZF56wF+M= +github.com/pion/interceptor v0.1.29/go.mod h1:ri+LGNjRUc5xUNtDEPzfdkmSqISixVTBF/z/Zms/6T4= +github.com/pion/logging v0.2.2 h1:M9+AIj/+pxNsDfAT64+MAVgJO0rsyLnoJKCqf//DoeY= +github.com/pion/logging v0.2.2/go.mod h1:k0/tDVsRCX2Mb2ZEmTqNa7CWsQPc+YYCB7Q+5pahoms= +github.com/pion/mdns/v2 v2.0.7 h1:c9kM8ewCgjslaAmicYMFQIde2H9/lrZpjBkN8VwoVtM= +github.com/pion/mdns/v2 v2.0.7/go.mod h1:vAdSYNAT0Jy3Ru0zl2YiW3Rm/fJCwIeM0nToenfOJKA= +github.com/pion/randutil v0.1.0 h1:CFG1UdESneORglEsnimhUjf33Rwjubwj6xfiOXBa3mA= +github.com/pion/randutil v0.1.0/go.mod h1:XcJrSMMbbMRhASFVOlj/5hQial/Y8oH/HVo7TBZq+j8= +github.com/pion/rtcp v1.2.12/go.mod h1:sn6qjxvnwyAkkPzPULIbVqSKI5Dv54Rv7VG0kNxh9L4= +github.com/pion/rtcp v1.2.14 h1:KCkGV3vJ+4DAJmvP0vaQShsb0xkRfWkO540Gy102KyE= +github.com/pion/rtcp v1.2.14/go.mod h1:sn6qjxvnwyAkkPzPULIbVqSKI5Dv54Rv7VG0kNxh9L4= +github.com/pion/rtp v1.8.3/go.mod h1:pBGHaFt/yW7bf1jjWAoUjpSNoDnw98KTMg+jWWvziqU= +github.com/pion/rtp v1.8.5 h1:uYzINfaK+9yWs7r537z/Rc1SvT8ILjBcmDOpJcTB+OU= +github.com/pion/rtp v1.8.5/go.mod h1:pBGHaFt/yW7bf1jjWAoUjpSNoDnw98KTMg+jWWvziqU= +github.com/pion/sctp v1.8.13/go.mod h1:YKSgO/bO/6aOMP9LCie1DuD7m+GamiK2yIiPM6vH+GA= +github.com/pion/sctp v1.8.16 h1:PKrMs+o9EMLRvFfXq59WFsC+V8mN1wnKzqrv+3D/gYY= +github.com/pion/sctp v1.8.16/go.mod h1:P6PbDVA++OJMrVNg2AL3XtYHV4uD6dvfyOovCgMs0PE= +github.com/pion/sdp/v3 v3.0.9 h1:pX++dCHoHUwq43kuwf3PyJfHlwIj4hXA7Vrifiq0IJY= +github.com/pion/sdp/v3 v3.0.9/go.mod h1:B5xmvENq5IXJimIO4zfp6LAe1fD9N+kFv+V/1lOdz8M= +github.com/pion/srtp/v3 v3.0.1 h1:AkIQRIZ+3tAOJMQ7G301xtrD1vekQbNeRO7eY1K8ZHk= +github.com/pion/srtp/v3 v3.0.1/go.mod h1:3R3a1qIOIxBkVTLGFjafKK6/fJoTdQDhcC67HOyMbJ8= +github.com/pion/stun/v2 v2.0.0 h1:A5+wXKLAypxQri59+tmQKVs7+l6mMM+3d+eER9ifRU0= +github.com/pion/stun/v2 v2.0.0/go.mod h1:22qRSh08fSEttYUmJZGlriq9+03jtVmXNODgLccj8GQ= +github.com/pion/transport/v2 v2.2.1/go.mod h1:cXXWavvCnFF6McHTft3DWS9iic2Mftcz1Aq29pGcU5g= +github.com/pion/transport/v2 v2.2.4 h1:41JJK6DZQYSeVLxILA2+F4ZkKb4Xd/tFJZRFZQ9QAlo= +github.com/pion/transport/v2 v2.2.4/go.mod h1:q2U/tf9FEfnSBGSW6w5Qp5PFWRLRj3NjLhCCgpRK4p0= +github.com/pion/transport/v3 v3.0.1/go.mod h1:UY7kiITrlMv7/IKgd5eTUcaahZx5oUN3l9SzK5f5xE0= +github.com/pion/transport/v3 v3.0.2 h1:r+40RJR25S9w3jbA6/5uEPTzcdn7ncyU44RWCbHkLg4= +github.com/pion/transport/v3 v3.0.2/go.mod h1:nIToODoOlb5If2jF9y2Igfx3PFYWfuXi37m0IlWa/D0= +github.com/pion/turn/v3 v3.0.2 h1:iBonAIIKRwkVUJBFiFd/kSjytP7FlX0HwCyBDJPRDdU= +github.com/pion/turn/v3 v3.0.2/go.mod h1:vw0Dz420q7VYAF3J4wJKzReLHIo2LGp4ev8nXQexYsc= +github.com/pion/webrtc/v4 v4.0.0-beta.17 h1:KdAbozM+lQ3Dz1NJ0JATRDQ4W02WUhWwIkvjyBRODL0= +github.com/pion/webrtc/v4 v4.0.0-beta.17/go.mod h1:I/Z0MFtc6Ok7mN7kZmA1xqU7KA9ycZZx/6eXz5+yD+4= github.com/pkg/errors v0.0.0-20190227000051-27936f6d90f9/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -368,6 +409,7 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -378,8 +420,10 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.3 h1:RP3t2pwF7cMEbC1dqtB6poj3niw/9gnV4Cjg5oW5gtY= github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954 h1:xQdMZ1WLrgkkvOZ/LDQxjVxMLdby7osSh4ZEVa5sIjs= github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954/go.mod h1:u2MKkTVTVJWe5D1rCvame8WqhBd88EuIwODJZ1VHCPM= github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 h1:89CEmDvlq/F7SJEOqkIdNDGJXrQIhuIx9D2DBXjavSU= @@ -409,6 +453,7 @@ github.com/xtaci/smux v1.2.11 h1:QI4M2HgkkpsVU3Bfcmyx10qURBEeHfKi7xDhGEORfu0= github.com/xtaci/smux v1.2.11/go.mod h1:f+nYm6SpuHMy/SH0zpbvAFHT1QoMcgLOsWcFip5KfPw= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 h1:dizWJqTWjwyD8KGcMOwgrkqu1JIkofYgKkmDeNE7oAs= gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40/go.mod h1:rOnSnoRyxMI3fe/7KIbVcsHRGxe30OONv8dEgo+vCfA= gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 h1:qXqiXDgeQxspR3reot1pWme00CX1pXbxesdzND+EjbU= @@ -435,8 +480,13 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20191206172530-e9b2fee46413/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.17.0 h1:r8bRNjWL3GshPW3gkd+RpvzWrZAwPS49OmTGZ/uhM4k= -golang.org/x/crypto v0.17.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= +golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw= +golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= +golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= +golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= +golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -467,6 +517,8 @@ golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzB golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180524181706-dfa909b99c79/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180611182652-db08ff08e862/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -497,8 +549,16 @@ golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= -golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= +golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= +golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= +golang.org/x/net v0.22.0 h1:9sGLhx7iRIHEiX0oAJ3MRZMUCElJgy7Br1nO+AMN3Tc= +golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -510,8 +570,10 @@ golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9 h1:SQFwaSi55rU7vdNs9Yr0Z324VNlrF+0wMqRXT4St8ck= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180622082034-63fc586f45fe/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -549,17 +611,39 @@ golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc= -golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4= -golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0= +golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= +golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU= +golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= +golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= +golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= +golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= @@ -603,6 +687,8 @@ golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapK golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= @@ -662,8 +748,9 @@ google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cn google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/go-playground/assert.v1 v1.2.1/go.mod h1:9RXL0bg/zibRAgZUYszZSwO/z8Y/a8bDuhia5mkpMnE= From 4d090451bf11b586d6af862505c3e1049b50f2a7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 27 Apr 2024 12:25:55 +0000 Subject: [PATCH 09/30] Bump golang.org/x/net from 0.17.0 to 0.23.0 Bumps [golang.org/x/net](https://github.com/golang/net) from 0.17.0 to 0.23.0. - [Commits](https://github.com/golang/net/compare/v0.17.0...v0.23.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/go.mod b/go.mod index d46ffb89a..c8acefb24 100644 --- a/go.mod +++ b/go.mod @@ -95,7 +95,7 @@ require ( gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 // indirect gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 // indirect golang.org/x/arch v0.3.0 // indirect - golang.org/x/net v0.22.0 // indirect + golang.org/x/net v0.23.0 // indirect golang.org/x/term v0.18.0 // indirect golang.org/x/text v0.14.0 // indirect gopkg.in/square/go-jose.v2 v2.3.1 // indirect diff --git a/go.sum b/go.sum index 94208060a..ce06d030d 100644 --- a/go.sum +++ b/go.sum @@ -557,8 +557,9 @@ golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.22.0 h1:9sGLhx7iRIHEiX0oAJ3MRZMUCElJgy7Br1nO+AMN3Tc= golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= +golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= From a65026f7ccebdd1ab04399ee33bebe45a4b8c423 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 13 Mar 2024 22:48:21 +0000 Subject: [PATCH 10/30] Bump google.golang.org/protobuf from 1.30.0 to 1.33.0 Bumps google.golang.org/protobuf from 1.30.0 to 1.33.0. --- updated-dependencies: - dependency-name: google.golang.org/protobuf dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index c8acefb24..97d2ba97f 100644 --- a/go.mod +++ b/go.mod @@ -27,7 +27,7 @@ require ( golang.org/x/crypto v0.21.0 golang.org/x/sys v0.18.0 // indirect golang.org/x/time v0.0.0-20201208040808-7e3f01d25324 - google.golang.org/protobuf v1.30.0 + google.golang.org/protobuf v1.33.0 ) require github.com/pion/webrtc/v4 v4.0.0-beta.17 diff --git a/go.sum b/go.sum index ce06d030d..22e6a3b24 100644 --- a/go.sum +++ b/go.sum @@ -745,8 +745,8 @@ google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miE google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= -google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= +google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= From d8381dad890df2d4faba0ef46fc5d3d32dc12b8f Mon Sep 17 00:00:00 2001 From: Yilun Date: Wed, 8 May 2024 01:55:10 -0700 Subject: [PATCH 11/30] make config.json optional Signed-off-by: Yilun --- README.md | 86 ++++++++++++++-------------------- api/httpjson/RPCserver.go | 3 +- api/websocket/server/server.go | 7 +-- config.local.json | 19 ++------ config.mainnet.json | 56 +--------------------- config.testnet.json | 17 ------- config/config.go | 18 ++++++- 7 files changed, 64 insertions(+), 142 deletions(-) delete mode 100644 config.testnet.json diff --git a/README.md b/README.md index 5e7516cde..5f3c609b8 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,16 @@ # NKN Full Node -### *Official Go implementation of NKN full node.* +### _Official Go implementation of NKN full node._ +
[![GitHub license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![Go Report Card](https://goreportcard.com/badge/github.com/nknorg/nkn)](https://goreportcard.com/report/github.com/nknorg/nkn) [![Build Status](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml/badge.svg)](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](#contributing) ### Dev Status: V2 line, Production (Stable and Feature-Complete) + --- +
> NKN, short for New Kind of Network, is a project aiming to rebuild the @@ -21,9 +24,9 @@ Note: This is the official **full node** implementation of the NKN protocol, which relays data for clients and earn mining rewards. For **client** implementation which can send and receive data, please refer to: -* [nkn-sdk-go](https://github.com/nknorg/nkn-sdk-go) -* [nkn-sdk-js](https://github.com/nknorg/nkn-sdk-js) -* [nkn-java-sdk](https://github.com/nknorg/nkn-java-sdk) +- [nkn-sdk-go](https://github.com/nknorg/nkn-sdk-go) +- [nkn-sdk-js](https://github.com/nknorg/nkn-sdk-js) +- [nkn-java-sdk](https://github.com/nknorg/nkn-java-sdk) ## Introduction @@ -50,13 +53,13 @@ More details can be found in [our wiki](https://github.com/nknorg/nkn/wiki). ## Technical Highlights -* Transmit any data to any node/client without any centralized server. -* Proof-of-Relay, a useful proof of work: mining is relaying data. -* Extremely scalable consensus algorithm (billions of nodes within seconds). -* Strong consistency rather than eventual consistency. -* Dynamic, large-scale network. -* Verifiable topology and routes. -* Secure address scheme with public key embedded. +- Transmit any data to any node/client without any centralized server. +- Proof-of-Relay, a useful proof of work: mining is relaying data. +- Extremely scalable consensus algorithm (billions of nodes within seconds). +- Strong consistency rather than eventual consistency. +- Dynamic, large-scale network. +- Verifiable topology and routes. +- Secure address scheme with public key embedded. ### Use pre-built binaries @@ -68,7 +71,7 @@ a node. ### Use pre-built Docker image -*Prerequirement*: Have working docker software installed. For help with that +_Prerequirement_: Have working docker software installed. For help with that visit [official docker docs](https://docs.docker.com/install/#supported-platforms) @@ -85,7 +88,7 @@ a node. ### Building using Docker -*Prerequirement*: Have working docker software installed. For help with that +_Prerequirement_: Have working docker software installed. For help with that visit [official docker docs](https://docs.docker.com/install/#supported-platforms) @@ -111,6 +114,7 @@ $ make ``` Run Unit Tests + ```sh # run all tests $ go test -v ./... @@ -121,8 +125,8 @@ go test -v ./chain/store After building is successful, you should see two executables: -* `nknd`: the nkn node program -* `nknc`: command line tool for nkn node control +- `nknd`: the nkn node program +- `nknc`: command line tool for nkn node control Now you can see [configuration](#configuration) for how to configure and run a node. @@ -152,9 +156,8 @@ be specified by passing arguments to `nknd` or in `config.json`, run `nknd We provide a few sample `config.json`: -* `config.mainnet.json`: join the mainnet -* `config.testnet.json`: join the testnet -* `config.local.json`: create and join a private chain on your localhost +- `config.mainnet.json`: join the mainnet +- `config.local.json`: create and join a private chain on your localhost You can copy the one you want to `config.json` or write your own. @@ -162,6 +165,8 @@ For convenience, we ship a copy of `config.mainnet.json` in release version (as `default.json`) and in docker image (under `/nkn/`). The docker container will copy this default one to `/nkn/data/config.json` if not exists on nknd launch. +If config file is not provided, node will join the mainnet by default. + #### `wallet.json`: Before starting the node, you need to create a new wallet first. Wallet @@ -169,7 +174,7 @@ information will be saved at `wallet.json` and it's encrypted with the password you provided when creating the wallet. So please make sure you pick a strong password and remember it! -``` shell +```shell $ ./nknc wallet -c Password: Re-enter Password: @@ -191,11 +196,7 @@ random password saved to `/nkn/data/wallet.pswd` if not exists on nknd launch. #### `certs/` -`nknd` uses Let's Encrypt to apply and renew TLS certificate and put in into -`cert/` directory. - -By default `nknd` will generate certificate with `x-x-x-x.ipv4.nknlabs.io` domain name which `x-x-x-x` is your ipv4 -address, replace dot with dash. +`nknd` uses Let's Encrypt to apply and renew TLS certificate and put in into `cert/` directory. By default `nknd` will generate certificate with `x-x-x-x.ipv4.staticdns{1,2,3}.io` domain name which `x-x-x-x` is your ipv4 address, replace dot with dash. **The default cert domain is deprecated and will be removed in the future version. Please provide your own domain or cert if you need to use tls.** If you would like to use your own domain name, simply set `CertDomainName` with your domain name in `config.json`, `nknd` will automatically apply or renew certificate from Let's Encrypt and deploy it. @@ -204,7 +205,6 @@ If you already have certificate and want to use it in `nknd`, you can put it in `HttpsJsonDomain` `HttpWssDomain` with your domain name, `HttpsJsonCert` `HttpsJsonKey` `HttpWssCert` `HttpWssKey` with your certificate full chain file and private key file. - #### Data and Logs After `nknd` starts, it will creates two directories: `ChainDB` to store @@ -212,9 +212,7 @@ blockchain data, and `Log` to store logs. By default `nknd` will creates these directories in the current working directory, but it can be changed by passing `--chaindb` and `--log` arguments to `nknd` or specify in config.json. -Now you can [join the mainnet](#join-the-mainnet), [join the -testnet](#join-the-testnet) or [create a private -chain](https://github.com/nknorg/nkn/wiki/Create-a-Private-Chain). +Now you can [join the mainnet](#join-the-mainnet) or [create a private chain](https://github.com/nknorg/nkn/wiki/Create-a-Private-Chain). ### Join the MainNet @@ -261,12 +259,12 @@ wrong. If the problem still persists, [create an issue](https://github.com/nknorg/nkn/issues/new) or ask us in our [Discord group](#community). -### [Recommended] Using BeneficiaryAddr +### [Recommended] Using Beneficiary Address By default, token mined by your node will be sent to the wallet your node is using, which is NOT as safe as you might think. The recommended way is to use another cold wallet (that is saved and backed up well) to store your token. You -can use your code wallet address as `BeneficiaryAddr` in `config.json` such that +can use your code wallet address as `beneficiaryAddr` in `config.json` such that token mined by your node will be sent directly to that beneficiary address. This is safer and more convenient because: 1. even if your node is hacked, or your node wallet is leaked, you will not lose any token; 2. if you run multiple @@ -275,16 +273,7 @@ address. ### NAT traversal and port forwarding -Most likely your node is behind a router and does not have a public IP address. -By default, `nknd` will try to detect if your router supports UPnP or NAT-PMP -protocol, and if success, it will try to set up port forwarding automatically. -You can add `--no-nat` flag when starting nknd OR add `"NAT": false` in -`config.json` to disable automatic port forwarding. If your router does not -support such protocol, you **have to** setup port forwarding on your router for -port 30001 as well as **all** other ports specified in `config.json` -(30001-30005 by default), otherwise other nodes cannot establish connections to -you and you will **NOT** be able to mine token even though your node can still -run and sync blocks. +By default, `nknd` will try to detect if your node is behind a router and if your router supports UPnP or NAT-PMP protocol, and if success, it will try to set up port forwarding automatically. You can add `--no-nat` flag when starting nknd OR add `"NAT": false` in `config.json` to disable automatic port forwarding. If your router does not support such protocol, you **have to** setup port forwarding on your router for port 30001 as well as **all** other ports specified in `config.json` (30001-30005 by default), otherwise other nodes cannot establish connections to you and you will **NOT** be able to earn mining rewards even though your node can still run and sync blocks. When setting up port forwarding, public port needs to be the same as private port mapped to your node. For example, you should map port 30001 on your @@ -297,13 +286,6 @@ mappings, one for each port. One of the easiest way to find out how to setup port forwarding on your router is to search "how to setup port forwarding" + your router model or name online. -### Join the TestNet - -Joining the TestNet is the same as joining MainNet, except for using -`config.testnet.json` as your config file instead of `config.mainnet.json`. Note -that TestNet token is for testing purpose only (thus do not have value), and may -be cleared at any time when TestNet upgrades. - ## Contributing **Can I submit a bug, suggestion or feature request?** @@ -330,8 +312,8 @@ git commit -s ## Community -* [Forum](https://forum.nkn.org/) -* [Discord](https://discord.gg/c7mTynX) -* [Telegram](https://t.me/nknorg) -* [Reddit](https://www.reddit.com/r/nknblockchain/) -* [Twitter](https://twitter.com/NKN_ORG) +- [Forum](https://forum.nkn.org/) +- [Discord](https://discord.gg/c7mTynX) +- [Telegram](https://t.me/nknorg) +- [Reddit](https://www.reddit.com/r/nknblockchain/) +- [Twitter](https://twitter.com/NKN_ORG) diff --git a/api/httpjson/RPCserver.go b/api/httpjson/RPCserver.go index 217b4cbd6..5754f654d 100644 --- a/api/httpjson/RPCserver.go +++ b/api/httpjson/RPCserver.go @@ -182,7 +182,8 @@ func (s *RPCServer) Handle(w http.ResponseWriter, r *http.Request) { err := recover() if err != nil { var code errcode.ErrCode - if _, err = chain.GetDefaultLedger(); err != nil { + if _, e := chain.GetDefaultLedger(); e != nil { + err = e code = errcode.ErrNullDB } else if s.GetNetNode() == nil { code = errcode.ErrNullID diff --git a/api/websocket/server/server.go b/api/websocket/server/server.go index 2e56998af..9181ca62c 100644 --- a/api/websocket/server/server.go +++ b/api/websocket/server/server.go @@ -9,6 +9,7 @@ import ( "crypto/tls" "encoding/hex" "encoding/json" + "errors" "fmt" "io" "net" @@ -159,7 +160,7 @@ func (ms *MsgServer) registryMethod() { if okSig && okSalt { // if client send ClientSalt and Signature, then check it strSignature, typeOk := signature.(string) // interface type assertion if !typeOk { - return api.RespPacking(err.Error(), errcode.INVALID_PARAMS) + return api.RespPacking(errors.New("invalid signature"), errcode.INVALID_PARAMS) } byteSignature, err := hex.DecodeString(strSignature) if err != nil { @@ -168,7 +169,7 @@ func (ms *MsgServer) registryMethod() { strClientSalt, typeOk := clientSalt.(string) // interface type assertion if !typeOk { - return api.RespPacking(err.Error(), errcode.INVALID_PARAMS) + return api.RespPacking(errors.New("invalid salt"), errcode.INVALID_PARAMS) } byteClientSalt, err := hex.DecodeString(strClientSalt) if err != nil { @@ -562,7 +563,7 @@ func (ms *MsgServer) newConnection(conn session.Conn, r *http.Request) { for { messageType, bysMsg, err := conn.ReadMessage() if err != nil { - log.Errorf("websocket read message error: %v", err) + log.Debugf("websocket read message error: %v", err) break } conn.SetReadDeadline(time.Now().Add(pongTimeout)) diff --git a/config.local.json b/config.local.json index 3500ac222..41e7eb131 100644 --- a/config.local.json +++ b/config.local.json @@ -1,15 +1,6 @@ -{ - "NAT": false, - "HttpWsPort": 30002, - "HttpJsonPort": 30003, - "Hostname": "127.0.0.1", - "SeedList": [ - "http://127.0.0.1:30003" - ], - "StunList": [ - "stun:stun.l.google.com:19302", - "stun:stun.cloudflare.com:3478", - "stun:stunserver.stunprotocol.org:3478" - ], - "GenesisBlockProposer": "" +{ + "nat": false, + "hostname": "127.0.0.1", + "seedList": ["http://127.0.0.1:30003"], + "genesisBlockProposer": "" } diff --git a/config.mainnet.json b/config.mainnet.json index 8468c5ca6..ab3a8ccb7 100644 --- a/config.mainnet.json +++ b/config.mainnet.json @@ -1,55 +1,3 @@ -{ - "BeneficiaryAddr": "", - "SeedList": [ - "http://mainnet-seed-0001.nkn.org:30003", - "http://mainnet-seed-0002.nkn.org:30003", - "http://mainnet-seed-0003.nkn.org:30003", - "http://mainnet-seed-0004.nkn.org:30003", - "http://mainnet-seed-0005.nkn.org:30003", - "http://mainnet-seed-0006.nkn.org:30003", - "http://mainnet-seed-0007.nkn.org:30003", - "http://mainnet-seed-0008.nkn.org:30003", - "http://mainnet-seed-0009.nkn.org:30003", - "http://mainnet-seed-0010.nkn.org:30003", - "http://mainnet-seed-0011.nkn.org:30003", - "http://mainnet-seed-0012.nkn.org:30003", - "http://mainnet-seed-0013.nkn.org:30003", - "http://mainnet-seed-0014.nkn.org:30003", - "http://mainnet-seed-0015.nkn.org:30003", - "http://mainnet-seed-0016.nkn.org:30003", - "http://mainnet-seed-0017.nkn.org:30003", - "http://mainnet-seed-0018.nkn.org:30003", - "http://mainnet-seed-0019.nkn.org:30003", - "http://mainnet-seed-0020.nkn.org:30003", - "http://mainnet-seed-0021.nkn.org:30003", - "http://mainnet-seed-0022.nkn.org:30003", - "http://mainnet-seed-0023.nkn.org:30003", - "http://mainnet-seed-0024.nkn.org:30003", - "http://mainnet-seed-0025.nkn.org:30003", - "http://mainnet-seed-0026.nkn.org:30003", - "http://mainnet-seed-0027.nkn.org:30003", - "http://mainnet-seed-0028.nkn.org:30003", - "http://mainnet-seed-0029.nkn.org:30003", - "http://mainnet-seed-0030.nkn.org:30003", - "http://mainnet-seed-0031.nkn.org:30003", - "http://mainnet-seed-0032.nkn.org:30003", - "http://mainnet-seed-0033.nkn.org:30003", - "http://mainnet-seed-0034.nkn.org:30003", - "http://mainnet-seed-0035.nkn.org:30003", - "http://mainnet-seed-0036.nkn.org:30003", - "http://mainnet-seed-0037.nkn.org:30003", - "http://mainnet-seed-0038.nkn.org:30003", - "http://mainnet-seed-0039.nkn.org:30003", - "http://mainnet-seed-0040.nkn.org:30003", - "http://mainnet-seed-0041.nkn.org:30003", - "http://mainnet-seed-0042.nkn.org:30003", - "http://mainnet-seed-0043.nkn.org:30003", - "http://mainnet-seed-0044.nkn.org:30003" - ], - "StunList": [ - "stun:stun.l.google.com:19302", - "stun:stun.cloudflare.com:3478", - "stun:stunserver.stunprotocol.org:3478" - ], - "GenesisBlockProposer": "a0309f8280ca86687a30ca86556113a253762e40eb884fc6063cad2b1ebd7de5" +{ + "beneficiaryAddr": "" } diff --git a/config.testnet.json b/config.testnet.json deleted file mode 100644 index c1d6fa9be..000000000 --- a/config.testnet.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "HttpWsPort": 30002, - "HttpJsonPort": 30003, - "SeedList": [ - "http://devnet-seed-0001.nkn.org:30003", - "http://devnet-seed-0002.nkn.org:30003", - "http://devnet-seed-0003.nkn.org:30003", - "http://devnet-seed-0004.nkn.org:30003" - ], - "StunList": [ - "stun:stun.l.google.com:19302", - "stun:stun.cloudflare.com:3478", - "stun:stunserver.stunprotocol.org:3478" - ], - "GenesisBlockProposer": "0149c42944eea91f094c16538eff0449d4d1e236f31c8c706b2e40e98402984c", - "BeneficiaryAddr": "" -} diff --git a/config/config.go b/config/config.go index e184f21e2..9c27bc7d8 100644 --- a/config/config.go +++ b/config/config.go @@ -326,7 +326,23 @@ var ( SyncBlockRateBurst: 1024, SyncMode: "full", MaxRollbackBlocks: 180, - ClientMsgCacheSize: 0, // client relay messag cache mega bytes + ClientMsgCacheSize: 0, + GenesisBlockProposer: "a0309f8280ca86687a30ca86556113a253762e40eb884fc6063cad2b1ebd7de5", + SeedList: []string{ + "http://mainnet-seed-0001.nkn.org:30003", + "http://mainnet-seed-0002.nkn.org:30003", + "http://mainnet-seed-0003.nkn.org:30003", + "http://mainnet-seed-0004.nkn.org:30003", + "http://mainnet-seed-0005.nkn.org:30003", + "http://mainnet-seed-0006.nkn.org:30003", + "http://mainnet-seed-0007.nkn.org:30003", + "http://mainnet-seed-0008.nkn.org:30003", + }, + StunList: []string{ + "stun:stun.l.google.com:19302", + "stun:stun.cloudflare.com:3478", + "stun:stunserver.stunprotocol.org:3478", + }, } ) From f6a58029cb6993275aca635fbb4b5fec0c95fad2 Mon Sep 17 00:00:00 2001 From: Yilun Date: Wed, 8 May 2024 02:27:05 -0700 Subject: [PATCH 12/30] reduce webrtc error log lvl Signed-off-by: Yilun --- api/webrtc/webrtc.go | 6 +++--- api/websocket/server/relay.go | 2 +- api/websocket/server/wsserver.go | 4 ---- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/api/webrtc/webrtc.go b/api/webrtc/webrtc.go index ac76d3823..84160c91f 100644 --- a/api/webrtc/webrtc.go +++ b/api/webrtc/webrtc.go @@ -100,7 +100,7 @@ func (c *Peer) Offer(label string) error { return err } dc.OnOpen(func() { - log.Debugf("data channel %v has been opened\n", dc.Label()) + log.Debugf("Data channel %v has been opened\n", dc.Label()) c.mutex.Lock() defer c.mutex.Unlock() c.isConnected = true @@ -133,7 +133,7 @@ func (c *Peer) Offer(label string) error { }) dc.OnError(func(err error) { - log.Errorf("Data Channel %s error: %s\n", dc.Label(), err.Error()) + log.Debugf("Data channel %s error: %s\n", dc.Label(), err.Error()) }) offer, err := c.pc.CreateOffer(&webrtc.OfferOptions{ICERestart: false}) @@ -232,7 +232,7 @@ func (c *Peer) Answer(offerSdp string) error { }) dc.OnError(func(err error) { - log.Errorf("Data Channel %v error: %s\n", dc.Label(), err.Error()) + log.Debugf("Data channel %v error: %s\n", dc.Label(), err.Error()) }) }) diff --git a/api/websocket/server/relay.go b/api/websocket/server/relay.go index d3bb83b6c..fa9bdce75 100644 --- a/api/websocket/server/relay.go +++ b/api/websocket/server/relay.go @@ -95,7 +95,7 @@ func (ms *MsgServer) sendInboundMessage(clientID string, inboundMsg *pb.InboundM err = client.SendBinary(buf) if err != nil { - log.Error("Send to client error: ", err) + log.Debugf("Send to client error: %v", err) continue } diff --git a/api/websocket/server/wsserver.go b/api/websocket/server/wsserver.go index f91762165..5236e90da 100644 --- a/api/websocket/server/wsserver.go +++ b/api/websocket/server/wsserver.go @@ -15,10 +15,6 @@ import ( "github.com/nknorg/nkn/v2/util/log" ) -// type conn interface { -// Start(s *MsgServer, wssCertReady chan struct{}) error -// } - type wsServer struct { s *MsgServer Upgrader websocket.Upgrader From bbd586f3e200ccfc78fcda2ed0b4dd91e91db26c Mon Sep 17 00:00:00 2001 From: Yilun Date: Wed, 8 May 2024 02:48:32 -0700 Subject: [PATCH 13/30] gofmt Signed-off-by: Yilun --- README.md | 2 +- api/websocket/server/server.go | 2 +- common/serialization/serialize.go | 2 +- dashboard/routes/common/sync.go | 2 +- dashboard/routes/node/beneficiary.go | 2 +- dashboard/routes/wallet/create.go | 2 +- pb/transaction.go | 4 ++-- program/program.go | 18 +++++++++--------- signature/signature.go | 2 +- signature/signer.go | 2 +- 10 files changed, 19 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 5f3c609b8..f13d833b8 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@
-[![GitHub license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![Go Report Card](https://goreportcard.com/badge/github.com/nknorg/nkn)](https://goreportcard.com/report/github.com/nknorg/nkn) [![Build Status](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml/badge.svg)](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](#contributing) +[![GitHub license](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![Go Report Card](https://goreportcard.com/badge/github.com/nknorg/nkn/v2)](https://goreportcard.com/report/github.com/nknorg/nkn/v2) [![Build Status](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml/badge.svg)](https://github.com/nknorg/nkn/actions/workflows/build-ubuntu.yml) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](#contributing) ### Dev Status: V2 line, Production (Stable and Feature-Complete) diff --git a/api/websocket/server/server.go b/api/websocket/server/server.go index 9181ca62c..0254a8e57 100644 --- a/api/websocket/server/server.go +++ b/api/websocket/server/server.go @@ -184,7 +184,7 @@ func (ms *MsgServer) registryMethod() { err = crypto.Verify(pubKey, hash[:], byteSignature) if err != nil { // fail verify challenge signature go func() { - log.Warning("Client signature is not right, close its conneciton now") + log.Warning("Client signature is not right, close its connection now") time.Sleep(3 * time.Second) // sleep several second, let response reach client ms.SessionList.CloseSession(sess) // close this session }() diff --git a/common/serialization/serialize.go b/common/serialization/serialize.go index 318242733..0c0d7daed 100644 --- a/common/serialization/serialize.go +++ b/common/serialization/serialize.go @@ -10,7 +10,7 @@ import ( var ErrRange = errors.New("value out of range") var ErrEof = errors.New("got EOF, can not get the next byte") -//SerializableData describe the data need be serialized. +// SerializableData describe the data need be serialized. type SerializableData interface { //Write data to writer diff --git a/dashboard/routes/common/sync.go b/dashboard/routes/common/sync.go index b8105d85c..31c6f9d29 100644 --- a/dashboard/routes/common/sync.go +++ b/dashboard/routes/common/sync.go @@ -2,8 +2,8 @@ package common import ( "github.com/gin-gonic/gin" - serviceConfig "github.com/nknorg/nkn/v2/dashboard/config" "github.com/nknorg/nkn/v2/config" + serviceConfig "github.com/nknorg/nkn/v2/dashboard/config" "net/http" "time" ) diff --git a/dashboard/routes/node/beneficiary.go b/dashboard/routes/node/beneficiary.go index 0218576ba..8445f442b 100644 --- a/dashboard/routes/node/beneficiary.go +++ b/dashboard/routes/node/beneficiary.go @@ -3,9 +3,9 @@ package node import ( "encoding/json" "github.com/gin-gonic/gin" + "github.com/nknorg/nkn/v2/config" "github.com/nknorg/nkn/v2/dashboard/auth" "github.com/nknorg/nkn/v2/dashboard/helpers" - "github.com/nknorg/nkn/v2/config" "github.com/nknorg/nkn/v2/util/log" "net/http" ) diff --git a/dashboard/routes/wallet/create.go b/dashboard/routes/wallet/create.go index fb463193d..43448cc0e 100644 --- a/dashboard/routes/wallet/create.go +++ b/dashboard/routes/wallet/create.go @@ -6,9 +6,9 @@ import ( "net/http" "github.com/gin-gonic/gin" + "github.com/nknorg/nkn/v2/config" serviceConfig "github.com/nknorg/nkn/v2/dashboard/config" "github.com/nknorg/nkn/v2/dashboard/helpers" - "github.com/nknorg/nkn/v2/config" "github.com/nknorg/nkn/v2/util/log" "github.com/nknorg/nkn/v2/util/password" "github.com/nknorg/nkn/v2/vault" diff --git a/pb/transaction.go b/pb/transaction.go index 89535575d..570777141 100644 --- a/pb/transaction.go +++ b/pb/transaction.go @@ -10,7 +10,7 @@ import ( "github.com/nknorg/nkn/v2/common/serialization" ) -//Serialize the Program +// Serialize the Program func (p *Program) Serialize(w io.Writer) error { err := serialization.WriteVarBytes(w, p.Parameter) if err != nil { @@ -24,7 +24,7 @@ func (p *Program) Serialize(w io.Writer) error { return nil } -//Deserialize the Program +// Deserialize the Program func (p *Program) Deserialize(w io.Reader) error { val, err := serialization.ReadVarBytes(w) if err != nil { diff --git a/program/program.go b/program/program.go index 1bf9b8026..3c8b474aa 100644 --- a/program/program.go +++ b/program/program.go @@ -99,7 +99,7 @@ func ByteToProgramContextParameterType(b []byte) []ProgramContextParameterType { return c } -//create a single signature program context for owner +// create a single signature program context for owner func CreateSignatureProgramContext(ownerPubKey []byte) (*ProgramContext, error) { code, err := CreateSignatureProgramCode(ownerPubKey) if err != nil { @@ -121,7 +121,7 @@ func CreateSignatureProgramContext(ownerPubKey []byte) (*ProgramContext, error) }, nil } -//CODE: len(publickey) + publickey + CHECKSIG +// CODE: len(publickey) + publickey + CHECKSIG func CreateSignatureProgramCode(pubKey []byte) ([]byte, error) { code := bytes.NewBuffer(nil) code.WriteByte(byte(len(pubKey))) @@ -144,9 +144,9 @@ func CreateProgramHash(pubKey []byte) (common.Uint160, error) { return programHash, err } -//CODE: len(publickey) + publickey + CHECKSIG -//-------------------------------------------- -//Size: 1 32 1 +// CODE: len(publickey) + publickey + CHECKSIG +// -------------------------------------------- +// Size: 1 32 1 func GetPublicKeyFromCode(code []byte) ([]byte, error) { if len(code) != 34 { return nil, fmt.Errorf("code length error, need 34, but got %v", len(code)) @@ -159,9 +159,9 @@ func GetPublicKeyFromCode(code []byte) ([]byte, error) { return code[1:33], nil } -//Parameter: len(signature) + signature -//-------------------------------------------- -//Size: 1 64 +// Parameter: len(signature) + signature +// -------------------------------------------- +// Size: 1 64 func GetSignatureFromParameter(parameter []byte) ([]byte, error) { if len(parameter) != 65 { return nil, fmt.Errorf("parameter length error, need 65,but got %v", len(parameter)) @@ -174,7 +174,7 @@ func GetSignatureFromParameter(parameter []byte) ([]byte, error) { return parameter[1:], nil } -//Parameter: len(signature) + signature +// Parameter: len(signature) + signature func (c *ProgramContext) NewProgram(signature []byte) *pb.Program { size := len(signature) parameter := append([]byte{byte(size)}, signature...) diff --git a/signature/signature.go b/signature/signature.go index 63758da95..91ae020c2 100644 --- a/signature/signature.go +++ b/signature/signature.go @@ -11,7 +11,7 @@ import ( "github.com/nknorg/nkn/v2/pb" ) -//SignableData describe the data need be signed. +// SignableData describe the data need be signed. type SignableData interface { GetProgramHashes() ([]common.Uint160, error) SetPrograms([]*pb.Program) diff --git a/signature/signer.go b/signature/signer.go index e3aa5e6b4..8dee94eeb 100644 --- a/signature/signer.go +++ b/signature/signer.go @@ -1,6 +1,6 @@ package signature -//Signer is the abstract interface of user's information(Keys) for signing data. +// Signer is the abstract interface of user's information(Keys) for signing data. type Signer interface { PrivKey() []byte PubKey() []byte From 24ade56074a34cc128ec11d1400f9d0fd9995eb6 Mon Sep 17 00:00:00 2001 From: billfort Date: Thu, 9 May 2024 20:55:46 +0800 Subject: [PATCH 14/30] Add OnOfferConnected channel for synchronize connected event for client Signed-off-by: billfort --- api/webrtc/webrtc.go | 38 +++++++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/api/webrtc/webrtc.go b/api/webrtc/webrtc.go index 84160c91f..7afa1e2f3 100644 --- a/api/webrtc/webrtc.go +++ b/api/webrtc/webrtc.go @@ -37,12 +37,13 @@ type DataChannelMessage struct { } type Peer struct { - pc *webrtc.PeerConnection - dc *webrtc.DataChannel - offer string - answer string - OnSdp chan string - OnMessage chan DataChannelMessage + pc *webrtc.PeerConnection + dc *webrtc.DataChannel + offer string + answer string + OnSdp chan string + OnMessage chan DataChannelMessage + OnOfferConnected chan struct{} mutex sync.RWMutex isConnected bool @@ -54,9 +55,10 @@ type Peer struct { func NewPeer(urls []string) *Peer { p := &Peer{ - OnSdp: make(chan string, 1), - isConnected: false, - OnMessage: make(chan DataChannelMessage, 128), + OnSdp: make(chan string, 1), + isConnected: false, + OnMessage: make(chan DataChannelMessage, 128), + OnOfferConnected: make(chan struct{}, 1), } config := webrtc.Configuration{ @@ -91,7 +93,10 @@ func (c *Peer) Offer(label string) error { return } c.offer = encodedDescr - c.OnSdp <- encodedDescr + select { + case c.OnSdp <- encodedDescr: + default: + } } }) @@ -99,8 +104,13 @@ func (c *Peer) Offer(label string) error { if err != nil { return err } + dc.OnOpen(func() { log.Debugf("Data channel %v has been opened\n", dc.Label()) + select { + case c.OnOfferConnected <- struct{}{}: + default: + } c.mutex.Lock() defer c.mutex.Unlock() c.isConnected = true @@ -186,7 +196,10 @@ func (c *Peer) Answer(offerSdp string) error { return } c.answer = encodedDescr - c.OnSdp <- encodedDescr + select { + case c.OnSdp <- encodedDescr: + default: + } } }) @@ -362,6 +375,9 @@ func (c *Peer) SetReadLimit(l int64) { } func (c *Peer) Close() error { + close(c.OnSdp) + close(c.OnMessage) + close(c.OnOfferConnected) if c.dc != nil { if err := c.dc.Close(); err != nil { return err From 4906690826bb12d56c7a74ae2f3625a5638651fd Mon Sep 17 00:00:00 2001 From: billfort Date: Fri, 10 May 2024 13:59:19 +0800 Subject: [PATCH 15/30] Check if nil before close WebRTC channels Signed-off-by: billfort --- api/webrtc/webrtc.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/api/webrtc/webrtc.go b/api/webrtc/webrtc.go index 7afa1e2f3..18a1876d9 100644 --- a/api/webrtc/webrtc.go +++ b/api/webrtc/webrtc.go @@ -375,9 +375,15 @@ func (c *Peer) SetReadLimit(l int64) { } func (c *Peer) Close() error { - close(c.OnSdp) - close(c.OnMessage) - close(c.OnOfferConnected) + if c.OnSdp != nil { + close(c.OnSdp) + } + if c.OnMessage != nil { + close(c.OnMessage) + } + if c.OnOfferConnected != nil { + close(c.OnOfferConnected) + } if c.dc != nil { if err := c.dc.Close(); err != nil { return err From 39523112b180547385cc3476964506273506a6fd Mon Sep 17 00:00:00 2001 From: Yilun Date: Thu, 9 May 2024 23:16:06 -0700 Subject: [PATCH 16/30] remove some debug log Signed-off-by: Yilun --- api/httpjson/client/client.go | 1 - api/webrtc/webrtc.go | 1 - 2 files changed, 2 deletions(-) diff --git a/api/httpjson/client/client.go b/api/httpjson/client/client.go index 562e9b954..550596b2e 100644 --- a/api/httpjson/client/client.go +++ b/api/httpjson/client/client.go @@ -224,7 +224,6 @@ func GetNonceByAddr(remote, addr string, txPool bool) (uint64, uint32, error) { } func GetPeerAddr(remote string, params map[string]interface{}) (string, string, []byte, []byte, string, error) { - fmt.Println("......GetPeerAddr, remote: ", remote) resp, err := Call(remote, "getpeeraddr", 0, params) if err != nil { return "", "", nil, nil, "", err diff --git a/api/webrtc/webrtc.go b/api/webrtc/webrtc.go index 18a1876d9..21f3fda36 100644 --- a/api/webrtc/webrtc.go +++ b/api/webrtc/webrtc.go @@ -106,7 +106,6 @@ func (c *Peer) Offer(label string) error { } dc.OnOpen(func() { - log.Debugf("Data channel %v has been opened\n", dc.Label()) select { case c.OnOfferConnected <- struct{}{}: default: From d66c4b3450bd2bc952e33a30519779b5a552b44b Mon Sep 17 00:00:00 2001 From: Yilun Date: Tue, 14 May 2024 00:49:27 -0700 Subject: [PATCH 17/30] bump NetVersionNum Signed-off-by: Yilun --- cmd/nknd/commands/root.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/nknd/commands/root.go b/cmd/nknd/commands/root.go index 1c6f945be..d1fdbc6ec 100644 --- a/cmd/nknd/commands/root.go +++ b/cmd/nknd/commands/root.go @@ -47,7 +47,7 @@ import ( ) const ( - NetVersionNum = 31 // This is temporary and will be removed soon after mainnet is stabilized + NetVersionNum = 32 // This will be removed later ) // rootCmd represents the base command when called without any subcommands From dff2b99325279ba46f22f6a79d05fa3e60ca5a9c Mon Sep 17 00:00:00 2001 From: Yilun Date: Tue, 14 May 2024 17:37:01 -0700 Subject: [PATCH 18/30] fix make docker not building amd64 image when running on arm Signed-off-by: Yilun --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index fcdcd8b41..e239771be 100644 --- a/Makefile +++ b/Makefile @@ -101,7 +101,7 @@ test: .PHONY: docker docker: - docker build -f docker/Dockerfile -t nknorg/nkn:latest-amd64 . + docker build -f docker/Dockerfile --build-arg build_args="build GOOS=linux GOARCH=amd64 BUILD_DIR=. BIN_DIR=." --build-arg base="amd64/" -t nknorg/nkn:latest-amd64 . docker build -f docker/Dockerfile --build-arg build_args="build GOOS=linux GOARCH=arm GOARM=6 BUILD_DIR=. BIN_DIR=." --build-arg base="arm32v6/" -t nknorg/nkn:latest-arm32v6 . docker build -f docker/Dockerfile --build-arg build_args="build GOOS=linux GOARCH=arm64 BUILD_DIR=. BIN_DIR=." --build-arg base="arm64v8/" -t nknorg/nkn:latest-arm64v8 . @@ -111,6 +111,7 @@ docker_publish: docker push nknorg/nkn:latest-arm32v6 docker push nknorg/nkn:latest-arm64v8 DOCKER_CLI_EXPERIMENTAL=enabled docker manifest create nknorg/nkn:latest nknorg/nkn:latest-amd64 nknorg/nkn:latest-arm32v6 nknorg/nkn:latest-arm64v8 --amend + DOCKER_CLI_EXPERIMENTAL=enabled docker manifest annotate nknorg/nkn:latest nknorg/nkn:latest-amd64 --os linux --arch amd64 DOCKER_CLI_EXPERIMENTAL=enabled docker manifest annotate nknorg/nkn:latest nknorg/nkn:latest-arm32v6 --os linux --arch arm DOCKER_CLI_EXPERIMENTAL=enabled docker manifest annotate nknorg/nkn:latest nknorg/nkn:latest-arm64v8 --os linux --arch arm64 DOCKER_CLI_EXPERIMENTAL=enabled docker manifest push -p nknorg/nkn:latest From 3dfea7c660f6094a4270a9b818878b884074baf0 Mon Sep 17 00:00:00 2001 From: Yilun Date: Sat, 18 May 2024 23:54:00 -0700 Subject: [PATCH 19/30] fix MarshalJSON undefined for non-pointer Uint160 Signed-off-by: Yilun --- common/uint160.go | 2 +- common/uint160_test.go | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/common/uint160.go b/common/uint160.go index b73963088..fe816c524 100644 --- a/common/uint160.go +++ b/common/uint160.go @@ -89,7 +89,7 @@ func IsValidHexAddr(s []byte) bool { return false } -func (f *Uint160) MarshalJSON() ([]byte, error) { +func (f Uint160) MarshalJSON() ([]byte, error) { str, err := f.ToAddress() return []byte("\"" + str + "\""), err } diff --git a/common/uint160_test.go b/common/uint160_test.go index cb54012dc..ed8f0d319 100644 --- a/common/uint160_test.go +++ b/common/uint160_test.go @@ -2,6 +2,7 @@ package common import ( "encoding/hex" + "encoding/json" "testing" ) @@ -23,7 +24,16 @@ func TestMarshalJSON(t *testing.T) { // Expected value after Marshalling expected := []byte(NKNADDRESS) - bytes, err := f.MarshalJSON() + bytes, err := json.Marshal(f) + if err != nil { + t.Fatalf("Unexpected error: %v", err) + } + + if !bytesEqual(bytes, expected) { + t.Fatalf("Expected %v, got %v", expected, bytes) + } + + bytes, err = json.Marshal(*f) if err != nil { t.Fatalf("Unexpected error: %v", err) } From 3956f06825852583631ce56ce7a63e0f04817617 Mon Sep 17 00:00:00 2001 From: Yilun Date: Fri, 24 May 2024 03:30:25 -0700 Subject: [PATCH 20/30] increase default LowFeeTxnSizePerBlock to 8192 Signed-off-by: Yilun --- config/config.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/config.go b/config/config.go index 9c27bc7d8..5a781709d 100644 --- a/config/config.go +++ b/config/config.go @@ -300,7 +300,7 @@ var ( MaxGetIDSeeds: 3, DBFilesCacheCapacity: 100, NumLowFeeTxnPerBlock: 0, - LowFeeTxnSizePerBlock: 2048, + LowFeeTxnSizePerBlock: 8192, LowTxnFee: 10000000, LowTxnFeePerSize: 50000, AllowEmptyBeneficiaryAddress: false, From c2862f2d9d16d212d259ae39c7780047e47a015a Mon Sep 17 00:00:00 2001 From: Yilun Date: Mon, 15 Jul 2024 16:17:20 -0700 Subject: [PATCH 21/30] increase default rpc client timeout Signed-off-by: Yilun --- api/httpjson/client/client.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/httpjson/client/client.go b/api/httpjson/client/client.go index 550596b2e..d5fd2522e 100644 --- a/api/httpjson/client/client.go +++ b/api/httpjson/client/client.go @@ -14,7 +14,7 @@ import ( "github.com/nknorg/nkn/v2/util/log" ) -const requestTimeout = 5 * time.Second +const requestTimeout = 10 * time.Second // Call sends RPC request to server func Call(address string, method string, id interface{}, params map[string]interface{}) ([]byte, error) { From c6185d7cf64117990811b655081f8ed8817a8b78 Mon Sep 17 00:00:00 2001 From: mountdisk Date: Fri, 16 Aug 2024 21:25:47 +0800 Subject: [PATCH 22/30] chore: fix some function names Signed-off-by: mountdisk --- api/websocket/messagebuffer/messagebuffer.go | 2 +- consensus/proposal.go | 2 +- consensus/state.go | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/api/websocket/messagebuffer/messagebuffer.go b/api/websocket/messagebuffer/messagebuffer.go index 2bd2e0477..191047ce1 100644 --- a/api/websocket/messagebuffer/messagebuffer.go +++ b/api/websocket/messagebuffer/messagebuffer.go @@ -49,7 +49,7 @@ type MessageBuffer struct { seqId int64 // sequence id } -// comparation function of red and black tree +// compare function of red and black tree func compare(a, b interface{}) (res int) { aInt := a.(int64) bInt := b.(int64) diff --git a/consensus/proposal.go b/consensus/proposal.go index 207712360..5ac4a0aba 100644 --- a/consensus/proposal.go +++ b/consensus/proposal.go @@ -199,7 +199,7 @@ func (consensus *Consensus) waitAndHandleProposal() (*election.Election, error) } } -// startRequestProposal starts the request proposal routine +// startRequestingProposal starts the request proposal routine func (consensus *Consensus) startRequestingProposal() { for { requestProposal := <-consensus.requestProposalChan diff --git a/consensus/state.go b/consensus/state.go index 9704b74b9..0b175e30a 100644 --- a/consensus/state.go +++ b/consensus/state.go @@ -138,7 +138,7 @@ func (consensus *Consensus) getVotingNeighborsConsensusState() (map[string]*pb.G return states, nil } -// getNeighborsMajorConsensusHeight returns the majority of neighbors' nonzero +// getNeighborsMajorityConsensusState returns the majority of neighbors' nonzero // consensus height, ledger height, ledger block hash, or empty value if no // majority can be found func (consensus *Consensus) getNeighborsMajorityConsensusState() (uint32, uint32, common.Uint256) { From 6eecd7e32cc8136c9f6d81a4aacf4aee3eb42236 Mon Sep 17 00:00:00 2001 From: Pascal Eberlein Date: Thu, 26 Sep 2024 20:39:33 +0200 Subject: [PATCH 23/30] replace github.com/golang/protobuf with google.golang.org/protobuf --- api/common/helper.go | 7 +++---- api/websocket/server/relay.go | 2 +- api/websocket/server/server.go | 2 +- block/block.go | 2 +- block/header.go | 2 +- chain/blockvalidator.go | 2 +- chain/store/store.go | 2 +- consensus/message.go | 2 +- consensus/proposal.go | 2 +- consensus/state.go | 2 +- lnode/encryption.go | 2 +- lnode/info.go | 2 +- lnode/neighbor.go | 6 +++--- lnode/relay.go | 2 +- lnode/stateHandler.go | 2 +- lnode/syncblock.go | 2 +- lnode/syncrandaddr.go | 2 +- lnode/synctxnpool.go | 2 +- pb/transaction.go | 2 +- por/porpackage.go | 2 +- transaction/payload.go | 2 +- transaction/transaction.go | 2 +- util/bytes2sigchain/bytes2sigchain.go | 2 +- 23 files changed, 27 insertions(+), 28 deletions(-) diff --git a/api/common/helper.go b/api/common/helper.go index 7a0aba256..03021b2ee 100644 --- a/api/common/helper.go +++ b/api/common/helper.go @@ -5,11 +5,10 @@ import ( "context" "errors" "fmt" + "google.golang.org/protobuf/encoding/protowire" - "github.com/nknorg/nkn/v2/config" - - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" + "github.com/nknorg/nkn/v2/config" "github.com/nknorg/nkn/v2/transaction" "github.com/nknorg/nkn/v2/vault" ) @@ -197,7 +196,7 @@ func MakeGenerateIDTransaction(ctx context.Context, pubkey []byte, wallet *vault default: } - txn, err = transaction.NewGenerateIDTransaction(pubkey, sender, regFee, maxVersion, nonce, txnFee, proto.EncodeVarint(i)) + txn, err = transaction.NewGenerateIDTransaction(pubkey, sender, regFee, maxVersion, nonce, txnFee, protowire.AppendVarint(nil, i)) if err != nil { return nil, err } diff --git a/api/websocket/server/relay.go b/api/websocket/server/relay.go index fa9bdce75..4f1bd44e2 100644 --- a/api/websocket/server/relay.go +++ b/api/websocket/server/relay.go @@ -6,11 +6,11 @@ import ( "fmt" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/por" "github.com/nknorg/nkn/v2/util/address" "github.com/nknorg/nkn/v2/util/log" + "google.golang.org/protobuf/proto" ) type sigChainInfo struct { diff --git a/api/websocket/server/server.go b/api/websocket/server/server.go index 0254a8e57..e0fdb0d22 100644 --- a/api/websocket/server/server.go +++ b/api/websocket/server/server.go @@ -18,7 +18,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" api "github.com/nknorg/nkn/v2/api/common" "github.com/nknorg/nkn/v2/api/common/errcode" "github.com/nknorg/nkn/v2/api/webrtc" @@ -34,6 +33,7 @@ import ( "github.com/nknorg/nkn/v2/util/address" "github.com/nknorg/nkn/v2/util/log" "github.com/nknorg/nkn/v2/vault" + "google.golang.org/protobuf/proto" "github.com/gorilla/websocket" ) diff --git a/block/block.go b/block/block.go index 82f4bb57f..6756fbd87 100644 --- a/block/block.go +++ b/block/block.go @@ -7,7 +7,6 @@ import ( "fmt" "io" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/common/serialization" "github.com/nknorg/nkn/v2/config" @@ -15,6 +14,7 @@ import ( "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/signature" "github.com/nknorg/nkn/v2/transaction" + "google.golang.org/protobuf/proto" ) type Block struct { diff --git a/block/header.go b/block/header.go index 0ddeec959..d2cea938e 100644 --- a/block/header.go +++ b/block/header.go @@ -9,12 +9,12 @@ import ( "github.com/nknorg/nkn/v2/crypto" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/common/serialization" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/program" "github.com/nknorg/nkn/v2/signature" + "google.golang.org/protobuf/proto" ) type Header struct { diff --git a/chain/blockvalidator.go b/chain/blockvalidator.go index 985b5255f..5781db978 100644 --- a/chain/blockvalidator.go +++ b/chain/blockvalidator.go @@ -11,7 +11,6 @@ import ( "github.com/nknorg/nkn/v2/chain/txvalidator" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/config" @@ -21,6 +20,7 @@ import ( "github.com/nknorg/nkn/v2/program" "github.com/nknorg/nkn/v2/transaction" "github.com/nknorg/nkn/v2/util" + "google.golang.org/protobuf/proto" ) const ( diff --git a/chain/store/store.go b/chain/store/store.go index fc086cb03..8fd100ca9 100644 --- a/chain/store/store.go +++ b/chain/store/store.go @@ -9,7 +9,6 @@ import ( "io" "sync" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain/db" "github.com/nknorg/nkn/v2/common" @@ -19,6 +18,7 @@ import ( "github.com/nknorg/nkn/v2/program" "github.com/nknorg/nkn/v2/transaction" "github.com/nknorg/nkn/v2/util/log" + "google.golang.org/protobuf/proto" ) const ( diff --git a/consensus/message.go b/consensus/message.go index 1bbf2bb64..2ebc04429 100644 --- a/consensus/message.go +++ b/consensus/message.go @@ -4,13 +4,13 @@ import ( "crypto/sha256" "fmt" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/node" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/transaction" + "google.golang.org/protobuf/proto" ) // NewVoteMessage creates a VOTE message diff --git a/consensus/proposal.go b/consensus/proposal.go index 5ac4a0aba..83528c327 100644 --- a/consensus/proposal.go +++ b/consensus/proposal.go @@ -9,7 +9,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/common" @@ -22,6 +21,7 @@ import ( "github.com/nknorg/nkn/v2/transaction" "github.com/nknorg/nkn/v2/util/log" "github.com/nknorg/nkn/v2/util/timer" + "google.golang.org/protobuf/proto" ) type requestProposalInfo struct { diff --git a/consensus/state.go b/consensus/state.go index 0b175e30a..0b563e7f8 100644 --- a/consensus/state.go +++ b/consensus/state.go @@ -4,7 +4,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/node" @@ -13,6 +12,7 @@ import ( "github.com/nknorg/nkn/v2/util" "github.com/nknorg/nkn/v2/util/log" "github.com/nknorg/nkn/v2/util/timer" + "google.golang.org/protobuf/proto" ) // startGettingNeighborConsensusState periodically checks neighbors' majority diff --git a/lnode/encryption.go b/lnode/encryption.go index e74620448..8191c444d 100644 --- a/lnode/encryption.go +++ b/lnode/encryption.go @@ -3,13 +3,13 @@ package lnode import ( "fmt" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/crypto/ed25519" "github.com/nknorg/nkn/v2/node" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/util/log" nnetnode "github.com/nknorg/nnet/node" "golang.org/x/crypto/nacl/box" + "google.golang.org/protobuf/proto" ) func (localNode *LocalNode) ComputeSharedKey(remotePublicKey []byte) (*[node.SharedKeySize]byte, error) { diff --git a/lnode/info.go b/lnode/info.go index da640c408..09212a13d 100644 --- a/lnode/info.go +++ b/lnode/info.go @@ -3,11 +3,11 @@ package lnode import ( "encoding/hex" "encoding/json" + "google.golang.org/protobuf/proto" "time" "github.com/nknorg/nkn/v2/node" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/util/log" nnetnode "github.com/nknorg/nnet/node" diff --git a/lnode/neighbor.go b/lnode/neighbor.go index 1317c8c76..efb738d09 100644 --- a/lnode/neighbor.go +++ b/lnode/neighbor.go @@ -4,6 +4,7 @@ import ( "bytes" "errors" "fmt" + pbnode "github.com/nknorg/nnet/protobuf/node" "math" "math/rand" "net" @@ -11,7 +12,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/config" "github.com/nknorg/nkn/v2/crypto" @@ -23,7 +23,7 @@ import ( "github.com/nknorg/nkn/v2/util/log" nnetnode "github.com/nknorg/nnet/node" "github.com/nknorg/nnet/overlay/chord" - nnetpb "github.com/nknorg/nnet/protobuf" + "google.golang.org/protobuf/proto" ) const ( @@ -312,7 +312,7 @@ func (localNode *LocalNode) GetVotingNeighbors(filter func(*node.RemoteNode) boo return localNode.getSampledNeighbors(localNode.votingNeighbors, config.VotingSampleChordNeighbor, config.VotingMinChordNeighbor, filter) } -func (localNode *LocalNode) shouldConnectToNode(n *nnetpb.Node) error { +func (localNode *LocalNode) shouldConnectToNode(n *pbnode.Node) error { if n.GetData() != nil { nodeData := &pb.NodeData{} err := proto.Unmarshal(n.Data, nodeData) diff --git a/lnode/relay.go b/lnode/relay.go index f69e4bbb4..ca19b1aff 100644 --- a/lnode/relay.go +++ b/lnode/relay.go @@ -8,7 +8,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/chain/txvalidator" @@ -23,6 +22,7 @@ import ( "github.com/nknorg/nkn/v2/util/address" "github.com/nknorg/nkn/v2/util/log" "github.com/nknorg/nkn/v2/vault" + "google.golang.org/protobuf/proto" ) const ( diff --git a/lnode/stateHandler.go b/lnode/stateHandler.go index f69df60a2..e8117cba4 100644 --- a/lnode/stateHandler.go +++ b/lnode/stateHandler.go @@ -3,13 +3,13 @@ package lnode import ( "errors" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/chain/store" "github.com/nknorg/nkn/v2/chain/trie" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/node" "github.com/nknorg/nkn/v2/pb" + "google.golang.org/protobuf/proto" ) var ( diff --git a/lnode/syncblock.go b/lnode/syncblock.go index ea2c5327c..c2e970ca1 100644 --- a/lnode/syncblock.go +++ b/lnode/syncblock.go @@ -6,7 +6,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/consequential" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain" @@ -15,6 +14,7 @@ import ( "github.com/nknorg/nkn/v2/node" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/util/log" + "google.golang.org/protobuf/proto" ) const ( diff --git a/lnode/syncrandaddr.go b/lnode/syncrandaddr.go index 6dd1739da..96c92345e 100644 --- a/lnode/syncrandaddr.go +++ b/lnode/syncrandaddr.go @@ -5,7 +5,6 @@ import ( "reflect" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/chain/pool" "github.com/nknorg/nkn/v2/common" @@ -15,6 +14,7 @@ import ( "github.com/nknorg/nkn/v2/transaction" "github.com/nknorg/nkn/v2/util" "github.com/nknorg/nkn/v2/util/log" + "google.golang.org/protobuf/proto" ) // Number of random neighbors to sync rand addr diff --git a/lnode/synctxnpool.go b/lnode/synctxnpool.go index fd2ee3fcc..ed7f28124 100644 --- a/lnode/synctxnpool.go +++ b/lnode/synctxnpool.go @@ -7,7 +7,6 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/chain/pool" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/config" @@ -16,6 +15,7 @@ import ( "github.com/nknorg/nkn/v2/transaction" "github.com/nknorg/nkn/v2/util" "github.com/nknorg/nkn/v2/util/log" + "google.golang.org/protobuf/proto" ) // Number of random neighbors to sync txn pool diff --git a/pb/transaction.go b/pb/transaction.go index 570777141..e8a076b59 100644 --- a/pb/transaction.go +++ b/pb/transaction.go @@ -5,9 +5,9 @@ import ( "fmt" "io" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/common/serialization" + "google.golang.org/protobuf/proto" ) // Serialize the Program diff --git a/por/porpackage.go b/por/porpackage.go index 4d1d9dba9..47591f168 100644 --- a/por/porpackage.go +++ b/por/porpackage.go @@ -4,11 +4,11 @@ import ( "bytes" "errors" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/config" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/transaction" + "google.golang.org/protobuf/proto" ) const ( diff --git a/transaction/payload.go b/transaction/payload.go index 762eda5e2..a928f0e37 100644 --- a/transaction/payload.go +++ b/transaction/payload.go @@ -3,9 +3,9 @@ package transaction import ( "errors" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/pb" + "google.golang.org/protobuf/proto" ) func Pack(plType pb.PayloadType, payload proto.Message) (*pb.Payload, error) { diff --git a/transaction/transaction.go b/transaction/transaction.go index acb03aa0f..530334fbf 100644 --- a/transaction/transaction.go +++ b/transaction/transaction.go @@ -7,12 +7,12 @@ import ( "errors" "io" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/common" "github.com/nknorg/nkn/v2/common/serialization" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/program" "github.com/nknorg/nkn/v2/signature" + "google.golang.org/protobuf/proto" ) type Transaction struct { diff --git a/util/bytes2sigchain/bytes2sigchain.go b/util/bytes2sigchain/bytes2sigchain.go index 5a66d9736..7489bdb02 100644 --- a/util/bytes2sigchain/bytes2sigchain.go +++ b/util/bytes2sigchain/bytes2sigchain.go @@ -11,8 +11,8 @@ import ( "regexp" "strings" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/pb" + "google.golang.org/protobuf/proto" ) // Base64ToHex convert base64 string input to hex string output From f69f0f3ca566fc08ee4c4e8b2e2d4c909fc8e95c Mon Sep 17 00:00:00 2001 From: Pascal Eberlein Date: Thu, 26 Sep 2024 20:39:57 +0200 Subject: [PATCH 24/30] regenerated with newer version --- pb/block.pb.go | 12 ++++---- pb/clientmessage.pb.go | 14 ++++----- pb/node.pb.go | 8 ++--- pb/nodemessage.pb.go | 66 +++++++++++++++++++++--------------------- pb/sigchain.pb.go | 10 +++---- pb/transaction.pb.go | 40 ++++++++++++------------- 6 files changed, 75 insertions(+), 75 deletions(-) diff --git a/pb/block.pb.go b/pb/block.pb.go index 30067f04e..e449b69be 100644 --- a/pb/block.pb.go +++ b/pb/block.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.27.1 -// protoc v3.19.4 +// protoc-gen-go v1.34.2 +// protoc v3.21.12 // source: pb/block.proto package pb @@ -370,7 +370,7 @@ func file_pb_block_proto_rawDescGZIP() []byte { var file_pb_block_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_pb_block_proto_msgTypes = make([]protoimpl.MessageInfo, 3) -var file_pb_block_proto_goTypes = []interface{}{ +var file_pb_block_proto_goTypes = []any{ (WinnerType)(0), // 0: pb.WinnerType (*UnsignedHeader)(nil), // 1: pb.UnsignedHeader (*Header)(nil), // 2: pb.Header @@ -396,7 +396,7 @@ func file_pb_block_proto_init() { } file_pb_transaction_proto_init() if !protoimpl.UnsafeEnabled { - file_pb_block_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_block_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*UnsignedHeader); i { case 0: return &v.state @@ -408,7 +408,7 @@ func file_pb_block_proto_init() { return nil } } - file_pb_block_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_pb_block_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*Header); i { case 0: return &v.state @@ -420,7 +420,7 @@ func file_pb_block_proto_init() { return nil } } - file_pb_block_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_pb_block_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*Block); i { case 0: return &v.state diff --git a/pb/clientmessage.pb.go b/pb/clientmessage.pb.go index 831b617ad..b209a4abc 100644 --- a/pb/clientmessage.pb.go +++ b/pb/clientmessage.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.27.1 -// protoc v3.19.4 +// protoc-gen-go v1.34.2 +// protoc v3.21.12 // source: pb/clientmessage.proto package pb @@ -466,7 +466,7 @@ func file_pb_clientmessage_proto_rawDescGZIP() []byte { var file_pb_clientmessage_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_pb_clientmessage_proto_msgTypes = make([]protoimpl.MessageInfo, 4) -var file_pb_clientmessage_proto_goTypes = []interface{}{ +var file_pb_clientmessage_proto_goTypes = []any{ (ClientMessageType)(0), // 0: pb.ClientMessageType (CompressionType)(0), // 1: pb.CompressionType (*ClientMessage)(nil), // 2: pb.ClientMessage @@ -490,7 +490,7 @@ func file_pb_clientmessage_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_pb_clientmessage_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_clientmessage_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*ClientMessage); i { case 0: return &v.state @@ -502,7 +502,7 @@ func file_pb_clientmessage_proto_init() { return nil } } - file_pb_clientmessage_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_pb_clientmessage_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*OutboundMessage); i { case 0: return &v.state @@ -514,7 +514,7 @@ func file_pb_clientmessage_proto_init() { return nil } } - file_pb_clientmessage_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_pb_clientmessage_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*InboundMessage); i { case 0: return &v.state @@ -526,7 +526,7 @@ func file_pb_clientmessage_proto_init() { return nil } } - file_pb_clientmessage_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_pb_clientmessage_proto_msgTypes[3].Exporter = func(v any, i int) any { switch v := v.(*Receipt); i { case 0: return &v.state diff --git a/pb/node.pb.go b/pb/node.pb.go index 2edf2ac2b..704be4721 100644 --- a/pb/node.pb.go +++ b/pb/node.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.27.1 -// protoc v3.19.4 +// protoc-gen-go v1.34.2 +// protoc v3.21.12 // source: pb/node.proto package pb @@ -284,7 +284,7 @@ func file_pb_node_proto_rawDescGZIP() []byte { var file_pb_node_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_pb_node_proto_msgTypes = make([]protoimpl.MessageInfo, 1) -var file_pb_node_proto_goTypes = []interface{}{ +var file_pb_node_proto_goTypes = []any{ (SyncState)(0), // 0: pb.SyncState (LedgerMode)(0), // 1: pb.LedgerMode (*NodeData)(nil), // 2: pb.NodeData @@ -304,7 +304,7 @@ func file_pb_node_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_pb_node_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_node_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*NodeData); i { case 0: return &v.state diff --git a/pb/nodemessage.pb.go b/pb/nodemessage.pb.go index 00bd8bebc..44463b65c 100644 --- a/pb/nodemessage.pb.go +++ b/pb/nodemessage.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.27.1 -// protoc v3.19.4 +// protoc-gen-go v1.34.2 +// protoc v3.21.12 // source: pb/nodemessage.proto package pb @@ -2826,7 +2826,7 @@ func file_pb_nodemessage_proto_rawDescGZIP() []byte { var file_pb_nodemessage_proto_enumTypes = make([]protoimpl.EnumInfo, 9) var file_pb_nodemessage_proto_msgTypes = make([]protoimpl.MessageInfo, 30) -var file_pb_nodemessage_proto_goTypes = []interface{}{ +var file_pb_nodemessage_proto_goTypes = []any{ (MessageType)(0), // 0: pb.MessageType (AllowedSignedMessageType)(0), // 1: pb.AllowedSignedMessageType (AllowedUnsignedMessageType)(0), // 2: pb.AllowedUnsignedMessageType @@ -2904,7 +2904,7 @@ func file_pb_nodemessage_proto_init() { file_pb_block_proto_init() file_pb_transaction_proto_init() if !protoimpl.UnsafeEnabled { - file_pb_nodemessage_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*UnsignedMessage); i { case 0: return &v.state @@ -2916,7 +2916,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*SignedMessage); i { case 0: return &v.state @@ -2928,7 +2928,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*Vote); i { case 0: return &v.state @@ -2940,7 +2940,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[3].Exporter = func(v any, i int) any { switch v := v.(*IHaveBlockProposal); i { case 0: return &v.state @@ -2952,7 +2952,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[4].Exporter = func(v any, i int) any { switch v := v.(*RequestBlockProposal); i { case 0: return &v.state @@ -2964,7 +2964,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[5].Exporter = func(v any, i int) any { switch v := v.(*RequestBlockProposalReply); i { case 0: return &v.state @@ -2976,7 +2976,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[6].Exporter = func(v any, i int) any { switch v := v.(*RequestProposalTransactions); i { case 0: return &v.state @@ -2988,7 +2988,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[7].Exporter = func(v any, i int) any { switch v := v.(*RequestProposalTransactionsReply); i { case 0: return &v.state @@ -3000,7 +3000,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[8].Exporter = func(v any, i int) any { switch v := v.(*GetConsensusState); i { case 0: return &v.state @@ -3012,7 +3012,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[9].Exporter = func(v any, i int) any { switch v := v.(*GetConsensusStateReply); i { case 0: return &v.state @@ -3024,7 +3024,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[10].Exporter = func(v any, i int) any { switch v := v.(*GetBlockHeaders); i { case 0: return &v.state @@ -3036,7 +3036,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[11].Exporter = func(v any, i int) any { switch v := v.(*GetBlockHeadersReply); i { case 0: return &v.state @@ -3048,7 +3048,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[12].Exporter = func(v any, i int) any { switch v := v.(*GetBlocks); i { case 0: return &v.state @@ -3060,7 +3060,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[13].Exporter = func(v any, i int) any { switch v := v.(*GetBlocksReply); i { case 0: return &v.state @@ -3072,7 +3072,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[14].Exporter = func(v any, i int) any { switch v := v.(*StateRequest); i { case 0: return &v.state @@ -3084,7 +3084,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[15].Exporter = func(v any, i int) any { switch v := v.(*StateNode); i { case 0: return &v.state @@ -3096,7 +3096,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[16].Exporter = func(v any, i int) any { switch v := v.(*GetStates); i { case 0: return &v.state @@ -3108,7 +3108,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[17].Exporter = func(v any, i int) any { switch v := v.(*GetStatesReply); i { case 0: return &v.state @@ -3120,7 +3120,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[18].Exporter = func(v any, i int) any { switch v := v.(*Relay); i { case 0: return &v.state @@ -3132,7 +3132,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[19].Exporter = func(v any, i int) any { switch v := v.(*Transactions); i { case 0: return &v.state @@ -3144,7 +3144,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[20].Exporter = func(v any, i int) any { switch v := v.(*BacktrackSignatureChain); i { case 0: return &v.state @@ -3156,7 +3156,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[21].Exporter = func(v any, i int) any { switch v := v.(*IHaveSignatureChainTransaction); i { case 0: return &v.state @@ -3168,7 +3168,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[22].Exporter = func(v any, i int) any { switch v := v.(*RequestSignatureChainTransaction); i { case 0: return &v.state @@ -3180,7 +3180,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[23].Exporter = func(v any, i int) any { switch v := v.(*RequestSignatureChainTransactionReply); i { case 0: return &v.state @@ -3192,7 +3192,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[24].Exporter = func(v any, i int) any { switch v := v.(*PinSignatureChain); i { case 0: return &v.state @@ -3204,7 +3204,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[25].Exporter = func(v any, i int) any { switch v := v.(*SignatureChainObjectionUnsigned); i { case 0: return &v.state @@ -3216,7 +3216,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[26].Exporter = func(v any, i int) any { switch v := v.(*SignatureChainObjectionSigned); i { case 0: return &v.state @@ -3228,7 +3228,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[27].Exporter = func(v any, i int) any { switch v := v.(*TxnPoolHashAndCount); i { case 0: return &v.state @@ -3240,7 +3240,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[28].Exporter = func(v any, i int) any { switch v := v.(*AddrNonce); i { case 0: return &v.state @@ -3252,7 +3252,7 @@ func file_pb_nodemessage_proto_init() { return nil } } - file_pb_nodemessage_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + file_pb_nodemessage_proto_msgTypes[29].Exporter = func(v any, i int) any { switch v := v.(*RequestSyncTxnPool); i { case 0: return &v.state diff --git a/pb/sigchain.pb.go b/pb/sigchain.pb.go index e78db90fa..15a7f41ce 100644 --- a/pb/sigchain.pb.go +++ b/pb/sigchain.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.27.1 -// protoc v3.19.4 +// protoc-gen-go v1.34.2 +// protoc v3.21.12 // source: pb/sigchain.proto package pb @@ -316,7 +316,7 @@ func file_pb_sigchain_proto_rawDescGZIP() []byte { var file_pb_sigchain_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_pb_sigchain_proto_msgTypes = make([]protoimpl.MessageInfo, 2) -var file_pb_sigchain_proto_goTypes = []interface{}{ +var file_pb_sigchain_proto_goTypes = []any{ (SigAlgo)(0), // 0: pb.SigAlgo (*SigChainElem)(nil), // 1: pb.SigChainElem (*SigChain)(nil), // 2: pb.SigChain @@ -337,7 +337,7 @@ func file_pb_sigchain_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_pb_sigchain_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_sigchain_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*SigChainElem); i { case 0: return &v.state @@ -349,7 +349,7 @@ func file_pb_sigchain_proto_init() { return nil } } - file_pb_sigchain_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_pb_sigchain_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*SigChain); i { case 0: return &v.state diff --git a/pb/transaction.pb.go b/pb/transaction.pb.go index b4e68c2de..7d001b3b4 100644 --- a/pb/transaction.pb.go +++ b/pb/transaction.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.27.1 -// protoc v3.19.4 +// protoc-gen-go v1.34.2 +// protoc v3.21.12 // source: pb/transaction.proto package pb @@ -639,7 +639,7 @@ type Subscribe struct { Subscriber []byte `protobuf:"bytes,1,opt,name=subscriber,proto3" json:"subscriber,omitempty"` Identifier string `protobuf:"bytes,2,opt,name=identifier,proto3" json:"identifier,omitempty"` Topic string `protobuf:"bytes,3,opt,name=topic,proto3" json:"topic,omitempty"` - // Deprecated: Do not use. + // Deprecated: Marked as deprecated in pb/transaction.proto. Bucket uint32 `protobuf:"varint,4,opt,name=bucket,proto3" json:"bucket,omitempty"` Duration uint32 `protobuf:"varint,5,opt,name=duration,proto3" json:"duration,omitempty"` Meta []byte `protobuf:"bytes,6,opt,name=meta,proto3" json:"meta,omitempty"` @@ -698,7 +698,7 @@ func (x *Subscribe) GetTopic() string { return "" } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in pb/transaction.proto. func (x *Subscribe) GetBucket() uint32 { if x != nil { return x.Bucket @@ -1226,7 +1226,7 @@ func file_pb_transaction_proto_rawDescGZIP() []byte { var file_pb_transaction_proto_enumTypes = make([]protoimpl.EnumInfo, 1) var file_pb_transaction_proto_msgTypes = make([]protoimpl.MessageInfo, 15) -var file_pb_transaction_proto_goTypes = []interface{}{ +var file_pb_transaction_proto_goTypes = []any{ (PayloadType)(0), // 0: pb.PayloadType (*UnsignedTx)(nil), // 1: pb.UnsignedTx (*Transaction)(nil), // 2: pb.Transaction @@ -1262,7 +1262,7 @@ func file_pb_transaction_proto_init() { return } if !protoimpl.UnsafeEnabled { - file_pb_transaction_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[0].Exporter = func(v any, i int) any { switch v := v.(*UnsignedTx); i { case 0: return &v.state @@ -1274,7 +1274,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[1].Exporter = func(v any, i int) any { switch v := v.(*Transaction); i { case 0: return &v.state @@ -1286,7 +1286,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[2].Exporter = func(v any, i int) any { switch v := v.(*Program); i { case 0: return &v.state @@ -1298,7 +1298,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[3].Exporter = func(v any, i int) any { switch v := v.(*Payload); i { case 0: return &v.state @@ -1310,7 +1310,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[4].Exporter = func(v any, i int) any { switch v := v.(*Coinbase); i { case 0: return &v.state @@ -1322,7 +1322,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[5].Exporter = func(v any, i int) any { switch v := v.(*SigChainTxn); i { case 0: return &v.state @@ -1334,7 +1334,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[6].Exporter = func(v any, i int) any { switch v := v.(*RegisterName); i { case 0: return &v.state @@ -1346,7 +1346,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[7].Exporter = func(v any, i int) any { switch v := v.(*TransferName); i { case 0: return &v.state @@ -1358,7 +1358,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[8].Exporter = func(v any, i int) any { switch v := v.(*DeleteName); i { case 0: return &v.state @@ -1370,7 +1370,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[9].Exporter = func(v any, i int) any { switch v := v.(*Subscribe); i { case 0: return &v.state @@ -1382,7 +1382,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[10].Exporter = func(v any, i int) any { switch v := v.(*Unsubscribe); i { case 0: return &v.state @@ -1394,7 +1394,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[11].Exporter = func(v any, i int) any { switch v := v.(*TransferAsset); i { case 0: return &v.state @@ -1406,7 +1406,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[12].Exporter = func(v any, i int) any { switch v := v.(*GenerateID); i { case 0: return &v.state @@ -1418,7 +1418,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[13].Exporter = func(v any, i int) any { switch v := v.(*NanoPay); i { case 0: return &v.state @@ -1430,7 +1430,7 @@ func file_pb_transaction_proto_init() { return nil } } - file_pb_transaction_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_pb_transaction_proto_msgTypes[14].Exporter = func(v any, i int) any { switch v := v.(*IssueAsset); i { case 0: return &v.state From 761f2552c742df8fa482261e4d24c399c5c21cae Mon Sep 17 00:00:00 2001 From: Pascal Eberlein Date: Thu, 26 Sep 2024 20:40:32 +0200 Subject: [PATCH 25/30] remove redundant alias --- common/uint160.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/uint160.go b/common/uint160.go index fe816c524..60d5d4745 100644 --- a/common/uint160.go +++ b/common/uint160.go @@ -9,7 +9,7 @@ import ( "io" "math/big" - base58 "github.com/itchyny/base58-go" + "github.com/itchyny/base58-go" ) // FOOLPROOFPREFIX used for fool-proof prefix From 0cec1eb34f39be632ac6ae8fe045782d74d5f254 Mon Sep 17 00:00:00 2001 From: Pascal Eberlein Date: Thu, 26 Sep 2024 20:42:05 +0200 Subject: [PATCH 26/30] adjust to nnet changes --- lnode/localnode.go | 8 ++++---- lnode/message.go | 22 +++++++++++----------- lnode/transaction.go | 6 +++--- node/node.go | 18 ++++++++---------- node/remotenode.go | 2 +- 5 files changed, 27 insertions(+), 29 deletions(-) diff --git a/lnode/localnode.go b/lnode/localnode.go index 145c6b5bc..b14b6068e 100644 --- a/lnode/localnode.go +++ b/lnode/localnode.go @@ -5,13 +5,13 @@ import ( "encoding/json" "errors" "fmt" + nnetnode "github.com/nknorg/nnet/node" "net" "net/url" "sync" "sync/atomic" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/api/ratelimiter" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/chain/pool" @@ -22,11 +22,11 @@ import ( "github.com/nknorg/nkn/v2/util/log" "github.com/nknorg/nkn/v2/vault" "github.com/nknorg/nnet" - nnetnode "github.com/nknorg/nnet/node" "github.com/nknorg/nnet/overlay/chord" "github.com/nknorg/nnet/overlay/routing" - nnetpb "github.com/nknorg/nnet/protobuf" + pbnode "github.com/nknorg/nnet/protobuf/node" "golang.org/x/time/rate" + "google.golang.org/protobuf/proto" ) type LocalNode struct { @@ -112,7 +112,7 @@ func NewLocalNode(wallet *vault.Wallet, nn *nnet.NNet, ledgerMode pb.LedgerMode) return true, true }}) - nn.MustApplyMiddleware(nnetnode.WillConnectToNode{Func: func(n *nnetpb.Node) (bool, bool) { + nn.MustApplyMiddleware(nnetnode.WillConnectToNode{Func: func(n *pbnode.Node) (bool, bool) { err := localNode.shouldConnectToNode(n) if err != nil { log.Infof("stop connect to node because: %v", err) diff --git a/lnode/message.go b/lnode/message.go index ade7172e0..8dc00262d 100644 --- a/lnode/message.go +++ b/lnode/message.go @@ -5,13 +5,13 @@ import ( "errors" "fmt" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/crypto" "github.com/nknorg/nkn/v2/node" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/util/log" nnetnode "github.com/nknorg/nnet/node" - nnetpb "github.com/nknorg/nnet/protobuf" + pbmsg "github.com/nknorg/nnet/protobuf/message" + "google.golang.org/protobuf/proto" ) func (localNode *LocalNode) SerializeMessage(unsignedMsg *pb.UnsignedMessage, sign bool) ([]byte, error) { @@ -42,7 +42,7 @@ func (localNode *LocalNode) SerializeMessage(unsignedMsg *pb.UnsignedMessage, si } func (localNode *LocalNode) remoteMessageRouted(remoteMessage *nnetnode.RemoteMessage, nnetLocalNode *nnetnode.LocalNode, remoteNodes []*nnetnode.RemoteNode) (*nnetnode.RemoteMessage, *nnetnode.LocalNode, []*nnetnode.RemoteNode, bool) { - if remoteMessage.Msg.MessageType == nnetpb.BYTES { + if remoteMessage.Msg.MessageType == pbmsg.MessageType_BYTES { err := localNode.maybeAddRemoteNode(remoteMessage.RemoteNode) if err != nil { log.Warningf("Add remote node error: %v", err) @@ -66,7 +66,7 @@ func (localNode *LocalNode) remoteMessageRouted(remoteMessage *nnetnode.RemoteMe return nil, nil, nil, false } - msgBody := &nnetpb.Bytes{} + msgBody := &pbmsg.Bytes{} err = proto.Unmarshal(remoteMessage.Msg.Message, msgBody) if err != nil { log.Errorf("Error unmarshal byte msg: %v", err) @@ -106,7 +106,7 @@ func (localNode *LocalNode) remoteMessageRouted(remoteMessage *nnetnode.RemoteMe } if len(signedMsg.Signature) > 0 { - if remoteMessage.Msg.RoutingType != nnetpb.DIRECT { + if remoteMessage.Msg.RoutingType != pbmsg.RoutingType_DIRECT { log.Errorf("Signature is only allowed on direct message") return nil, nil, nil, false } @@ -272,25 +272,25 @@ func checkMessageSigned(messageType pb.MessageType, signed bool) error { } // checkMessageRoutingType checks if a message type has the allowed routing type -func checkMessageRoutingType(messageType pb.MessageType, routingType nnetpb.RoutingType) error { +func checkMessageRoutingType(messageType pb.MessageType, routingType pbmsg.RoutingType) error { switch routingType { - case nnetpb.DIRECT: + case pbmsg.RoutingType_DIRECT: if _, ok := pb.AllowedDirectMessageType_name[int32(messageType)]; ok { return nil } - case nnetpb.RELAY: + case pbmsg.RoutingType_RELAY: if _, ok := pb.AllowedRelayMessageType_name[int32(messageType)]; ok { return nil } - case nnetpb.BROADCAST_PUSH: + case pbmsg.RoutingType_BROADCAST_PUSH: if _, ok := pb.AllowedBroadcastPushMessageType_name[int32(messageType)]; ok { return nil } - case nnetpb.BROADCAST_PULL: + case pbmsg.RoutingType_BROADCAST_PULL: if _, ok := pb.AllowedBroadcastPullMessageType_name[int32(messageType)]; ok { return nil } - case nnetpb.BROADCAST_TREE: + case pbmsg.RoutingType_BROADCAST_TREE: if _, ok := pb.AllowedBroadcastTreeMessageType_name[int32(messageType)]; ok { return nil } diff --git a/lnode/transaction.go b/lnode/transaction.go index 394bb4abd..71dc28bc3 100644 --- a/lnode/transaction.go +++ b/lnode/transaction.go @@ -4,9 +4,9 @@ import ( "bytes" "errors" "fmt" + pbmsg "github.com/nknorg/nnet/protobuf/message" "hash/fnv" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/block" "github.com/nknorg/nkn/v2/chain" "github.com/nknorg/nkn/v2/chain/pool" @@ -20,7 +20,7 @@ import ( "github.com/nknorg/nkn/v2/util" "github.com/nknorg/nkn/v2/util/log" nnetnode "github.com/nknorg/nnet/node" - nnetpb "github.com/nknorg/nnet/protobuf" + "google.golang.org/protobuf/proto" ) const ( @@ -459,7 +459,7 @@ func (localNode *LocalNode) BroadcastTransaction(txn *transaction.Transaction) e return err } - _, err = localNode.nnet.SendBytesBroadcastAsync(buf, nnetpb.BROADCAST_TREE) + _, err = localNode.nnet.SendBytesBroadcastAsync(buf, pbmsg.RoutingType_BROADCAST_TREE) if err != nil { return err } diff --git a/node/node.go b/node/node.go index c99840b74..61301eac7 100644 --- a/node/node.go +++ b/node/node.go @@ -4,19 +4,19 @@ package node import ( "encoding/hex" "encoding/json" + pbnode "github.com/nknorg/nnet/protobuf/node" "net/url" "sync" "time" - "github.com/golang/protobuf/jsonpb" "github.com/nknorg/nkn/v2/crypto" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/util" - nnetpb "github.com/nknorg/nnet/protobuf" + "google.golang.org/protobuf/encoding/protojson" ) type Node struct { - *nnetpb.Node + *pbnode.Node *pb.NodeData publicKey []byte StartTime time.Time @@ -29,14 +29,12 @@ type Node struct { func (n *Node) MarshalJSON() ([]byte, error) { var out map[string]interface{} - marshaler := &jsonpb.Marshaler{} - - s, err := marshaler.MarshalToString(n.Node) + s, err := protojson.Marshal(n.Node) if err != nil { return nil, err } - err = json.Unmarshal([]byte(s), &out) + err = json.Unmarshal(s, &out) if err != nil { return nil, err } @@ -44,12 +42,12 @@ func (n *Node) MarshalJSON() ([]byte, error) { delete(out, "data") out["id"] = hex.EncodeToString(n.Node.Id) - s, err = marshaler.MarshalToString(n.NodeData) + s, err = protojson.Marshal(n.NodeData) if err != nil { return nil, err } - err = json.Unmarshal([]byte(s), &out) + err = json.Unmarshal(s, &out) if err != nil { return nil, err } @@ -60,7 +58,7 @@ func (n *Node) MarshalJSON() ([]byte, error) { return json.Marshal(out) } -func NewNode(nnetNode *nnetpb.Node, nodeData *pb.NodeData) (*Node, error) { +func NewNode(nnetNode *pbnode.Node, nodeData *pb.NodeData) (*Node, error) { err := crypto.CheckPublicKey(nodeData.PublicKey) if err != nil { return nil, err diff --git a/node/remotenode.go b/node/remotenode.go index bcacdec9c..516a69eaf 100644 --- a/node/remotenode.go +++ b/node/remotenode.go @@ -6,10 +6,10 @@ import ( "sync" "time" - "github.com/golang/protobuf/proto" "github.com/nknorg/nkn/v2/pb" "github.com/nknorg/nkn/v2/util/log" nnetnode "github.com/nknorg/nnet/node" + "google.golang.org/protobuf/proto" ) type RemoteNode struct { From f7f8a0342dbffc1897a333fe676c86ed3976edff Mon Sep 17 00:00:00 2001 From: Pascal Eberlein Date: Thu, 26 Sep 2024 20:46:25 +0200 Subject: [PATCH 27/30] dependency bumps --- go.mod | 123 ++++++++++---------- go.sum | 357 ++++++++++++++++++++++++--------------------------------- 2 files changed, 211 insertions(+), 269 deletions(-) diff --git a/go.mod b/go.mod index 97d2ba97f..b070d169b 100644 --- a/go.mod +++ b/go.mod @@ -1,103 +1,106 @@ module github.com/nknorg/nkn/v2 -go 1.19 +go 1.20 + +replace github.com/nknorg/nnet => ../nnet require ( github.com/emirpasic/gods v1.18.1 - github.com/gin-contrib/sessions v0.0.0-20190512062852-3cb4c4f2d615 - github.com/gin-gonic/gin v1.9.1 - github.com/go-acme/lego/v3 v3.8.0 - github.com/golang/protobuf v1.5.0 - github.com/gorilla/securecookie v1.1.1 - github.com/gorilla/websocket v1.4.2 - github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c - github.com/itchyny/base58-go v0.0.5 - github.com/nknorg/consequential v0.0.0-20190823093205-a45aff4a218a - github.com/nknorg/nnet v0.0.0-20220621093239-b22b80b04216 + github.com/gin-contrib/sessions v1.0.1 + github.com/gin-gonic/gin v1.10.0 + github.com/go-acme/lego/v3 v3.9.0 + github.com/gorilla/securecookie v1.1.2 + github.com/gorilla/websocket v1.5.3 + github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef + github.com/itchyny/base58-go v0.2.2 + github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984 + github.com/nknorg/nnet v0.0.0-00010101000000-000000000000 github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283 github.com/patrickmn/go-cache v2.1.0+incompatible - github.com/pbnjay/memory v0.0.0-20190104145345-974d429e7ae4 - github.com/pborman/uuid v1.2.0 + github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58 + github.com/pborman/uuid v1.2.1 + github.com/pion/webrtc/v4 v4.0.0-beta.30 github.com/rdegges/go-ipify v0.0.0-20150526035502-2d94a6a86c40 - github.com/spf13/cobra v1.4.0 + github.com/spf13/cobra v1.8.1 github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.9.0 github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954 github.com/wk8/go-ordered-map v1.0.0 - golang.org/x/crypto v0.21.0 - golang.org/x/sys v0.18.0 // indirect - golang.org/x/time v0.0.0-20201208040808-7e3f01d25324 - google.golang.org/protobuf v1.33.0 + golang.org/x/crypto v0.27.0 + golang.org/x/time v0.6.0 + google.golang.org/protobuf v1.34.2 ) -require github.com/pion/webrtc/v4 v4.0.0-beta.17 - require ( - github.com/bytedance/sonic v1.9.1 // indirect + github.com/bytedance/sonic v1.11.6 // indirect + github.com/bytedance/sonic/loader v0.1.1 // indirect github.com/cenkalti/backoff/v4 v4.0.0 // indirect - github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311 // indirect + github.com/cloudwego/base64x v0.1.4 // indirect + github.com/cloudwego/iasm v0.2.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect - github.com/gabriel-vasile/mimetype v1.4.2 // indirect + github.com/gabriel-vasile/mimetype v1.4.3 // indirect github.com/gin-contrib/sse v0.1.0 // indirect github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect - github.com/go-playground/validator/v10 v10.14.0 // indirect + github.com/go-playground/validator/v10 v10.20.0 // indirect github.com/goccy/go-json v0.10.2 // indirect - github.com/gogo/protobuf v1.3.2 // indirect - github.com/golang/snappy v0.0.1 // indirect + github.com/golang/snappy v0.0.4 // indirect github.com/google/uuid v1.6.0 // indirect - github.com/gorilla/context v1.1.1 // indirect - github.com/gorilla/sessions v1.1.3 // indirect - github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d // indirect - github.com/huin/goupnp v1.0.0 // indirect - github.com/imdario/mergo v0.3.6 // indirect - github.com/inconshreveable/mousetrap v1.0.0 // indirect - github.com/jackpal/gateway v1.0.5 // indirect - github.com/jackpal/go-nat-pmp v1.0.1 // indirect + github.com/gorilla/context v1.1.2 // indirect + github.com/gorilla/sessions v1.2.2 // indirect + github.com/hashicorp/yamux v0.1.2 // indirect + github.com/huin/goupnp v1.3.0 // indirect + github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/jackpal/gateway v1.0.11 // indirect + github.com/jackpal/go-nat-pmp v1.0.2 // indirect + github.com/jinzhu/copier v0.4.0 // indirect github.com/jpillora/backoff v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/klauspost/cpuid v1.2.1 // indirect - github.com/klauspost/cpuid/v2 v2.2.4 // indirect - github.com/klauspost/reedsolomon v0.0.0-20190407153631-a373324398e4 // indirect - github.com/leodido/go-urn v1.2.4 // indirect - github.com/mattn/go-isatty v0.0.19 // indirect + github.com/klauspost/cpuid/v2 v2.2.8 // indirect + github.com/klauspost/reedsolomon v1.12.4 // indirect + github.com/leodido/go-urn v1.4.0 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/miekg/dns v1.1.27 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/nknorg/go-nat v1.0.1 // indirect + github.com/nxadm/tail v1.4.11 // indirect github.com/op/go-logging v0.0.0-20160315200505-970db520ece7 // indirect - github.com/pelletier/go-toml/v2 v2.0.8 // indirect - github.com/pion/datachannel v1.5.6 // indirect - github.com/pion/dtls/v2 v2.2.10 // indirect - github.com/pion/ice/v3 v3.0.6 // indirect - github.com/pion/interceptor v0.1.29 // indirect + github.com/pelletier/go-toml/v2 v2.2.2 // indirect + github.com/pion/datachannel v1.5.9 // indirect + github.com/pion/dtls/v3 v3.0.2 // indirect + github.com/pion/ice/v4 v4.0.1 // indirect + github.com/pion/interceptor v0.1.30 // indirect github.com/pion/logging v0.2.2 // indirect github.com/pion/mdns/v2 v2.0.7 // indirect github.com/pion/randutil v0.1.0 // indirect github.com/pion/rtcp v1.2.14 // indirect - github.com/pion/rtp v1.8.5 // indirect - github.com/pion/sctp v1.8.16 // indirect + github.com/pion/rtp v1.8.9 // indirect + github.com/pion/sctp v1.8.33 // indirect github.com/pion/sdp/v3 v3.0.9 // indirect - github.com/pion/srtp/v3 v3.0.1 // indirect - github.com/pion/stun/v2 v2.0.0 // indirect - github.com/pion/transport/v2 v2.2.4 // indirect - github.com/pion/transport/v3 v3.0.2 // indirect - github.com/pion/turn/v3 v3.0.2 // indirect + github.com/pion/srtp/v3 v3.0.3 // indirect + github.com/pion/stun/v3 v3.0.0 // indirect + github.com/pion/transport/v3 v3.0.7 // indirect + github.com/pion/turn/v4 v4.0.0 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect + github.com/stretchr/objx v0.5.2 // indirect github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 // indirect - github.com/templexxx/xor v0.0.0-20181023030647-4e92f724b73b // indirect - github.com/tjfoc/gmsm v0.0.0-20190417070453-18fd8096dc8a // indirect + github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b // indirect + github.com/tjfoc/gmsm v1.4.1 // indirect github.com/twitchyliquid64/golang-asm v0.15.1 // indirect - github.com/ugorji/go/codec v1.2.11 // indirect - github.com/xtaci/kcp-go v4.3.1+incompatible // indirect - github.com/xtaci/smux v1.2.11 // indirect + github.com/ugorji/go/codec v1.2.12 // indirect + github.com/wlynxg/anet v0.0.3 // indirect + github.com/xtaci/kcp-go v5.4.20+incompatible // indirect + github.com/xtaci/smux v1.5.30 // indirect gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 // indirect gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 // indirect - golang.org/x/arch v0.3.0 // indirect - golang.org/x/net v0.23.0 // indirect - golang.org/x/term v0.18.0 // indirect - golang.org/x/text v0.14.0 // indirect + golang.org/x/arch v0.8.0 // indirect + golang.org/x/net v0.29.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.25.0 // indirect + golang.org/x/term v0.24.0 // indirect + golang.org/x/text v0.18.0 // indirect gopkg.in/square/go-jose.v2 v2.3.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 22e6a3b24..124e024ad 100644 --- a/go.sum +++ b/go.sum @@ -40,7 +40,7 @@ github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym github.com/OpenDNS/vegadns2client v0.0.0-20180418235048-a3fa4a771d87/go.mod h1:iGLljf5n9GjT6kc0HBvyI1nOKnGQbNB66VzSNbK5iks= github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= -github.com/akamai/AkamaiOPEN-edgegrid-golang v0.9.8/go.mod h1:aVvklgKsPENRkl29bNwrHISa1F+YLGTHArMxZMBqWM8= +github.com/akamai/AkamaiOPEN-edgegrid-golang v0.9.18/go.mod h1:L+HB2uBoDgi3+r1pJEJcbGwyyHhd2QXaGsKLbDwtm8Q= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= github.com/aliyun/alibaba-cloud-sdk-go v1.61.112/go.mod h1:pUKYbK5JQ+1Dfxk80P0qxGqe5dkxDoabbZS7zOcouyA= @@ -49,28 +49,28 @@ github.com/aws/aws-sdk-go v1.30.20/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZve github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= -github.com/boj/redistore v0.0.0-20180917114910-cd5dcc76aeff/go.mod h1:+RTT1BOk5P97fT2CiHkbFQwkK3mjsFAP6zCYV2aXtjw= github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8= -github.com/bradfitz/gomemcache v0.0.0-20190329173943-551aad21a668/go.mod h1:H0wQNHz2YrLsuXOZozoeDmnHXkNCRmMW0gwFWDfEZDA= -github.com/bradleypeabody/gorilla-sessions-memcache v0.0.0-20181103040241-659414f458e1/go.mod h1:dkChI7Tbtx7H1Tj7TqGSZMOeGpMP5gLHtjroHd4agiI= -github.com/bytedance/sonic v1.5.0/go.mod h1:ED5hyg4y6t3/9Ku1R6dU/4KyJ48DZ4jPhfY1O2AihPM= -github.com/bytedance/sonic v1.9.1 h1:6iJ6NqdoxCDr6mbY8h18oSO+cShGSMRGCEo7F2h0x8s= -github.com/bytedance/sonic v1.9.1/go.mod h1:i736AoUSYt75HyZLoJW9ERYxcy6eaN6h4BZXU064P/U= +github.com/bytedance/sonic v1.11.6 h1:oUp34TzMlL+OY1OUWxHqsdkgC/Zfc85zGqw9siXjrc0= +github.com/bytedance/sonic v1.11.6/go.mod h1:LysEHSvpvDySVdC2f87zGWf6CIKJcAvqab1ZaiQtds4= +github.com/bytedance/sonic/loader v0.1.1 h1:c+e5Pt1k/cy5wMveRDyk2X4B9hF4g7an8N3zCYjJFNM= +github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= github.com/cenkalti/backoff/v4 v4.0.0 h1:6VeaLF9aI+MAUQ95106HwWzYZgJJpZ4stumjj6RFYAU= github.com/cenkalti/backoff/v4 v4.0.0/go.mod h1:eEew/i+1Q6OrCDZh3WiXYv3+nJwBASZ8Bog/87DQnVg= github.com/census-instrumentation/opencensus-proto v0.2.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= -github.com/chenzhuoyu/base64x v0.0.0-20211019084208-fb5309c8db06/go.mod h1:DH46F32mSOjUmXrMHnKwZdA8wcEefY7UVqBKYGjpdQY= -github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311 h1:qSGYFH7+jGhDF8vLC+iwCD4WpbV1EBDSzWkJODFLams= -github.com/chenzhuoyu/base64x v0.0.0-20221115062448-fe3a3abad311/go.mod h1:b583jCggY9gE99b6G5LEC39OIiVsWj+R97kbl5odCEk= github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cloudflare/cloudflare-go v0.10.2/go.mod h1:qhVI5MKwBGhdNU89ZRz2plgYutcJ5PCekLxXn56w6SY= +github.com/cloudwego/base64x v0.1.4 h1:jwCgWpFanWmN8xoIUHa2rtzmkd5J2plF/dnLS6Xd/0Y= +github.com/cloudwego/base64x v0.1.4/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w= +github.com/cloudwego/iasm v0.2.0 h1:1KNIy1I1H9hNNFEEH3DVnI4UujN+1zjpuk6gwHLTssg= +github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY= +github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cpu/goacmedns v0.0.2/go.mod h1:4MipLkI+qScwqtVxcNO6okBhbgRrr7/tKXUSgSL0teQ= github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU= -github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -83,27 +83,27 @@ github.com/eapache/go-xerial-snappy v0.0.0-20180814174437-776d5712da21/go.mod h1 github.com/eapache/queue v1.1.0/go.mod h1:6eCeP0CKFpHLu8blIFXhExK/dRa7WDZfr6jVFPTqq+I= github.com/emirpasic/gods v1.18.1 h1:FXtiHYKDGKCW2KzwZKx0iC0PQmdlorYgdFG9jPXJ1Bc= github.com/emirpasic/gods v1.18.1/go.mod h1:8tpGGwCnJ5H4r6BWwaV6OrWmMoPhUl5jm/FMNAnJvWQ= +github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/exoscale/egoscale v0.18.1/go.mod h1:Z7OOdzzTOz1Q1PjQXumlz9Wn/CddH0zSYdCF3rnBKXE= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= -github.com/fsnotify/fsnotify v1.4.9 h1:hsms1Qyu0jgnwNXIxa+/V/PDsU6CfLf6CNO8H7IWoS4= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= -github.com/gabriel-vasile/mimetype v1.4.2 h1:w5qFW6JKBz9Y393Y4q372O9A7cUSequkh1Q7OhCmWKU= -github.com/gabriel-vasile/mimetype v1.4.2/go.mod h1:zApsH/mKG4w07erKIaJPFiX0Tsq9BFQgN3qGY5GnNgA= +github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= +github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbSClcnxKAGw= +github.com/gabriel-vasile/mimetype v1.4.3 h1:in2uUcidCuFcDKtdcBxlR0rJ1+fsokWf+uqxgUFjbI0= +github.com/gabriel-vasile/mimetype v1.4.3/go.mod h1:d8uq/6HKRL6CGdk+aubisF/M5GcPfT7nKyLpA0lbSSk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= -github.com/gin-contrib/sessions v0.0.0-20190512062852-3cb4c4f2d615 h1:2KRlm9Qh15+8BjkbOCcZtfC7aFVQd2mELjpHjrDmv1s= -github.com/gin-contrib/sessions v0.0.0-20190512062852-3cb4c4f2d615/go.mod h1:iziXm/6pvTtf7og1uxT499sel4h3S9DfwsrhNZ+REXM= -github.com/gin-contrib/sse v0.0.0-20190301062529-5545eab6dad3/go.mod h1:VJ0WA2NBN22VlZ2dKZQPAPnyWw5XTlK1KymzLKsr59s= +github.com/gin-contrib/sessions v1.0.1 h1:3hsJyNs7v7N8OtelFmYXFrulAf6zSR7nW/putcPEHxI= +github.com/gin-contrib/sessions v1.0.1/go.mod h1:ouxSFM24/OgIud5MJYQJLpy6AwxQ5EYO9yLhbtObGkM= github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= -github.com/gin-gonic/gin v1.4.0/go.mod h1:OW2EZn3DO8Ln9oIKOvM++LBO+5UPHJJDH72/q/3rZdM= -github.com/gin-gonic/gin v1.9.1 h1:4idEAncQnU5cB7BeOkPtxjfCSye0AAm1R0RVIqJ+Jmg= -github.com/gin-gonic/gin v1.9.1/go.mod h1:hPrL7YrpYKXt5YId3A/Tnip5kqbEAP+KLuI3SUcPTeU= -github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= -github.com/go-acme/lego/v3 v3.8.0 h1:9OOEn54eZvEPRRdM7xiC5f7EBW0MlEeChr+kzlIhdN8= -github.com/go-acme/lego/v3 v3.8.0/go.mod h1:kYiHYgSRzb1l2NQPWvWvkVG5etNCusGFsZc2MTak3m0= +github.com/gin-gonic/gin v1.10.0 h1:nTuyha1TYqgedzytsKYqna+DfLos46nTv2ygFy86HFU= +github.com/gin-gonic/gin v1.10.0/go.mod h1:4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y= +github.com/go-acme/lego/v3 v3.9.0 h1:Kyvg2GGqRJHfK2Stu57M45TDTx0y1bsxLH7lpeP3n0A= +github.com/go-acme/lego/v3 v3.9.0/go.mod h1:va0cvQpxpJ3u2OA534L8TDn+lsr2oujLzPckLOLnUGQ= github.com/go-cmd/cmd v1.0.5/go.mod h1:y8q8qlK5wQibcw63djSl/ntiHUHXHGdCkPk0j4QeW4s= github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= @@ -117,8 +117,8 @@ github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/o github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY= github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY= github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY= -github.com/go-playground/validator/v10 v10.14.0 h1:vgvQWe3XCz3gIeFDm/HnTIbj6UGmg/+t63MyGU2n5js= -github.com/go-playground/validator/v10 v10.14.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU= +github.com/go-playground/validator/v10 v10.20.0 h1:K9ISHbSaI0lyB2eWMPJo+kOS/FBExVwjEviJTixqxL8= +github.com/go-playground/validator/v10 v10.20.0/go.mod h1:dbuPbCMFw/DrkbEynArYaCwl3amGuJotoKCe95atGMM= github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU= @@ -126,8 +126,6 @@ github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MG github.com/gofrs/uuid v3.2.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= -github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= -github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= github.com/goji/httpauth v0.0.0-20160601135302-2da839ab0f4d/go.mod h1:nnjvkQ9ptGaCkuDUx6wNykzzlUixGxvkme+H/lnzb+A= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -149,22 +147,20 @@ github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrU github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= -github.com/golang/protobuf v1.5.0 h1:LUVKkCeviFUMKqHa4tXIIij/lbhnMbP7Fn5wKdKkRh4= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.1 h1:Qgr9rKW7uDUkrbSmQeiDsGa8SjGyCOGtuasMWwvp2P4= github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/gomodule/redigo v2.0.0+incompatible/go.mod h1:B4C85qUVwatsJoIUNIfCRsp7qO0iAmpGFZ4EELWSbC4= +github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= @@ -178,49 +174,51 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= -github.com/gophercloud/gophercloud v0.3.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= +github.com/gophercloud/gophercloud v0.6.1-0.20191122030953-d8ac278c1c9d/go.mod h1:ozGNgr9KYOVATV5jsgHl/ceCDXGuguqOZAzoQ/2vcNM= +github.com/gophercloud/gophercloud v0.7.0/go.mod h1:gmC5oQqMDOMO1t1gq5DquX/yAU808e/4mzjjDA76+Ss= +github.com/gophercloud/utils v0.0.0-20200508015959-b0167b94122c/go.mod h1:ehWUbLQJPqS0Ep+CxeD559hsm9pthPXadJNKwZkp43w= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/context v1.1.1 h1:AWwleXJkX/nhcU9bZSnZoi3h/qGYqQAGhq6zZe/aQW8= github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg= +github.com/gorilla/context v1.1.2 h1:WRkNAv2uoa03QNIc1A6u4O7DAGMUVoopZhkiXWA2V1o= +github.com/gorilla/context v1.1.2/go.mod h1:KDPwT9i/MeWHiLl90fuTgrt4/wPcv75vFAZLaOOcbxM= github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= -github.com/gorilla/securecookie v1.1.1 h1:miw7JPhV+b/lAHSXz4qd/nN9jRiAFV5FwjeKyCS8BvQ= -github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4= -github.com/gorilla/sessions v1.1.1/go.mod h1:8KCfur6+4Mqcc6S0FEfKuN15Vl5MgXW92AE8ovaJD0w= -github.com/gorilla/sessions v1.1.3 h1:uXoZdcdA5XdXF3QzuSlheVRUvjl+1rKY7zBXL68L9RU= -github.com/gorilla/sessions v1.1.3/go.mod h1:8KCfur6+4Mqcc6S0FEfKuN15Vl5MgXW92AE8ovaJD0w= -github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc= -github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gorilla/securecookie v1.1.2 h1:YCIWL56dvtr73r6715mJs5ZvhtnY73hBvEF8kXD8ePA= +github.com/gorilla/securecookie v1.1.2/go.mod h1:NfCASbcHqRSY+3a8tlWJwsQap2VX5pwzwo4h3eOamfo= +github.com/gorilla/sessions v1.2.2 h1:lqzMYz6bOfvn2WriPUjNByzeXIlVzURcPmgMczkmTjY= +github.com/gorilla/sessions v1.2.2/go.mod h1:ePLdVu+jbEgHH+KWw8I1z2wqd0BAdAQh/8LRvBeoNcQ= +github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= +github.com/gorilla/websocket v1.5.3/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/grpc-ecosystem/grpc-gateway v1.8.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542/go.mod h1:Ow0tF8D4Kplbc8s8sSb3V2oUCygFHVp8gC3Dn6U4MNI= github.com/hashicorp/go-cleanhttp v0.5.1/go.mod h1:JpRdi6/HCYpAwUzNwuwqhbovhLtngrth3wmdIIUrZ80= github.com/hashicorp/go-hclog v0.9.2/go.mod h1:5CU+agLiy3J7N7QjHK5d05KxGsuXiQLrjA0H7acj2lQ= github.com/hashicorp/go-retryablehttp v0.6.6/go.mod h1:vAew36LZh98gCBJNLH42IQ1ER/9wtLZZ8meHqQvEYWY= +github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d h1:kJCB4vdITiW1eC1vq2e6IsrXKrZit1bv/TDYFGMp4BQ= -github.com/hashicorp/yamux v0.0.0-20181012175058-2f1d1f20f75d/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM= -github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c h1:kQWxfPIHVLbgLzphqk3QUflDy9QdksZR4ygR807bpy0= -github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c/go.mod h1:lADxMC39cJJqL93Duh1xhAs4I2Zs8mKS89XWXFGp9cs= +github.com/hashicorp/yamux v0.1.2 h1:XtB8kyFOyHXYVFnwT5C3+Bdo8gArse7j2AQ0DA0Uey8= +github.com/hashicorp/yamux v0.1.2/go.mod h1:C+zze2n6e/7wshOZep2A70/aQU6QBRWJO/G6FT1wIns= +github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef h1:A9HsByNhogrvm9cWb28sjiS3i7tcKCkflWFEkHfuAgM= +github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef/go.mod h1:lADxMC39cJJqL93Duh1xhAs4I2Zs8mKS89XWXFGp9cs= github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/huin/goupnp v0.0.0-20180415215157-1395d1447324/go.mod h1:MZ2ZmwcBpvOoJ22IJsc7va19ZwoheaBk43rKg12SKag= -github.com/huin/goupnp v1.0.0 h1:wg75sLpL6DZqwHQN6E1Cfk6mtfzS45z8OV+ic+DtHRo= -github.com/huin/goupnp v1.0.0/go.mod h1:n9v9KO1tAxYH82qOn+UTIFQDmx5n1Zxd/ClZDMX7Bnc= -github.com/huin/goutil v0.0.0-20170803182201-1ca381bf3150/go.mod h1:PpLOETDnJ0o3iZrZfqZzyLl6l7F3c6L1oWn7OICBi6o= +github.com/huin/goupnp v1.3.0 h1:UvLUlWDNpoUdYzb2TCn+MuTWtcjXKSza2n6CBdQ0xXc= +github.com/huin/goupnp v1.3.0/go.mod h1:gnGPsThkYa7bFi/KWmEysQRf48l2dvR5bxr2OFckNX8= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/iij/doapi v0.0.0-20190504054126-0bbf12d6d7df/go.mod h1:QMZY7/J/KSQEhKWFeDesPjMj+wCHReeknARU3wqlyN4= -github.com/imdario/mergo v0.3.6 h1:xTNEAn+kxVO7dTZGu0CegyqKZmoWFI0rF8UxjlB2d28= -github.com/imdario/mergo v0.3.6/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= -github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= -github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= -github.com/itchyny/base58-go v0.0.5 h1:uv3ieMgCtuE9HtN0Gux375+GOApFnifLkyvSseHBaH0= -github.com/itchyny/base58-go v0.0.5/go.mod h1:SrMWPE3DFuJJp1M/RUhu4fccp/y9AlB8AL3o3duPToU= +github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= +github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/itchyny/base58-go v0.2.2 h1:pswMT6rW2nRoELk5Mi8+xGLQPmDnlNnCwbfRCl2p7Mo= +github.com/itchyny/base58-go v0.2.2/go.mod h1:e7aEDHyQXm42jniwyoi+MaUeUdeWp58C5H20rTe52co= github.com/jackpal/gateway v1.0.4/go.mod h1:lTpwd4ACLXmpyiCTRtfiNyVnUmqT9RivzCDQetPfnjA= -github.com/jackpal/gateway v1.0.5 h1:qzXWUJfuMdlLMtt0a3Dgt+xkWQiA5itDEITVJtuSwMc= -github.com/jackpal/gateway v1.0.5/go.mod h1:lTpwd4ACLXmpyiCTRtfiNyVnUmqT9RivzCDQetPfnjA= -github.com/jackpal/go-nat-pmp v1.0.1 h1:i0LektDkO1QlrTm/cSuP+PyBCDnYvjPLGl4LdWEMiaA= +github.com/jackpal/gateway v1.0.11 h1:XqCVFIyo2LtQYXjz9nis1WMTvAadJiFP/Zc04xmdEYE= +github.com/jackpal/gateway v1.0.11/go.mod h1:NqRwEsSP/DD8d4YXIsHEMNUSYetesFXjmL6QZFrul+M= github.com/jackpal/go-nat-pmp v1.0.1/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= -github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= +github.com/jackpal/go-nat-pmp v1.0.2 h1:KzKSgb7qkJvOUTqYl9/Hg/me3pWgBmERKrTGD7BdWus= +github.com/jackpal/go-nat-pmp v1.0.2/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= +github.com/jinzhu/copier v0.4.0 h1:w3ciUoD19shMCRargcpm0cm91ytaBhDvuRpz1ODO/U8= +github.com/jinzhu/copier v0.4.0/go.mod h1:DfbEm0FYsaqBcKcFuvmOZb218JkPGtvSHsKg8S8hyyg= github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k= github.com/jmespath/go-jmespath v0.3.0/go.mod h1:9QtRXoHjLGCJ5IBSaohpXITPlowMeeYCZ7fLUTSywik= github.com/jpillora/backoff v1.0.0 h1:uvFg412JmmHBHw7iwprIxkPMI+sGQ4kzOWsMeHnm2EA= @@ -234,16 +232,13 @@ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1 github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= -github.com/kidstuff/mongostore v0.0.0-20181113001930-e650cd85ee4b/go.mod h1:g2nVr8KZVXJSS97Jo8pJ0jgq29P6H7dG0oplUA86MQw= -github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/klauspost/cpuid v1.2.1 h1:vJi+O/nMdFt0vqm8NZBI6wzALWdA2X+egi0ogNyrC/w= -github.com/klauspost/cpuid v1.2.1/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek= github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= -github.com/klauspost/cpuid/v2 v2.2.4 h1:acbojRNwl3o09bUq+yDCtZFc1aiwaAAxtcn8YkZXnvk= -github.com/klauspost/cpuid/v2 v2.2.4/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY= -github.com/klauspost/reedsolomon v0.0.0-20190407153631-a373324398e4 h1:nNpHdsitIhlNWAY3DkpFubu0n8ebuUOCsgWL/Sxm3O4= -github.com/klauspost/reedsolomon v0.0.0-20190407153631-a373324398e4/go.mod h1:CwCi+NUr9pqSVktrkN+Ondf06rkhYZ/pcNv7fu+8Un4= +github.com/klauspost/cpuid/v2 v2.2.8 h1:+StwCXwm9PdpiEkPyzBXIy+M9KUb4ODm0Zarf1kS5BM= +github.com/klauspost/cpuid/v2 v2.2.8/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= +github.com/klauspost/reedsolomon v1.12.4 h1:5aDr3ZGoJbgu/8+j45KtUJxzYm8k08JGtB9Wx1VQ4OA= +github.com/klauspost/reedsolomon v1.12.4/go.mod h1:d3CzOMOt0JXGIFZm1StgkyF14EYr3xneR2rNWo7NcMU= +github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= github.com/kolo/xmlrpc v0.0.0-20200310150728-e0350524596b/go.mod h1:o03bZfuBwAXHetKXuInt4S7omeXUu62/A845kiycsSQ= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= @@ -251,23 +246,21 @@ github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFB github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/labbsr0x/bindman-dns-webhook v1.0.2/go.mod h1:p6b+VCXIR8NYKpDr8/dg1HKfQoRHCdcsROXKvmoehKA= github.com/labbsr0x/goh v1.0.1/go.mod h1:8K2UhVoaWXcCU7Lxoa2omWnC8gyW8px7/lmO61c027w= -github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q= -github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4= +github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ= +github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI= github.com/linode/linodego v0.10.0/go.mod h1:cziNP7pbvE3mXIPneHj0oRY8L1WtGEIKlZ8LANE4eXA= github.com/liquidweb/liquidweb-go v1.6.0/go.mod h1:UDcVnAMDkZxpw4Y7NOHkqoeiGacVLEIG/i5J9cyixzQ= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= -github.com/mattn/go-isatty v0.0.7/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.19 h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA= -github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-tty v0.0.0-20180219170247-931426f7535a/go.mod h1:XPvLUNfbS4fJH25nqRHfWLMa1ONC8Amw+mIA639KxkE= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/memcachier/mc v2.0.1+incompatible/go.mod h1:7bkvFE61leUBvXz+yxsOnGBQSZpBSPIMUQSmmSHvuXc= github.com/miekg/dns v1.1.27 h1:aEH/kqUzUxGJ/UHcEKdJY+ugH6WEzsEBBSPa8zuy1aM= github.com/miekg/dns v1.1.27/go.mod h1:KNUDUusw/aVsxyTYZM1oqvCicbwhgbNgztCETuNZ7xM= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= @@ -283,20 +276,20 @@ github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjY github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/namedotcom/go v0.0.0-20180403034216-08470befbe04/go.mod h1:5sN+Lt1CaY4wsPvgQH/jsuJi4XO2ssZbdsIizr4CVC8= github.com/nbio/st v0.0.0-20140626010706-e9e8d9816f32/go.mod h1:9wM+0iRr9ahx58uYLpLIr5fm8diHn0JbqRycJi6w0Ms= -github.com/nknorg/consequential v0.0.0-20190823093205-a45aff4a218a h1:DXTCQnVV2EsTWEVk/YhVGb2QxdgW8JzB2GEsNntDlaU= -github.com/nknorg/consequential v0.0.0-20190823093205-a45aff4a218a/go.mod h1:H7XeI/XOPpWVmqM+ScT75RLMn7jWnlZDwHRahSxNxo0= +github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984 h1:VY7EXvgxCKlL2A6jF+qQspZtFBZo7PWiPY+YGDaCDlo= +github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984/go.mod h1:H7XeI/XOPpWVmqM+ScT75RLMn7jWnlZDwHRahSxNxo0= github.com/nknorg/go-nat v1.0.1 h1:4dFK0oDyqkIE0it03Y4pMgBQpl1Y0mrYHEp+j/nZ910= github.com/nknorg/go-nat v1.0.1/go.mod h1:dblX1Ac2j08rTUGs5CKCAfjHGN5eDFhbeqt2rccSP3Y= -github.com/nknorg/nnet v0.0.0-20220621093239-b22b80b04216 h1:+5lcBTnhfQcVMtsY+CqcuaiJ3ebVYwrmYDnTabh/KBg= -github.com/nknorg/nnet v0.0.0-20220621093239-b22b80b04216/go.mod h1:rB1dMWGEjNncJjcmLVuXDXawGiD1gD/hwSR+vrr8Wp8= github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283 h1:uS3/DvxCbi0zZau66ggQAgEjyGmql2mj77UQFgumq1I= github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283/go.mod h1:dL4PQJ4670oTO6LqvkjrBQEkD+iMiOYjlKRBBw55Csg= github.com/nrdcg/auroradns v1.0.1/go.mod h1:y4pc0i9QXYlFCWrhWrUSIETnZgrf4KuwjDIWmmXo3JI= +github.com/nrdcg/desec v0.5.0/go.mod h1:2ejvMazkav1VdDbv2HeQO7w+Ta1CGHqzQr27ZBYTuEQ= github.com/nrdcg/dnspod-go v0.4.0/go.mod h1:vZSoFSFeQVm2gWLMkyX61LZ8HI3BaqtHZWgPTGKr6KQ= github.com/nrdcg/goinwx v0.7.0/go.mod h1:4tKJOCi/1lTxuw9/yB2Ez0aojwtUCSkckjc22eALpqE= github.com/nrdcg/namesilo v0.2.1/go.mod h1:lwMvfQTyYq+BbjJd30ylEG4GPSS6PII0Tia4rRpRiyw= -github.com/nxadm/tail v1.4.4 h1:DQuhQpB1tVlglWS2hLQ5OV6B5r8aGxSrPc5Qo6uTN78= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= +github.com/nxadm/tail v1.4.11 h1:8feyoE3OzPrcshW5/MJ4sGESc5cqmGkGCWlco4l0bqY= +github.com/nxadm/tail v1.4.11/go.mod h1:OTaG3NK980DZzxbRq6lEuzgU+mug70nY11sMd4JXXHc= github.com/olekukonko/tablewriter v0.0.1/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= @@ -314,54 +307,45 @@ github.com/oracle/oci-go-sdk v7.0.0+incompatible/go.mod h1:VQb79nF8Z2cwLkLS35ukw github.com/ovh/go-ovh v0.0.0-20181109152953-ba5adb4cf014/go.mod h1:joRatxRJaZBsY3JAOEMcoOp05CnZzsx4scTxi95DHyQ= github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc= github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ= -github.com/pbnjay/memory v0.0.0-20190104145345-974d429e7ae4 h1:MfIUBZ1bz7TgvQLVa/yPJZOGeKEgs6eTKUjz3zB4B+U= -github.com/pbnjay/memory v0.0.0-20190104145345-974d429e7ae4/go.mod h1:RMU2gJXhratVxBDTFeOdNhd540tG57lt9FIUV0YLvIQ= -github.com/pborman/uuid v1.2.0 h1:J7Q5mO4ysT1dv8hyrUGHb9+ooztCXu1D8MY8DZYsu3g= -github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= -github.com/pelletier/go-toml/v2 v2.0.8 h1:0ctb6s9mE31h0/lhu+J6OPmVeDxJn+kYnJc2jZR9tGQ= -github.com/pelletier/go-toml/v2 v2.0.8/go.mod h1:vuYfssBdrU2XDZ9bYydBu6t+6a6PYNcZljzZR9VXg+4= +github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58 h1:onHthvaw9LFnH4t2DcNVpwGmV9E1BkGknEliJkfwQj0= +github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58/go.mod h1:DXv8WO4yhMYhSNPKjeNKa5WY9YCIEBRbNzFFPJbWO6Y= +github.com/pborman/uuid v1.2.1 h1:+ZZIw58t/ozdjRaXh/3awHfmWRbzYxJoAdNJxe/3pvw= +github.com/pborman/uuid v1.2.1/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= +github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM= +github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs= github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= -github.com/pion/datachannel v1.5.6 h1:1IxKJntfSlYkpUj8LlYRSWpYiTTC02nUrOE8T3DqGeg= -github.com/pion/datachannel v1.5.6/go.mod h1:1eKT6Q85pRnr2mHiWHxJwO50SfZRtWHTsNIVb/NfGW4= -github.com/pion/dtls/v2 v2.2.7/go.mod h1:8WiMkebSHFD0T+dIU+UeBaoV7kDhOW5oDCzZ7WZ/F9s= -github.com/pion/dtls/v2 v2.2.10 h1:u2Axk+FyIR1VFTPurktB+1zoEPGIW3bmyj3LEFrXjAA= -github.com/pion/dtls/v2 v2.2.10/go.mod h1:d9SYc9fch0CqK90mRk1dC7AkzzpwJj6u2GU3u+9pqFE= -github.com/pion/ice/v3 v3.0.6 h1:UC5vZCMhmve7yv+Y6E5eTnRTl+t9LLtmeBYQ9038Zm8= -github.com/pion/ice/v3 v3.0.6/go.mod h1:4eMTUKQEjC1fGQGB6qUzy2ux9Pc1v9EsO3hNaii+kXI= -github.com/pion/interceptor v0.1.29 h1:39fsnlP1U8gw2JzOFWdfCU82vHvhW9o0rZnZF56wF+M= -github.com/pion/interceptor v0.1.29/go.mod h1:ri+LGNjRUc5xUNtDEPzfdkmSqISixVTBF/z/Zms/6T4= +github.com/pion/datachannel v1.5.9 h1:LpIWAOYPyDrXtU+BW7X0Yt/vGtYxtXQ8ql7dFfYUVZA= +github.com/pion/datachannel v1.5.9/go.mod h1:kDUuk4CU4Uxp82NH4LQZbISULkX/HtzKa4P7ldf9izE= +github.com/pion/dtls/v3 v3.0.2 h1:425DEeJ/jfuTTghhUDW0GtYZYIwwMtnKKJNMcWccTX0= +github.com/pion/dtls/v3 v3.0.2/go.mod h1:dfIXcFkKoujDQ+jtd8M6RgqKK3DuaUilm3YatAbGp5k= +github.com/pion/ice/v4 v4.0.1 h1:2d3tPoTR90F3TcGYeXUwucGlXI3hds96cwv4kjZmb9s= +github.com/pion/ice/v4 v4.0.1/go.mod h1:2dpakjpd7+74L5j3TAe6gvkbI5UIzOgAnkimm9SuHvA= +github.com/pion/interceptor v0.1.30 h1:au5rlVHsgmxNi+v/mjOPazbW1SHzfx7/hYOEYQnUcxA= +github.com/pion/interceptor v0.1.30/go.mod h1:RQuKT5HTdkP2Fi0cuOS5G5WNymTjzXaGF75J4k7z2nc= github.com/pion/logging v0.2.2 h1:M9+AIj/+pxNsDfAT64+MAVgJO0rsyLnoJKCqf//DoeY= github.com/pion/logging v0.2.2/go.mod h1:k0/tDVsRCX2Mb2ZEmTqNa7CWsQPc+YYCB7Q+5pahoms= github.com/pion/mdns/v2 v2.0.7 h1:c9kM8ewCgjslaAmicYMFQIde2H9/lrZpjBkN8VwoVtM= github.com/pion/mdns/v2 v2.0.7/go.mod h1:vAdSYNAT0Jy3Ru0zl2YiW3Rm/fJCwIeM0nToenfOJKA= github.com/pion/randutil v0.1.0 h1:CFG1UdESneORglEsnimhUjf33Rwjubwj6xfiOXBa3mA= github.com/pion/randutil v0.1.0/go.mod h1:XcJrSMMbbMRhASFVOlj/5hQial/Y8oH/HVo7TBZq+j8= -github.com/pion/rtcp v1.2.12/go.mod h1:sn6qjxvnwyAkkPzPULIbVqSKI5Dv54Rv7VG0kNxh9L4= github.com/pion/rtcp v1.2.14 h1:KCkGV3vJ+4DAJmvP0vaQShsb0xkRfWkO540Gy102KyE= github.com/pion/rtcp v1.2.14/go.mod h1:sn6qjxvnwyAkkPzPULIbVqSKI5Dv54Rv7VG0kNxh9L4= -github.com/pion/rtp v1.8.3/go.mod h1:pBGHaFt/yW7bf1jjWAoUjpSNoDnw98KTMg+jWWvziqU= -github.com/pion/rtp v1.8.5 h1:uYzINfaK+9yWs7r537z/Rc1SvT8ILjBcmDOpJcTB+OU= -github.com/pion/rtp v1.8.5/go.mod h1:pBGHaFt/yW7bf1jjWAoUjpSNoDnw98KTMg+jWWvziqU= -github.com/pion/sctp v1.8.13/go.mod h1:YKSgO/bO/6aOMP9LCie1DuD7m+GamiK2yIiPM6vH+GA= -github.com/pion/sctp v1.8.16 h1:PKrMs+o9EMLRvFfXq59WFsC+V8mN1wnKzqrv+3D/gYY= -github.com/pion/sctp v1.8.16/go.mod h1:P6PbDVA++OJMrVNg2AL3XtYHV4uD6dvfyOovCgMs0PE= +github.com/pion/rtp v1.8.9 h1:E2HX740TZKaqdcPmf4pw6ZZuG8u5RlMMt+l3dxeu6Wk= +github.com/pion/rtp v1.8.9/go.mod h1:pBGHaFt/yW7bf1jjWAoUjpSNoDnw98KTMg+jWWvziqU= +github.com/pion/sctp v1.8.33 h1:dSE4wX6uTJBcNm8+YlMg7lw1wqyKHggsP5uKbdj+NZw= +github.com/pion/sctp v1.8.33/go.mod h1:beTnqSzewI53KWoG3nqB282oDMGrhNxBdb+JZnkCwRM= github.com/pion/sdp/v3 v3.0.9 h1:pX++dCHoHUwq43kuwf3PyJfHlwIj4hXA7Vrifiq0IJY= github.com/pion/sdp/v3 v3.0.9/go.mod h1:B5xmvENq5IXJimIO4zfp6LAe1fD9N+kFv+V/1lOdz8M= -github.com/pion/srtp/v3 v3.0.1 h1:AkIQRIZ+3tAOJMQ7G301xtrD1vekQbNeRO7eY1K8ZHk= -github.com/pion/srtp/v3 v3.0.1/go.mod h1:3R3a1qIOIxBkVTLGFjafKK6/fJoTdQDhcC67HOyMbJ8= -github.com/pion/stun/v2 v2.0.0 h1:A5+wXKLAypxQri59+tmQKVs7+l6mMM+3d+eER9ifRU0= -github.com/pion/stun/v2 v2.0.0/go.mod h1:22qRSh08fSEttYUmJZGlriq9+03jtVmXNODgLccj8GQ= -github.com/pion/transport/v2 v2.2.1/go.mod h1:cXXWavvCnFF6McHTft3DWS9iic2Mftcz1Aq29pGcU5g= -github.com/pion/transport/v2 v2.2.4 h1:41JJK6DZQYSeVLxILA2+F4ZkKb4Xd/tFJZRFZQ9QAlo= -github.com/pion/transport/v2 v2.2.4/go.mod h1:q2U/tf9FEfnSBGSW6w5Qp5PFWRLRj3NjLhCCgpRK4p0= -github.com/pion/transport/v3 v3.0.1/go.mod h1:UY7kiITrlMv7/IKgd5eTUcaahZx5oUN3l9SzK5f5xE0= -github.com/pion/transport/v3 v3.0.2 h1:r+40RJR25S9w3jbA6/5uEPTzcdn7ncyU44RWCbHkLg4= -github.com/pion/transport/v3 v3.0.2/go.mod h1:nIToODoOlb5If2jF9y2Igfx3PFYWfuXi37m0IlWa/D0= -github.com/pion/turn/v3 v3.0.2 h1:iBonAIIKRwkVUJBFiFd/kSjytP7FlX0HwCyBDJPRDdU= -github.com/pion/turn/v3 v3.0.2/go.mod h1:vw0Dz420q7VYAF3J4wJKzReLHIo2LGp4ev8nXQexYsc= -github.com/pion/webrtc/v4 v4.0.0-beta.17 h1:KdAbozM+lQ3Dz1NJ0JATRDQ4W02WUhWwIkvjyBRODL0= -github.com/pion/webrtc/v4 v4.0.0-beta.17/go.mod h1:I/Z0MFtc6Ok7mN7kZmA1xqU7KA9ycZZx/6eXz5+yD+4= -github.com/pkg/errors v0.0.0-20190227000051-27936f6d90f9/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pion/srtp/v3 v3.0.3 h1:tRtEOpmR8NtsB/KndlKXFOj/AIIs6aPrCq4TlAatC4M= +github.com/pion/srtp/v3 v3.0.3/go.mod h1:Bp9ztzPCoE0ETca/R+bTVTO5kBgaQMiQkTmZWwazDTc= +github.com/pion/stun/v3 v3.0.0 h1:4h1gwhWLWuZWOJIJR9s2ferRO+W3zA/b6ijOI6mKzUw= +github.com/pion/stun/v3 v3.0.0/go.mod h1:HvCN8txt8mwi4FBvS3EmDghW6aQJ24T+y+1TKjB5jyU= +github.com/pion/transport/v3 v3.0.7 h1:iRbMH05BzSNwhILHoBoAPxoB9xQgOaJk+591KC9P1o0= +github.com/pion/transport/v3 v3.0.7/go.mod h1:YleKiTZ4vqNxVwh77Z0zytYi7rXHl7j6uPLGhhz9rwo= +github.com/pion/turn/v4 v4.0.0 h1:qxplo3Rxa9Yg1xXDxxH8xaqcyGUtbHYw4QSCvmFWvhM= +github.com/pion/turn/v4 v4.0.0/go.mod h1:MuPDkm15nYSklKpN8vWJ9W2M0PlyQZqYt1McGuxG7mA= +github.com/pion/webrtc/v4 v4.0.0-beta.30 h1:ztchBW2RZiiBflmoCIuViD/axDoNkEzoh0CqRWvf6dc= +github.com/pion/webrtc/v4 v4.0.0-beta.30/go.mod h1:V+nZxyUG8sIUb0uUYQEZzx1PvMPtHlRby4h3xhrjTsg= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= @@ -384,7 +368,6 @@ github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R github.com/prometheus/procfs v0.0.0-20190117184657-bf6a532e95b1/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/quasoft/memstore v0.0.0-20180925164028-84a050167438/go.mod h1:wTPjTepVu7uJBYgZ0SdWHQlIas582j6cn2jgk4DDdlg= github.com/rainycape/memcache v0.0.0-20150622160815-1031fa0ce2f2/go.mod h1:7tZKcyumwBO6qip7RNQ5r77yrssm9bfCowcLEBcU5IA= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rdegges/go-ipify v0.0.0-20150526035502-2d94a6a86c40 h1:31Y7UZ1yTYBU4E79CE52I/1IRi3TqiuwquXGNtZDXWs= @@ -401,14 +384,15 @@ github.com/skratchdot/open-golang v0.0.0-20160302144031-75fb7ed4208c/go.mod h1:s github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= github.com/smartystreets/goconvey v0.0.0-20190330032615-68dc04aab96a/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= -github.com/spf13/cobra v1.4.0 h1:y+wJpx64xcgO1V+RcnwW0LEHxTKRi2ZDPSBjWnrg88Q= -github.com/spf13/cobra v1.4.0/go.mod h1:Wo4iy3BUC+X2Fybo0PDqwJIv3dNRiZLHQymsfxlB84g= +github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= +github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY= github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= @@ -419,8 +403,6 @@ github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= @@ -428,32 +410,31 @@ github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954 h1:xQdMZ1WLrgkk github.com/syndtr/goleveldb v1.0.1-0.20210305035536-64b5b1c73954/go.mod h1:u2MKkTVTVJWe5D1rCvame8WqhBd88EuIwODJZ1VHCPM= github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161 h1:89CEmDvlq/F7SJEOqkIdNDGJXrQIhuIx9D2DBXjavSU= github.com/templexxx/cpufeat v0.0.0-20180724012125-cef66df7f161/go.mod h1:wM7WEvslTq+iOEAMDLSzhVuOt5BRZ05WirO+b09GHQU= -github.com/templexxx/xor v0.0.0-20181023030647-4e92f724b73b h1:mnG1fcsIB1d/3vbkBak2MM0u+vhGhlQwpeimUi7QncM= -github.com/templexxx/xor v0.0.0-20181023030647-4e92f724b73b/go.mod h1:5XA7W9S6mni3h5uvOC75dA3m9CCCaS83lltmc0ukdi4= +github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b h1:fj5tQ8acgNUr6O8LEplsxDhUIe2573iLkJc+PqnzZTI= +github.com/templexxx/xor v0.0.0-20191217153810-f85b25db303b/go.mod h1:5XA7W9S6mni3h5uvOC75dA3m9CCCaS83lltmc0ukdi4= github.com/timewasted/linode v0.0.0-20160829202747-37e84520dcf7/go.mod h1:imsgLplxEC/etjIhdr3dNzV3JeT27LbVu5pYWm0JCBY= -github.com/tjfoc/gmsm v0.0.0-20190417070453-18fd8096dc8a h1:Js43XIYn4yVbKmHVAMMZlhSuNZljbA1hw1B73+ezJhU= -github.com/tjfoc/gmsm v0.0.0-20190417070453-18fd8096dc8a/go.mod h1:XxO4hdhhrzAd+G4CjDqaOkd0hUzmtPR/d3EiBBMn/wc= +github.com/tjfoc/gmsm v1.4.1 h1:aMe1GlZb+0bLjn+cKTPEvvn9oUEBlJitaZiiBwsbgho= +github.com/tjfoc/gmsm v1.4.1/go.mod h1:j4INPkHWMrhJb38G+J6W4Tw0AbuN8Thu3PbdVYhVcTE= github.com/transip/gotransip/v6 v6.0.2/go.mod h1:pQZ36hWWRahCUXkFWlx9Hs711gLd8J4qdgLdRzmtY+g= github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08= github.com/uber-go/atomic v1.3.2/go.mod h1:/Ct5t2lcmbJ4OSe/waGBoaVvVqtO0bmtfVNex1PFV8g= -github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc= -github.com/ugorji/go/codec v1.2.11 h1:BMaWp1Bb6fHwEtbplGBGJ498wD+LKlNSl25MjdZY4dU= -github.com/ugorji/go/codec v1.2.11/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= +github.com/ugorji/go/codec v1.2.12 h1:9LC83zGrHhuUA9l16C9AHXAqEV/2wBQ4nkvumAE65EE= +github.com/ugorji/go/codec v1.2.12/go.mod h1:UNopzCgEMSXjBc6AOMqYvWC1ktqTAfzJZUZgYf6w6lg= github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= github.com/vultr/govultr v0.4.2/go.mod h1:TUuUizMOFc7z+PNMssb6iGjKjQfpw5arIaOLfocVudQ= github.com/wk8/go-ordered-map v1.0.0 h1:BV7z+2PaK8LTSd/mWgY12HyMAo5CEgkHqbkVq2thqr8= github.com/wk8/go-ordered-map v1.0.0/go.mod h1:9ZIbRunKbuvfPKyBP1SIKLcXNlv74YCOZ3t3VTS6gRk= +github.com/wlynxg/anet v0.0.3 h1:PvR53psxFXstc12jelG6f1Lv4MWqE0tI76/hHGjh9rg= +github.com/wlynxg/anet v0.0.3/go.mod h1:eay5PRQr7fIVAMbTbchTnO9gG65Hg/uYGdc7mguHxoA= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= -github.com/xtaci/kcp-go v4.3.1+incompatible h1:JU7DMiCsyj6S+LkR6/+tPQEgdwnihOgYtbUkdtvyUDc= -github.com/xtaci/kcp-go v4.3.1+incompatible/go.mod h1:bN6vIwHQbfHaHtFpEssmWsN45a+AZwO7eyRCmEIbtvE= -github.com/xtaci/smux v1.2.11 h1:QI4M2HgkkpsVU3Bfcmyx10qURBEeHfKi7xDhGEORfu0= -github.com/xtaci/smux v1.2.11/go.mod h1:f+nYm6SpuHMy/SH0zpbvAFHT1QoMcgLOsWcFip5KfPw= -github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +github.com/xtaci/kcp-go v5.4.20+incompatible h1:TN1uey3Raw0sTz0Fg8GkfM0uH3YwzhnZWQ1bABv5xAg= +github.com/xtaci/kcp-go v5.4.20+incompatible/go.mod h1:bN6vIwHQbfHaHtFpEssmWsN45a+AZwO7eyRCmEIbtvE= +github.com/xtaci/lossyconn v0.0.0-20200209145036-adba10fffc37 h1:EWU6Pktpas0n8lLQwDsRyZfmkPeRbdgPtW609es+/9E= +github.com/xtaci/smux v1.5.30 h1:LFxB7WSr0mbQhbdJzfbxnfCKVQKYzcyB+/8mXf2dTdQ= +github.com/xtaci/smux v1.5.30/go.mod h1:OMlQbT5vcgl2gb49mFkYo6SMf+zP3rcjcwQz7ZU7IGY= gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 h1:dizWJqTWjwyD8KGcMOwgrkqu1JIkofYgKkmDeNE7oAs= gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40/go.mod h1:rOnSnoRyxMI3fe/7KIbVcsHRGxe30OONv8dEgo+vCfA= gitlab.com/NebulousLabs/go-upnp v0.0.0-20181011194642-3a71999ed0d3 h1:qXqiXDgeQxspR3reot1pWme00CX1pXbxesdzND+EjbU= @@ -467,26 +448,22 @@ go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/ratelimit v0.0.0-20180316092928-c15da0234277/go.mod h1:2X8KaoNd1J0lZV+PxJk/5+DGbO/tpwLR1m++a7FnB/Y= golang.org/x/arch v0.0.0-20210923205945-b76863e36670/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= -golang.org/x/arch v0.3.0 h1:02VY4/ZcO/gBOH6PUaoiptASxtXU10jazRCP865E97k= -golang.org/x/arch v0.3.0/go.mod h1:5om86z9Hs0C8fWVUuoMHwpExlXzs5Tkyp9hOrfG7pp8= +golang.org/x/arch v0.8.0 h1:3wRIsP3pM4yUptoR96otTUOXI367OS0+c9eeRi9doIc= +golang.org/x/arch v0.8.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= golang.org/x/crypto v0.0.0-20180621125126-a49355c7e3f8/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190418165655-df01cb2cc480/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191202143827-86a70503ff7e/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20191206172530-e9b2fee46413/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= -golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw= -golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= -golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= -golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA= -golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs= +golang.org/x/crypto v0.0.0-20201012173705-84dcc777aaee/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A= +golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -516,15 +493,11 @@ golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= -golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20180524181706-dfa909b99c79/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180611182652-db08ff08e862/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -540,6 +513,7 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190930134127-c5a3c61f89f3/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191126235420-ef20fe5d7933/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -548,18 +522,9 @@ golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200520004742-59133d7f0dd7/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= golang.org/x/net v0.0.0-20200813134508-3edf25e44fcc/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= -golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= -golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= -golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= -golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= -golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= -golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.22.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= -golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs= -golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg= +golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo= +golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -571,10 +536,9 @@ golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= -golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180622082034-63fc586f45fe/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -582,9 +546,7 @@ golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -600,6 +562,7 @@ golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191128015809-6d18c012aee9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -612,47 +575,27 @@ golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200814200057-3d37ad5750ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4= -golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= -golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= -golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= -golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU= -golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= -golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.18.0 h1:FcHjZXDMxI8mM3nwhX9HlKop4C0YQvCVCdwYl2wOtE8= -golang.org/x/term v0.18.0/go.mod h1:ILwASektA3OnRv7amZ1xhE/KTR+u50pbXfZ03+6Nx58= +golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34= +golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.24.0 h1:Mh5cbb+Zk2hqqXNO7S1iTjEphVL+jb8ZWaqh/g+JWkM= +golang.org/x/term v0.24.0/go.mod h1:lOBK/LVxemqiMij05LGJ0tzNr8xlmwBRJ81PX6wVLH8= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= -golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= -golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ= -golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224= +golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190921001708-c4c64cad1fd0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.0.0-20201208040808-7e3f01d25324 h1:Hir2P/De0WpUhtrKGGjvSb2YxUgyZ7EFOSLIcSSpiwE= -golang.org/x/time v0.0.0-20201208040808-7e3f01d25324/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20200630173020-3af7569d3a1e/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U= +golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -675,6 +618,7 @@ golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191203134012-c197fd4bf371/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20191216052735-49a3e744a425/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= @@ -686,14 +630,9 @@ golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapK golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= -golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= -golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= @@ -735,18 +674,19 @@ google.golang.org/grpc v1.19.1/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZi google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -754,8 +694,6 @@ gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogR gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= -gopkg.in/go-playground/assert.v1 v1.2.1/go.mod h1:9RXL0bg/zibRAgZUYszZSwO/z8Y/a8bDuhia5mkpMnE= -gopkg.in/go-playground/validator.v8 v8.18.2/go.mod h1:RX2a/7Ha8BgOhfk7j780h4/u/RRjR0eouCJSH80/M2Y= gopkg.in/h2non/gock.v1 v1.0.15/go.mod h1:sX4zAkdYX1TRGJ2JY156cFspQn4yRWn6p9EMdODlynE= gopkg.in/ini.v1 v1.42.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/ini.v1 v1.51.1/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= @@ -770,10 +708,10 @@ gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bl gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= -gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= @@ -784,6 +722,7 @@ honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWh honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= From 741b0f8a1320cbda2fa1ca510893db17fedde188 Mon Sep 17 00:00:00 2001 From: Pascal Eberlein Date: Sat, 28 Sep 2024 10:41:38 +0200 Subject: [PATCH 28/30] use latest nnet --- go.mod | 4 +--- go.sum | 2 ++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index b070d169b..5c0cb89a5 100644 --- a/go.mod +++ b/go.mod @@ -2,8 +2,6 @@ module github.com/nknorg/nkn/v2 go 1.20 -replace github.com/nknorg/nnet => ../nnet - require ( github.com/emirpasic/gods v1.18.1 github.com/gin-contrib/sessions v1.0.1 @@ -14,7 +12,7 @@ require ( github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef github.com/itchyny/base58-go v0.2.2 github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984 - github.com/nknorg/nnet v0.0.0-00010101000000-000000000000 + github.com/nknorg/nnet v0.0.0-20240928081915-ecfc0d74d3b0 github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283 github.com/patrickmn/go-cache v2.1.0+incompatible github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58 diff --git a/go.sum b/go.sum index 124e024ad..35d0e7632 100644 --- a/go.sum +++ b/go.sum @@ -280,6 +280,8 @@ github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984 h1:VY7EXvgxCK github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984/go.mod h1:H7XeI/XOPpWVmqM+ScT75RLMn7jWnlZDwHRahSxNxo0= github.com/nknorg/go-nat v1.0.1 h1:4dFK0oDyqkIE0it03Y4pMgBQpl1Y0mrYHEp+j/nZ910= github.com/nknorg/go-nat v1.0.1/go.mod h1:dblX1Ac2j08rTUGs5CKCAfjHGN5eDFhbeqt2rccSP3Y= +github.com/nknorg/nnet v0.0.0-20240928081915-ecfc0d74d3b0 h1:GlTEPJWbE59LxAy3quWDP++RrU0wM7oxB+Ry0Wy2lVU= +github.com/nknorg/nnet v0.0.0-20240928081915-ecfc0d74d3b0/go.mod h1:xQBEGtRmEK3LwVNq92IzLqIDbmyILAnsqZO5uYF9Fek= github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283 h1:uS3/DvxCbi0zZau66ggQAgEjyGmql2mj77UQFgumq1I= github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283/go.mod h1:dL4PQJ4670oTO6LqvkjrBQEkD+iMiOYjlKRBBw55Csg= github.com/nrdcg/auroradns v1.0.1/go.mod h1:y4pc0i9QXYlFCWrhWrUSIETnZgrf4KuwjDIWmmXo3JI= From e2b4ca6072717a6356e401903fe6965991ba7a1a Mon Sep 17 00:00:00 2001 From: Yilun Date: Sat, 28 Sep 2024 01:53:51 -0700 Subject: [PATCH 29/30] fix dependency/github workflow compatibility with go 1.20 Signed-off-by: Yilun --- .github/workflows/build-ubuntu.yml | 19 +++++++++---------- go.mod | 4 ++-- go.sum | 8 ++++---- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build-ubuntu.yml b/.github/workflows/build-ubuntu.yml index 35edfda80..8addd3826 100644 --- a/.github/workflows/build-ubuntu.yml +++ b/.github/workflows/build-ubuntu.yml @@ -11,19 +11,18 @@ on: # branches: [ "master" ] jobs: - build-ubuntu: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v3 - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: 1.19 + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: "1.20" - - name: Build - run: make + - name: Build + run: make - - name: Test - run: go test -v ./... \ No newline at end of file + - name: Test + run: go test -v ./... diff --git a/go.mod b/go.mod index 5c0cb89a5..ae6c18246 100644 --- a/go.mod +++ b/go.mod @@ -10,7 +10,7 @@ require ( github.com/gorilla/securecookie v1.1.2 github.com/gorilla/websocket v1.5.3 github.com/howeyc/gopass v0.0.0-20210920133722-c8aef6fb66ef - github.com/itchyny/base58-go v0.2.2 + github.com/itchyny/base58-go v0.2.1 github.com/nknorg/consequential v0.0.0-20191113113929-5fd13b7f5984 github.com/nknorg/nnet v0.0.0-20240928081915-ecfc0d74d3b0 github.com/nknorg/portmapper v0.0.0-20200114081049-1c03cdccc283 @@ -55,7 +55,7 @@ require ( github.com/jpillora/backoff v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/klauspost/cpuid/v2 v2.2.8 // indirect - github.com/klauspost/reedsolomon v1.12.4 // indirect + github.com/klauspost/reedsolomon v1.12.3 // indirect github.com/leodido/go-urn v1.4.0 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/miekg/dns v1.1.27 // indirect diff --git a/go.sum b/go.sum index 35d0e7632..151ae3005 100644 --- a/go.sum +++ b/go.sum @@ -209,8 +209,8 @@ github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1: github.com/iij/doapi v0.0.0-20190504054126-0bbf12d6d7df/go.mod h1:QMZY7/J/KSQEhKWFeDesPjMj+wCHReeknARU3wqlyN4= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= -github.com/itchyny/base58-go v0.2.2 h1:pswMT6rW2nRoELk5Mi8+xGLQPmDnlNnCwbfRCl2p7Mo= -github.com/itchyny/base58-go v0.2.2/go.mod h1:e7aEDHyQXm42jniwyoi+MaUeUdeWp58C5H20rTe52co= +github.com/itchyny/base58-go v0.2.1 h1:wtnhAVdOcW3WuHEASmGHMms4juOB8yEpj/KJxlB57+k= +github.com/itchyny/base58-go v0.2.1/go.mod h1:BNvrKeAtWNSca1GohNbyhfff9/v0IrZjzWCAGeAvZZE= github.com/jackpal/gateway v1.0.4/go.mod h1:lTpwd4ACLXmpyiCTRtfiNyVnUmqT9RivzCDQetPfnjA= github.com/jackpal/gateway v1.0.11 h1:XqCVFIyo2LtQYXjz9nis1WMTvAadJiFP/Zc04xmdEYE= github.com/jackpal/gateway v1.0.11/go.mod h1:NqRwEsSP/DD8d4YXIsHEMNUSYetesFXjmL6QZFrul+M= @@ -236,8 +236,8 @@ github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+o github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= github.com/klauspost/cpuid/v2 v2.2.8 h1:+StwCXwm9PdpiEkPyzBXIy+M9KUb4ODm0Zarf1kS5BM= github.com/klauspost/cpuid/v2 v2.2.8/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= -github.com/klauspost/reedsolomon v1.12.4 h1:5aDr3ZGoJbgu/8+j45KtUJxzYm8k08JGtB9Wx1VQ4OA= -github.com/klauspost/reedsolomon v1.12.4/go.mod h1:d3CzOMOt0JXGIFZm1StgkyF14EYr3xneR2rNWo7NcMU= +github.com/klauspost/reedsolomon v1.12.3 h1:tzUznbfc3OFwJaTebv/QdhnFf2Xvb7gZ24XaHLBPmdc= +github.com/klauspost/reedsolomon v1.12.3/go.mod h1:3K5rXwABAvzGeR01r6pWZieUALXO/Tq7bFKGIb4m4WI= github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= github.com/kolo/xmlrpc v0.0.0-20200310150728-e0350524596b/go.mod h1:o03bZfuBwAXHetKXuInt4S7omeXUu62/A845kiycsSQ= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= From 69ca3e4fb9edb3d0bcf1a4a15d64029968ee76b9 Mon Sep 17 00:00:00 2001 From: hmd123pm Date: Mon, 2 Dec 2024 04:34:50 -0700 Subject: [PATCH 30/30] Create devcontainer.json --- .devcontainer/devcontainer.json | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .devcontainer/devcontainer.json diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 000000000..ad93c14a0 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,5 @@ +{ + "image": "mcr.microsoft.com/devcontainers/universal:2", + "features": { + } +}