From d181f1945877be2b56ba0a6e5ab84dabace373ba Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Thu, 12 Aug 2021 15:51:56 +0800 Subject: [PATCH 1/9] 1 --- packages/core/src/config/index.js | 2 +- packages/mitmproxy/src/options.js | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/core/src/config/index.js b/packages/core/src/config/index.js index be15150..e932fa0 100644 --- a/packages/core/src/config/index.js +++ b/packages/core/src/config/index.js @@ -212,7 +212,7 @@ module.exports = { }, speedTest: { enabled: true, - interval: 60000, + interval: 160000, hostnameList: ['github.com'], dnsProviders: ['usa', 'quad9', 'rubyfish'] } diff --git a/packages/mitmproxy/src/options.js b/packages/mitmproxy/src/options.js index 8721ab5..3a532f2 100644 --- a/packages/mitmproxy/src/options.js +++ b/packages/mitmproxy/src/options.js @@ -13,10 +13,14 @@ module.exports = (config) => { const serverConfig = config const setting = serverConfig.setting - setting.script.dirAbsolutePath = path.join(setting.rootDir, setting.script.defaultDir) + if (!setting.script.dirAbsolutePath) { + setting.script.dirAbsolutePath = path.join(setting.rootDir, setting.script.defaultDir) + } const overwallConfig = serverConfig.plugin.overwall - overwallConfig.pac.pacFileAbsolutePath = path.join(setting.rootDir, overwallConfig.pac.pacFilePath) + if (!overwallConfig.pac.pacFileAbsolutePath) { + overwallConfig.pac.pacFileAbsolutePath = path.join(setting.rootDir, overwallConfig.pac.pacFilePath) + } const overwallMiddleware = createOverwallMiddleware(overwallConfig) const middlewares = [] if (overwallMiddleware) { From e97269f5d6edf71af9b06cd991ccdde5b0b87189 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Thu, 12 Aug 2021 19:00:16 +0800 Subject: [PATCH 2/9] linux first --- .../shell/scripts/set-system-proxy/index.js | 12 +++++++++- packages/core/src/shell/shell.js | 24 ++++++++++++++++--- packages/core/yarn.lock | 8 +++---- packages/gui/package.json | 2 +- packages/gui/yarn.lock | 18 +++++++------- 5 files changed, 46 insertions(+), 18 deletions(-) diff --git a/packages/core/src/shell/scripts/set-system-proxy/index.js b/packages/core/src/shell/scripts/set-system-proxy/index.js index b09b302..c02263b 100644 --- a/packages/core/src/shell/scripts/set-system-proxy/index.js +++ b/packages/core/src/shell/scripts/set-system-proxy/index.js @@ -122,7 +122,17 @@ const executor = { } }, async linux (exec, params) { - throw Error('暂未实现此功能') + await exec('sudo sed -i \'/export https=/d\' ~/.bashrc') + await exec('sudo sed -i \'/export no_proxy=/d\' ~/.bashrc') + if (params != null) { + const { ip, port } = params + const local = 'localhost, 127.0.0.1, ::1' + + const setProxyCmd = `sudo echo 'export https_proxy=https://${ip}:${port}' >> ~/.bashrc` + await exec(setProxyCmd) + await exec(`sudo echo 'export no_proxy="${local}"' >> ~/.bashrc`) + } + await exec('source ~/.bashrc') }, async mac (exec, params) { // exec = _exec diff --git a/packages/core/src/shell/shell.js b/packages/core/src/shell/shell.js index 7303733..3156442 100644 --- a/packages/core/src/shell/shell.js +++ b/packages/core/src/shell/shell.js @@ -21,7 +21,7 @@ class LinuxSystemShell extends SystemShell { cmds = [cmds] } for (const cmd of cmds) { - await childExec(cmd) + await _childExec(cmd, { shell: '/bin/bash' }) } } } @@ -33,7 +33,7 @@ class DarwinSystemShell extends SystemShell { } let ret for (const cmd of cmds) { - ret = await childExec(cmd) + ret = await _childExec(cmd) } return ret } @@ -76,13 +76,31 @@ class WindowsSystemShell extends SystemShell { } } -function childExec (composeCmds) { +function _childExec (composeCmds, options = {}) { return new Promise((resolve, reject) => { + const childProcess = require('child_process') + log.info('shell:', composeCmds) + childProcess.exec(composeCmds, options, function (error, stdout, stderr) { + if (error) { + log.error('cmd 命令执行错误:', composeCmds, stderr) + reject(new Error(stderr)) + } else { + // log.info('cmd 命令完成:', stdout) + resolve(stdout) + } + // log.info('关闭 cmd') + // ps.kill('SIGINT') + }) + }) +} +function childExec (composeCmds) { + return new Promise((resolve, reject) => { var encoding = 'cp936' var binaryEncoding = 'binary' const childProcess = require('child_process') + log.info('shell:', composeCmds) childProcess.exec(composeCmds, { encoding: binaryEncoding }, function (error, stdout, stderr) { if (error) { // console.log('------', decoder.decode(stderr)) diff --git a/packages/core/yarn.lock b/packages/core/yarn.lock index ea6eb7c..5c88eb2 100644 --- a/packages/core/yarn.lock +++ b/packages/core/yarn.lock @@ -93,10 +93,10 @@ lodash "^4.17.19" to-fast-properties "^2.0.0" -"@docmirror/mitmproxy@^1.5.0": - version "1.5.0" - resolved "https://registry.npmjs.org/@docmirror/mitmproxy/-/mitmproxy-1.5.0.tgz#16b9a956542a56f9889cd0c69c08a33d06d77ab8" - integrity sha512-H17TAqKmvzCMSTO6VGTC6kKQskjk1gEJZYsU2ijziZU0XEC96ObG0TWOnsdKh2PhmwDLwxS9cUyb1hpYilLreQ== +"@docmirror/mitmproxy@^1.5.1": + version "1.5.1" + resolved "https://registry.nlark.com/@docmirror/mitmproxy/download/@docmirror/mitmproxy-1.5.1.tgz#357142a41b89266491c3519a7528b9b83dc30c85" + integrity sha1-NXFCpBuJJmSRw1GadSi5uD3DDIU= dependencies: agentkeepalive "^2.1.1" axios "^0.21.1" diff --git a/packages/gui/package.json b/packages/gui/package.json index 131f3a1..bdb379c 100644 --- a/packages/gui/package.json +++ b/packages/gui/package.json @@ -45,7 +45,7 @@ "@vue/cli-service": "~4.5.0", "@vue/eslint-config-standard": "^5.1.2", "babel-eslint": "^10.1.0", - "electron": "10.4.2", + "electron": "^13.1.9", "electron-devtools-installer": "^3.1.0", "electron-icon-builder": "^1.0.2", "eslint": "^6.7.2", diff --git a/packages/gui/yarn.lock b/packages/gui/yarn.lock index 711b89f..67400b4 100644 --- a/packages/gui/yarn.lock +++ b/packages/gui/yarn.lock @@ -1507,10 +1507,10 @@ resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-14.11.8.tgz" integrity sha1-/iAS8jVeTOCLykSus6u7Ic+I0z8= -"@types/node@^12.0.12": - version "12.20.6" - resolved "https://registry.npmjs.org/@types/node/-/node-12.20.6.tgz" - integrity sha512-sRVq8d+ApGslmkE9e3i+D3gFGk7aZHAT+G4cIpIEdLJYPsWiSPwcAnJEjddLQQDqV3Ra2jOclX/Sv6YrvGYiWA== +"@types/node@^14.6.2": + version "14.17.9" + resolved "https://registry.nlark.com/@types/node/download/@types/node-14.17.9.tgz?cache=0&sync_timestamp=1628719497956&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.17.9.tgz#b97c057e6138adb7b720df2bd0264b03c9f504fd" + integrity sha1-uXwFfmE4rbe3IN8r0CZLA8n1BP0= "@types/normalize-package-data@^2.4.0": version "2.4.0" @@ -4651,13 +4651,13 @@ electron-updater@^4.3.5: lodash.isequal "^4.5.0" semver "^7.3.2" -electron@10.4.2: - version "10.4.2" - resolved "https://registry.nlark.com/electron/download/electron-10.4.2.tgz?cache=0&sync_timestamp=1620442447118&other_urls=https%3A%2F%2Fregistry.nlark.com%2Felectron%2Fdownload%2Felectron-10.4.2.tgz#2322a72f1e653e023250be91f3dd8d27662e3805" - integrity sha1-IyKnLx5lPgIyUL6R892NJ2YuOAU= +electron@^13.1.9: + version "13.1.9" + resolved "https://registry.nlark.com/electron/download/electron-13.1.9.tgz#668e2632b81e9fa21edfd32876282d3e2ff7fd76" + integrity sha1-Zo4mMrgen6Ie39ModigtPi/3/XY= dependencies: "@electron/get" "^1.0.1" - "@types/node" "^12.0.12" + "@types/node" "^14.6.2" extract-zip "^1.0.3" elliptic@^6.5.3: From 4a094b03261f3aaea41fb9394acb509b058c5655 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Thu, 12 Aug 2021 19:15:40 +0800 Subject: [PATCH 3/9] electron back --- packages/gui/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/gui/package.json b/packages/gui/package.json index bdb379c..13c7636 100644 --- a/packages/gui/package.json +++ b/packages/gui/package.json @@ -45,7 +45,7 @@ "@vue/cli-service": "~4.5.0", "@vue/eslint-config-standard": "^5.1.2", "babel-eslint": "^10.1.0", - "electron": "^13.1.9", + "electron": "10.4.2", "electron-devtools-installer": "^3.1.0", "electron-icon-builder": "^1.0.2", "eslint": "^6.7.2", @@ -79,4 +79,4 @@ ], "__npminstall_done": false, "gitHead": "3566cd6d33cbe782d91e408d6f174dd826b2790f" -} +} \ No newline at end of file From 4dc04fb092e573d788aadff0d9dbe4f6bbcb745f Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Fri, 13 Aug 2021 11:19:03 +0800 Subject: [PATCH 4/9] linux ubuntu --- .../shell/scripts/set-system-proxy/index.js | 21 ++++++++---- .../mitmproxy/src/lib/proxy/tls/tlsUtils.js | 32 ++++++++++--------- 2 files changed, 32 insertions(+), 21 deletions(-) diff --git a/packages/core/src/shell/scripts/set-system-proxy/index.js b/packages/core/src/shell/scripts/set-system-proxy/index.js index c02263b..d593877 100644 --- a/packages/core/src/shell/scripts/set-system-proxy/index.js +++ b/packages/core/src/shell/scripts/set-system-proxy/index.js @@ -122,17 +122,26 @@ const executor = { } }, async linux (exec, params) { - await exec('sudo sed -i \'/export https=/d\' ~/.bashrc') - await exec('sudo sed -i \'/export no_proxy=/d\' ~/.bashrc') if (params != null) { const { ip, port } = params - const local = 'localhost, 127.0.0.1, ::1' + // const local = 'localhost, 127.0.0.0/8, ::1' - const setProxyCmd = `sudo echo 'export https_proxy=https://${ip}:${port}' >> ~/.bashrc` + const setProxyCmd = [ + 'gsettings set org.gnome.system.proxy mode manual', + `gsettings set org.gnome.system.proxy.https port ${port}`, + `gsettings set org.gnome.system.proxy.https host ${ip}`, + `gsettings set org.gnome.system.proxy.http port ${port}`, + `gsettings set org.gnome.system.proxy.http host ${ip}` + // `gsettings set org.gnome.system.proxy ignore-hosts "${local}"` + ] + + await exec(setProxyCmd) + } else { + const setProxyCmd = [ + 'gsettings set org.gnome.system.proxy mode none' + ] await exec(setProxyCmd) - await exec(`sudo echo 'export no_proxy="${local}"' >> ~/.bashrc`) } - await exec('source ~/.bashrc') }, async mac (exec, params) { // exec = _exec diff --git a/packages/mitmproxy/src/lib/proxy/tls/tlsUtils.js b/packages/mitmproxy/src/lib/proxy/tls/tlsUtils.js index 2d43ff2..d0b42ed 100644 --- a/packages/mitmproxy/src/lib/proxy/tls/tlsUtils.js +++ b/packages/mitmproxy/src/lib/proxy/tls/tlsUtils.js @@ -51,11 +51,13 @@ utils.createCA = function (CN) { name: 'basicConstraints', critical: true, cA: true - }, { + }, + { name: 'keyUsage', critical: true, keyCertSign: true - }, { + }, + { name: 'subjectKeyIdentifier' }]) @@ -111,19 +113,19 @@ utils.createFakeCertificateByDomain = function (caKey, caCert, domain) { critical: true, cA: false }, - { - name: 'keyUsage', - critical: true, - digitalSignature: true, - contentCommitment: true, - keyEncipherment: true, - dataEncipherment: true, - keyAgreement: true, - keyCertSign: true, - cRLSign: true, - encipherOnly: true, - decipherOnly: true - }, + // { + // name: 'keyUsage', + // critical: true, + // digitalSignature: true, + // contentCommitment: true, + // keyEncipherment: true, + // dataEncipherment: true, + // keyAgreement: true, + // keyCertSign: true, + // cRLSign: true, + // encipherOnly: true, + // decipherOnly: true + // }, { name: 'subjectAltName', altNames: [{ From f5a4af9a8742b7680d22b18ce05831987f0eb958 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Fri, 13 Aug 2021 14:58:59 +0800 Subject: [PATCH 5/9] inux ubuntu --- packages/core/src/shell/scripts/setup-ca.js | 4 ++-- packages/core/src/shell/shell.js | 1 + packages/gui/public/setup-linux.png | Bin 0 -> 217518 bytes packages/gui/src/background.js | 19 ++++++++++++++++-- packages/gui/src/view/components/setup-ca.vue | 10 ++++++++- 5 files changed, 29 insertions(+), 5 deletions(-) create mode 100755 packages/gui/public/setup-linux.png diff --git a/packages/core/src/shell/scripts/setup-ca.js b/packages/core/src/shell/scripts/setup-ca.js index b283d6c..4af30f4 100644 --- a/packages/core/src/shell/scripts/setup-ca.js +++ b/packages/core/src/shell/scripts/setup-ca.js @@ -8,9 +8,9 @@ const executor = { return true }, async linux (exec, { certPath }) { - const cmds = ['open "' + certPath + '"'] + const cmds = [`sudo cp ${certPath} /usr/local/share/ca-certificates`, 'sudo update-ca-certificates '] // eslint-disable-next-line no-unused-vars - const ret = await exec(cmds, { type: 'cmd' }) + const ret = await exec(cmds) return true }, async mac (exec, { certPath }) { diff --git a/packages/core/src/shell/shell.js b/packages/core/src/shell/shell.js index 3156442..80699c7 100644 --- a/packages/core/src/shell/shell.js +++ b/packages/core/src/shell/shell.js @@ -138,6 +138,7 @@ function getSystemPlatform () { case 'linux': return 'linux' case 'win32': + return 'windows' case 'win64': return 'windows' case 'unknown os': diff --git a/packages/gui/public/setup-linux.png b/packages/gui/public/setup-linux.png new file mode 100755 index 0000000000000000000000000000000000000000..64d49ed7677ca3eebe1d4af35560d4c51bc111af GIT binary patch literal 217518 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

4eg@l?q3_b#z0uSvZ|LO*UlB0u!M=OK()8zW} zEi$=^3s>ZYbE{_Qw7@vEGn5jztsG{8scL6cJBcAa1tcf#ZRJfJ<-zib-Jja}vA1s& zy{{24H-o?6;r9ccC}gHmj7%5$zQMhJHhvIQ2dWKO{HAl|gZmO5DLkgs@L!};S$d4K zJfp@UzKx~cmc6ONwzs!0V2bDu`y=!DRBFA}*zeN;ky_96R%pdj;9k}fq(xB_!Ogy8 zX{3iaQ>v;Vv8}JTtn`3+Raa<|jvJx*T;)J{O4o&3#oYIk<)$nV@?7Jpa5Idev8VQ( zNyap-BqXxhZ)tp(z=_xQn|-}|IfeNixm>MoZZ`(#q4gND=mXdX+O2xiX((CVSHl7h zk$KNEM&}O-QzGZj zU>@(U(LnGCmiKEosgO;B^X?qv12}Sla${R((rlHq_ys^Arvc7$SRwk(8>ThSeM

    7Z>%XXwk#KFUq zQ-%!MGtc8nGN(OO?kCni%b7(@j34`gkVVwZxO)2pZy!&do;3TS6qco*_~doIWinwB zdEUT=i@tf$5r=775I-^9uRmMg9L-+mH%?vB(|qMVroWLmNGr=C3dg1&U=+2P?2cJ^AkUdAH@rLbtlD_^{1d2D;&6~*inBT|z6 z`F`_mn9G+w79Z5nGzkj{q@cTNM{t;`rQV-DehEQj+Q<}GgSjf4IDl_y8b?0L;t=Tt z7~lXK^nHz};B)g7eR;!iRn@UFjNc^6#WnXK6`Drp>n1dP5d zozw%E^d{?_1W87(HM$>x2@oL|uXWac@_%vITzoG7QXnoNt*2+OBn#?0vr*J$i+v6Z z2-iD_4>NWiXP$V0KJR2lH8nkKK3g((B>_rIwxeI0fKd#cWpjK_b2b3zkX9SD(e6{# z{RBwmqE#Zjc{^(P@^N2hD;k8gv6p7uPl^n37_7trZ91*E^daIfWP?ED*w`%@S9aH` zWXsLAd7bM7f2R?oJMjV>3&W-bKtQSX@OjE)CuGy*VH28WKZVPYE8N(s7{l`UjsPHd z7#87i#v&cOJ`WyO)x?EE(6_A?b`k!*784QK@((>%TDFpqU>uC@LbvX?9i$@Q$9jd@ zs1YOTNdw5UfC*dE=@2IqrffEBlT=jiYKKThJu0AWYfG@>Tubbya3`zz+-KT|bW^;_ zwlj6WQFp(xZfhHPYmhQHM9In;Dbkb!;OqMeBb)D1%W6z|^j+Lsb4~S0+K!hR%){p@ zG)Or))w-H~8T3@FXh#)DCDlwi%>#T*{w^<**;Y(z_tz)HC-YHMoD;j9ScRj5DT60l z_Ue#k?{}~K{DLFPwH`t21R}GrF#h+?SmP^#d7qB1f$t)0Rr?E9ru&&I&+`hi$z1)R zX><*62nz*?l{Zo6L?57Aprs)xnNqIPO#(oDxnWa`9^u}_f{9Tw+5F$DbCR8 zbF8@}BlW>r0}Z!9G1++}yY}|(uh$!3z{d8RhP43A>((Fb*nOcSX}-?RgaTc%my^Xh zY^OGGm55J6$DcPt18~q%0Qj)^m<0(jPzUc4_@k%7nOa&xTi*V-x9nlNXT#N8LGz{= zmM0eHswJ$g{U)I%y7Pgwr?;=q9}-&~xgi)L0umlef3sKQFAMbU6cnP>cBgx?AccyF zIbiv@C(4WKwoK9v8@Sp5fs{*7q5ML0gu};0t|nO~t7~f~J;qa|M}hfeWD~pixoFMu zd19OXq3;9i>mI>vXRR4YMQEKD7u5=c>}W`*cXs%E9>t=zVJqf}W@4{iiv>wXr-Exhil{TlXMFa|rdNh1iyguD38`ADsy@+tPm1fZN9+_x1biXuUeA!JM}|$S&Ok?G z)_g9zIy*)RI`5N+!TdOH^6N9c%i%tJsONd-GvB#_jU0ouzvS_c-%pT0xz4x8WDB2> ziyq(Y`R;64g-T}XToDgvokRP4i0Ld3D1D$>F4b>!(lsQKsDMECXKUf0y@~y@*Rcp% z2uMiXKhYq7)lzKNMF}1*30?AXy||w_2pluMfXxWsy5sSQ>RAm4hHQFB65djZBZ!bS zJy~Z4!gFHf5@I*uWGUuvbWlrHkV;jwTe2akkD@%vg68)yde%p6eooIDLbML1*-$R~ zE_@~(8$6na-+p$n@8aRiL($s)*4&(+Xq{nxRKQW76A1S9Rtchg?L}7_!GYMUpX82c zY75vA^!S7Yk<*DnNEp?2)*MGb&&S7ivO`?6*+t~lA4P$tN{LO)%p50mS}OR+ujBQI z87>2y5mhjKPP=0Azlak2JYRQ>VG!W9%Ckb>Ur~ml2n~py{UEPh-U>z&0k|4pLW=^0 zVD9Aed56YnOXVtEZ&lZLxrfK)M$W~}jbIvE1x=Plt0C@M8V718UnebJY)C?EY!o0> zS5CxH-W}&Y@BY#kw3&E`9+TZA^TkEy;Q0=q?Oz=q9^#(F)))>| zW;EZgd2f#|Q(Ux@X~%wW@F0@$PKis7@sXk@_$@=`$5eE}8X~Hc(@Dag^GlA$dNUIrkG#3OF$O};yR!OE+xJq- zT<}1fNPNg^UdPgO?|)6X3!%H@q`Vo|J?$MGsxf)jx4$R|`yMWvu8t*w;}}e@Fr2Dy zPZs^NmRszh*IbSDcllcV7bQLv)b`kJ(+!DW-*!*Sz6NXQvt-dcBZP#8a-P-z$%o0o z1w}&@J%YhtH-i~Qz2kAVOcsFFfSK&3d~!ciQ&7rooaFm=h(Iv_khIW?^q45%&VNI z`{RiM57^aG!^O6S`_u@vc?d-=5JK&2GdU z&gUwYm@qQmMrf*f)HO9PBm5#F5XPNJ^rAJDfQ-V>_QU}J=x$M<6-MFn`V~s2rN3?T zd|8=NI<=qZ@Dad9?oUwB^zHA5@XFNGB=UOrI5FSpN%1BjLpoBMi}uZqC)P*gH2*O# zFOMT2Q*!TMLAiAS!>%Jie|IE76HRP1hQ>0@ix~)z)uYl)9KHdN*hN!kTF#WftWy1) zPa|C<6u1H(k4mUYI6OFDbv$ob3EeKdgb$X7$H%r#v*@#Q&jFd6bk-X)a0FbO)X8SmtpCmE!eo{G zKZbdA@W(YeeVuW=_Gz&%=&yo{eS?ZPKlZm)QMjYMP_V8F)YokHGR>J#?`8LeJkE8wm{n+@rGuu)hbjjEBUf+CjmIy zikiC|?Kw`Kq}$?%;^3*dxS;%@kT&o?+wI2~6x#12o$zqkYnP)rGv#%~00H?z`i?77ovYJ`xy3 zPhSTf8ny|yEa=)>lb3%qFeqp%Hke3A(*vLHb%)f+XR1{qB=@du^q3|6DNPiO+{A$| zd>{fqWA9(pf7NItVWLJ82^4A98WGQB;zD!Me3YUSr_E_6B_SuryS{Ss=-L)8MZr|OV&$Oz^stqc_FI;Xd*Y9XuhkEPK))CN6kDa!u6=O zu25ha56|mOom-blGJ_Y-VC1LpEbmO;FH%X$VJ;4r-}GmWt=kciJFHohw%sFn!iOY7V4M1 zwh^)DEceGJ+dKeGC9xSQhx6w1@%3UjFM3lggyRd0--XJiv&L(O`qcV!%gp(=($MEm z5cjgk$hy}*is?IDRs9nRTp!*jzW!TFs3mPKv>&sv- z@TSAUz_>cFWQ}~=>rCc)OC9WLvRK6LdcTuu;LP&eD~U@y`*TY&mT_&~uwP6Y%M?M~ zl-)$k&5aGfe*L<#h%BC-tx6hp;yo|6qZOK0=y`bjGW3vFyorMQ6c)Abt+W;i6u&D5 z(09FHVQbA0_~C(%{!pv$%A|f z-cThGCkz1zrN0+}%dXgUSDs`8lO&qf1ml?|>tjQaH^>n!HG4xol+gYT4oH2-mlB1>_m)RY2V4iiLW zt@557C>ZVOp*a!9A!4-m_-J!<{tgVpavs>9u^+~5ILamndrPVECKH%7`STE-#?%({ z%e;KJp%mtxy*H<8fp(=o=McgX-f^}Us5F0b+!z=Io2;pUT`#ZS>ihD=#VUe`Cn9yB zX#C@?#y^#}0Jm>7UVWe+W8z3{04`LOO{CWGjJ?)P8%*0E(LL<-))TUunSc_faeV?}^c}JH*XH$+HzX2^?6i zGhJ(TMM*3i3{|S`7={}C0XR<(Tel(GCEvs2W8G*G`CNrgGyuASE}Ji}r2VAP<%OQg zCSf=gHiDhTW%yE_H>$W(g1DWM7`F5GaZQ=UX^T;>DqX1*+teo0k{&L}%#(%;AJV zsHxGC6lH**f?!Xf2Bavn&>)2kcpRcch@Bi>p9z7vBhV@lZTO*XL^A0QI&1GhW7j1` z=jIgw28JJ~5y{EPWoLQk-QKoY2?Ggifa$dNkKi?Mj zVzOEl5pq1p$BAUdxKX|m;aE+r3iXC^4B4{tv=L8*Qle-+PdD3=oPX-8-l(q~@!)@M z?==Rdr@yeYfbu%1`J78UqF3a|zI`FDeae+n1GPl-^%lQn)s@E&55o^4$7_{ug=WFY zReCEbNN5*Vp$hQ9c~_Q}`T@gOHwvOUBtAWbnV`UOBO`bk1=5gsZFTjs4?bV5k!WAhdnh zshhZbDyy=ALJ!P;etfJw&@I6!NE8hxmH#odRnWXW-ln!fa`36w?*;6&SAq9eg%Am9 zC~6$J^bftj095MjyhCr;`)`txg2FDsyIhn3FN2?|hE`Abxvt%a+%7(ji|4Y*r%@T3 z&Yxv8Kb6v;V&RRD06c)fJlsm1E<&IeYuMx8WW=DqUHJ7u?+@7nAOnz5(bxCbZB?n# zE_kofKT%bg!%CR8T(2Pzi^AXjRzN}M9YG)%-zK~pLn?-}uX|yf<%)N@)bP6ODflet zN7OP{_$?#sgSYn?k+XN()1k#EdFlOTY@Qe@21@@Z1zCSxvgmG(m2d3RPlyiC9{q;X zU1RVYS&6Pufq_Qnn>;bFO$-;GzbJ=Xt z&)?&|{1rI_&0@=0$YO|H;$rp#mAkAH7gO~xzqK|EyRf`zYqJFMVQcPleF#G>|Cf)4 z@A!YS=)Z+@ev+{_aA*`v+#X!PFCvw?=cuH?+Z%8G3w74?VQ}Fs9@Jkran;loVc_9+ zT@TVg;RE1F(H$7{9XEmvx8HwE$I0?3NjqdmWWPRfog#5JTC5h*JL3XY>)3dQ0Q;0- zOp#n1SZ$U+I@^OaMV8#K=u}iC3~7-Itwx{D+OO{g~{iMR=baPd}aD&ntHsITsr`Th!;YU`GP!Gp*4|5#AcbQdN@N8 z8y8R^{fS+PPDk5nXr;ye@;V{~hs%(`uGaoyPs4h9Gnh~xTWz*cX<~=Nk!X@c5lbAY z;`^&+(MwsW72lGTnOSM4BVi)cDp&yrjnUe zL=*Fa-IbFsRFt=c4VOE!abhRajPXHRr3`|kfg3H{utK9ZNdsh?e@&>-eByG8nL=H) z9{ZE~E#P}hfbZxHPD{=2V+bqA)3 zrY&bx9KPWM&oynP%a(2Z%=4}AgN927k&L6f%@kVl%A%+LUH%!SY@U94Il4i zM#S8F!P;EzfQiWqwX|}-$t6J55g%+*bWIsfQK)@!f z)2Ptk*l4!;6EfcC11Mcw(U460p=%$dfGD_Bj&S<*es$DOT{*P!3xa4Jt za%@>2wq;fD_8N&d<>Ar^zB_$<3<fPkh*)W z3OXXYcS7)Li4$2snyr1+whr9XP(u}@i&q4w_XSZLhPUC{AL6+P+92&B+2wzQZ`)&J5Nu4!Rt*$mg3CG>VxsO##WJJL}xv8SrFvqJ%tU)rqA z8Y>)KPjE}X0EUOus||k!ZO7SltIHG9 zppN>n6dSJ`6_^%YV`D%ZCaH8|dK@m*`jq2Z4vi<~(mkZFd)%tPyIuPJ*qFN{KJv0a z;CIC1ZzlR|DyL~~)0DAdzXMbD3sbaC+4HUcoKjY^--N^dGfju&Z?dVXBc~P1yeyg5 zhAxs1f5=VSSiaBbXpA@Ts-G!_PqqFM*)O&kr#j27N~it?88v>?-{Q`=rf=X&m?!So;GsR85FuM|hcPHC*y6pvt6$ykau~(=YhZ zPh?(gYtYv+MV$hbRuM2FN$YrcU-uj5jCVL=QqDKnaLZtRD0x!| zP)<(x6zejNkVop54oYFFC#fO6HmUA8T~AN=k$7^J zmC_sdR5jJ4W;?ZhADc0+vP*o5Ln&4EJ|oCl$AA+LiGa~Fk&sHy4*gtmo;v?0hr1Rr4 z4a=es$Chl_{YT{(o8n|rA+^=~{W26vdQ&6%->bP>5I|pPxH+sxsVE zNq$gCk`s;_c{+718SgE0->u`IPoj=IW&8+k@3HOeY}a>lOg>rn_!@qKyJd4rL3BB5 zWAX6tM#%MxGOxAl;#HrtCXNXO)lf7=y03ejPdubvcb@oD zFBmWZDvbrJ@~j0IVX8-Hvy{&9Q!Ogm`eblLSC)Pl*|l4c|rn(d7Jd7kty5v&Q-jCEW#blt3$;h7|%QbX+R= z^Y$tGATD?fagSN}K{I4VTP+L9B^mJ~#??d<7~^%DXU4XGPZ!&>C2zkUm%L@f*gf6n zvxH9@gfGwAJR@~g>U)QhH)2tOi9x`WYK`lIqWm57NCs_CMWlkb3tI)k1e z%#~!i%lkepkFx?9yw-rS9Zdr1xcCI?GDk6!q^ z;f0!3$^PnXW3IKiKalI_qI_7}Ks&!u#HyAYN!MJHFp60WM0#+;tsyOmfTTwo`Ccpi z)B;v-cJc*@`oGsCz%8W7>;2qPK0A4gQiY&8acSfD_%|v$qG`P9{hPX!~}j%GA_i8F*N*3Dz-&5a1Iq1r+5 zzH4zoIbIETZuhE^<<|1pVJ9rHl&@;}eFl*lo5`n;B<#7WM^q=Yt$ZW zR(Z)Gz_}hTpE8^2z=+0%do`w+Y>eLd9Zb(E&ZEnAF7`q2H=Rsd;z0z#)7P;-cSmN_ z+m=UmGs!IECs?PRH-P*0CM~w@Kl-bGg96l}qR%7iJ~t$Fd?g_^SVFUkF0QV21K)(2 zr}Ns3gG+Ps^DzpPX}(Lf%b76ess(&})84OAwyP|Doq9Uxa(PW7-NZ?jk9RM+D04oUGGIxrJsfCv}P};g|iSDnXmNsfd8 zHud?bkQ>{mWOCq}l>x`OdT3N*0Q8pA9Fo(vH4!V z!qYgbGkUo&gwta{cr(lfg>ye{nf%~1R{bLEW|OjZkooaob`ZPjB^jyCi)D%Zw)f)9 z>tOCrT3tplqT<}cNB||o6OLLt@zh}(#g?4hjxIKOg4DQX?8L{D`>6jz)n7)%)jVGV zDDLj=p5X2lGz5p>5}e@f?hb)K@Ik^L!6CT2ySux)-jnD5{_eVWt@%82rcZZuRqfh) zBL~O#cEnNZuq><(EGoaP(fPbue%!PF*tI-ey-?+HzM#xfqt{wfpi>MY)`3q!-@_BQ zbzQFHZA`uo9(qSJ=et=aJ&W5aV_d=;)m1+Ebg#MgkJq}0g_k^z z`!{!9i(C_A`8?&wcuuOEc(jZohp4gb77e3roBs^3xKsx-E{yj)yNu?Ft#EvVx!1$% z8&-{^BIOv0Pv_$#9@Iu_@w1?5F0yP#frD;tslK_UT<9OjhoLjWqa2v;(bmnlJ^i?@ z6Vf`!(>mG_=35@aN<>+uT`N-u;rqYs4+DA=yAR4D^3K(6Kn$w z1;c_L7zW)pc}OC*D7;GZ15|M=$Sb28YDBB03c=s*LsxeG?uq8rEl=0*iIb-O)N1^4 zX1Ym#(3f6IB3p6IHtf_}qz$arK+;zXVms;KzU+g=FsQMb1l_V~?1(#=KL^MHsI51* z!Y)#L<{w!*n%|?$@25fP#AHu=qqtOtp5@jnsg8+c2QxF#S-N(-n5a%-s`zGVjO9au zul%sy@ryTZi`oz;b6xnNA4jAD;@9B5@DGBdkMl5b44Q@0$(0N;qZy;G7j3y4K2vbb zMq0GX$%sc{qZ<Q z_JL@Eb|7OIRio&8fhblP-SKiho68d9_g~oLBO_DKlAQ@GewN%UBx6o0MgQM0bi~<~ z4ObfvDlXThnxO?s0+m^w>)a^{7~2y2xg)PswxUoWhbMIHKv- z!jeYf2n&nm!%m;NpD*Ul6iDMf+rIYMe6z%?4EDW=D>;<=$YP1mEs~L?NMjoT-N(TY z<*(KC8iw26v#FWK*^CZ1xg3}UHCTK@;yD~Y{mjz8W3i=(lvE_5(_9KuyjYLqc=&K#tFUiw zu%f+_uG2mrl_fL8=4XoW)1Fyc(?0+5_>O7bPn8Eej+%H$oF^XF zV+?5uaM|H9^bXl4q0Z-sr2a>uP9~Fj$;O2xESE`KT#;E=z-&_P!}Gi=z!UxN*4%6< z)Z{FZ4QTW-qF8%mL^j)9vg#gVBzY+^dtC6H2?MIg#@aYijk;u1={z|FFkwYZyo7ip z^bb6Ihcu690_1W+jDWezY*~5Me)1>h9UiZ}FoYF8t_bKpIheeaG9TZ@^?97?VT-*S z*asUo9**nGk28d*L{3Oq7xz34*=q7`{CBk98?0n8%6L+G>5!<`ohotk)4eJGPN0FM zS+1!!M{)_YdO%$7U<^*teZ22rH(r3zUh%_RO0@XX<=G@<#QZ#BstRKEQ&X8)`Bevg z`}jt`iyl=_OpAyc`=Kqhg@#K+B=ksei`{mc>ccZZrKJ6GGbaao{Z|YDuG^6KH9V&I z4;xM*^wG|>zC|UuJtdB!1$%rAC(3^ixc4XA+M{AM4!xN~Kh7;nzyA6X^y^K}D?3Yu zyxdCrL^q+Q&UDdXp*pF ztmCU#fpL-9TJ1$R>o1AnMeTBu>pX1@CN6C0{a%}?DV`4(sWy1cD^N6%3OCQF6{LSo z44JlD3Npy!KOL}$7SyX*ZM$DzHz*`MMJ>q$KHmGL4fO}FxGNcw2eL4?e0MSU|1b1` z1*QOPMt<+U?AfZtbp=zwR$-Xi#BD$P~-J*<9aOPb=(I$bYc)LTw^6< zj8FdcSUf5TbKbLq`$d(^K!s9eu=D6>5&`j(w6cxrvBM)rEt=B09dgXqt{KL0lGc#UIllVx5}4`TE6K7SXK_CFadw1pOY*!Vjes?}6S z(6)vYXZ~|ryVZXspXlwlHObnx$hE0AH(XS{^L1Ndvh)x7NAp;jp=d7cXBtE$z%RdG`Ei`%Vd-Hg>uQE!!V5aCAy!nA}6hBC{E^GeKp6*VqdFa*8Fa4RO3a`SrXg9iNK#XGM|9zj3nv-A@e= zV4%x5G`z%n*#!+03|WWT1B32O5@Wbue@}G9_6l{aPJR?TYyF5q?e$Q_SBvjFr2vt5)1(=^&url|B@>_JR}r!B7}4`pRkExgJ|Og);-?V0A7v zlvSt4R9P#6s%UOwtc_r9G+N|fQtOo66I@Xl1Dp3NvNps&8*Zk* zjztlZrV{0Nt3SWjmyJ3jlp(6Y?`B%PV4r^z0LD6pyB(~^-*xbRuOx_Vfe8ZQLNNZy zh4++jN;#@|%PsJeDr%HovcI}ySGL#s;svdob`A#3FG^IWech9m~WMYzSh5U~k$TcU@OO&XduDnyC1{pxnRx&K^dLtF(BiM zJ?^M&jT4&5YIx?Ar$$der_hk=TnGbV!2nttW3)8tDZos$ z)<*rMaz#7jP#mf9-e_pGHEyzf8(iB1iOx0N#M2$@)4e;QhIvgJ_;U#spt$jWr_UOH z>_<8W>`)-|i&iv1gHV?oNWlte5(D63Fta*t)Z)l`y`_GWL#sf&O&ABDzdo8_{BWkb zam)%z$}chW59leO`=SL-0_pt2A%V~4N|&c9z(S-|VG<_2!L8cchVJH`?_g+D4RTOy zbm(DpOhvHhess#7u=H2In{P%(R?*SK6QlKaHkaggfUwbt7@ zVLx&IU!>S154@!Dx;fh+<_$uD~=4GjV$LlYWygQtGK%P95*%%;FrR+K>1&}PoGV1$7nH)9#-#yl4 z7MMtbT)fmuNa;@BoOW+ zko0L5=WOAuc1*`MbSlp?V;*ttmu`FSjXX!8wV!z#&CeWTZ#AQ8z7+0XGuT=%(_(&v@>_clVjAa>=f{NE7w@eLia z)$8V&oC?7qN*Ezcptnf1T{rM~3pE<%W{`|ywE8Dmg!z{50M}N~DMX6VY*T{Z?#v9N zxmb(1P!0QV(5{@p3(rD^GQlfCqt36v_>Rqjz`@CR2~1ynyWV52T(sfKOb!859s(0K zFi@IJ84P@HU2EH(Gn(vv{~zFnnMu#>%_CS?vMbjJ(kp&GPpxzo2b=sOA|>R10+@6( zsw$dzuQAckb`6+EDPP5fJrKeg+o7ZJx|Nk7MmGZjPX?FkA#;3CxG5nI=1>pj@hvA+ zLzqAY*hEBOMcH0hbUzRU-OhTT(SRNnR^ z@QFLB?{wQfc+j-`nC`#6jB>xj0Dq(^{f=B?BCvn?L@|M%KVp12MMne_gOCs);7|hQ ziqN@+ik_~O7?AfQ7aOsoR>ve#s{KWiyTbz+)pDg|B&m5da@trxQ8DU@gT+{5_P}Jl z<8I3K%^{M_Vm0pl%d?0=PI=CFdKe%g$j9*gKT>rF9Ae7ZY%=|Bm~$bWLcn4Ack4zo zVCn=F7#x!D?bpwfp-Pc^{}C4h(-#*i;KS!|!+`P`Pg1)~sXxw9?jy1WJet^~VRylx zm>9)On=k103>Dyj_jaE!y*m%ZwmJAYs*73}dOhOq?Cnr~5G1ChrESz8T10@2LmU&KU4#41^#e*HCi5;c|1 z9qhL1+R^sfkr&GLQE$M^|Dy;Y%7px|Q5rXP+AHw}IYgbIzooEuQwURZ8yS7dJ3noa zJlGi!eZANtt}uCf34PdTC*KM`Z-m9JsPFl=gQKcutG4u6}ag z03O?=3uhYn(9p0=5IlJgd3}@J?%)6{z`zQkc;R%&o|!4`xY~VrP|w5JmlwW9LCF%F zH`s;|f5`b4^I2RJKR#byLBXN#Ik+$j5)Z93b{x&Joh+dBPGeUdy5H~aPDDi;KiuLQ zosk$w+b&`e@F)OBWh{537_bX7y51XoxNkoXU$hD9-V}3FWJ$g8Jl?n3&JZa(Hveyr zUZ6{wd2?kk?X1M^0Qcjo6mTP0$~J`3IH@M)56$B*0ooJOq8+pOGN2cB^r31qHdAv6 zkmt~FJhFzTXU9)wfC?}5+2{ZRV8i1a=oCpp&4xP1FP;SEZcwav9ghN1TU=Aq(-*Vz z>$#padjz~^PAk0Bra;IoW2Fss zi2NE`tmT~3{&DWv>}zeS z7zG9b%xh>wJsgYds$L~Jq}w&@yl4_1+WD7e^jPsk1A;8E30_cin!j$!!Y+HYAv50R zc1-Y72w&m!;0g2(Pg0AkRNUTPyhJ7%43E&U+v1?0T3QaQqvT>`U7Y~oW=c{%2+wl^ zGFw^|kSkWUjxMNL%Fbp+qD=G=LEcA*&6SAFUnBve;?&UP4O>s@V8y6rv0)>B_3MMg zq3`12{23EtRw9G-a5yRS5x=T7tw5NUSkbh&OkxC7;J=3-lar7nv>RND(T06yv3^au zfGPV`kK_q}>D!5jFt5-iyxwZ&^~Igm$Gm1*UK*KsM3jm}$i1{?3>DywF)4t$28S+h z-sTA7&ZpOUFq6~;odKE)k zw8~5$D9@(Nn3nx`JB8U2x4MP&!`g(oV zy4$bMLfvQLgTA%c4Nk)^FIji}6X;e8eN5y0PKWPPf4&fVcjva^bL~PyOY?2Nd=*el zZ#Owi>P-`HnW zkP<&GPb9DKGkS~k(r$(>rTJ8yBJ;*1vcKTe{RRg965GQ&mVumJptL?w)jAOPvVUJXh6 z;-2LC`KhU(mKGrrQ9menbh4m|9CEp zq@?AC4XNZ;P!tu7+(@2cfLUS3yrHDoaw#?)6p(|`f|xoCb-&`M;{$sLh!hQW5yo-j z+aq)>`uXUPBd)IB*mq&sH`Y0BILt-l{T zJRGo>ztsPA1$d6#;c*<~f8nHPdn*@DS{_dOb9~|!76K!pV|O{vsc2`PvxfMzKf(O0uOq7%vBPkPi`I>McU8h1t z-BsncJx{=Ehmw~EmkVxqNN-0E+(@6~KaID3e?W!F`<9FLpOmDs4wN#@>{nt6ZXWTx z7mIY|W@L@Jx&-;pfw6{{Gva1Jcq+Z2B^?ly>WKfX7RHT9pV|>w%{!g`w;dVW8cs&l zqtBD-;rR{0lmqCrEzEbBe!@I)0Ra%T=?Z$X6Nl=1_hh1__lX$!zRQZSgIKkSRH z!|+REf_h{T$!t3?jnMmdvZ zyh`<6PMvYT>OcIDSMhLCq5aVO6&mXu#b8483CRGMA~a%RWR`ON{NYTyiUgZpK}>!K z!{_Bthm2h+5BrZ~?_{ymL(rph)x}R(OB?c;h>X? z1T8fYjR4v1e6+Q#ZD{Ye&W=EKy^v}hn}r$+^d+4yTAuS+Hj;oOFG(jQNbCBoKO!zp zLPC$kG^;==t@563@LLeB-o6J4Zj%5W-WXbxECnSbpeL^Ug-%w`T|(Fgm?Wdtfpq;V zySpg;%^5Pjq@+9ykp0yG0~!n<#Y_Z+bd*Yy1nLl`|63iX3ijkj&T+P7=J-YL^;7Z8 ztC=57DT^+tsyi#e;190GLfrB8GxPX*>mC}JfK~XeL~Qq=#7qD}ZC#z!V{#T9t4@3f z6H_`FHw6|m^QiKoX!A6rRO?-_Fw=RPOrZepw_UcdvG~RZ44~tpbtc4 z>h4h0r>!lnMC%PPqd_c&8D*n)5f)7qkPD0Yq?c*L#5#@oqK(*>*!uV@Cj$r4&U10& z=gt_yj$|vbGF@=qc1#G9V>Ql=ctMqkw>QFn`H3F8sEG(VE_=?%N$usx+0`c{&m*}} z5C?rKB~xUR>O8z@*t(Djmkpq8yS*)Cy>6CUf)x~O`!K&O=9mA~q zmy(k+<1vf7CCOiDHC1shtBc&gBT+_`n~RH*k&^7q&u?C@xbT%Y?T3(Kmq!d4Hz+qxyGX5LQ;u}N^Gs{deiG>BFY*E+q3CzgYF{N8q+urI;dAcU` z*qVTHCUKM%%5-F{Z8-j2eUO$`%#G(_Qbu_jJ6ACSErt{og{bUS4_9IqRZ8%ARJrM) z>=*AP73lwxxN?zoKoO`#O$;(p#XtOKn|ra;n6R>bG5)XEzq%2s^QfAoD5YP*Mt@^( z&6tVx?)v)J#fo2!K&LXoWI)Zn=&AzCe?nh*0i=3 zmCs}tSh~<&h)Dcs@}ZGy1&NBXMyWC3r>Qe}jnMI}^3!pKcX#F&KdjqyMa4$;4dJ>| z@vzJto6V|AnYGzt0)$1Qm4&K^c%^{QqfN{4tNq}hAjQ8k1%;quOzlN}n-%tjHfQ?m z*R|;et0(ocXD8?&DCor0)cEGFE1?q;MsNHLpGHYKW21DzTU*$Lue5X!gM$ENC%F2` zZb17NP`xEYMNuS1oE9t1>VxyBj%d`Yw$+DBmu*&&Qcjgfc~H`%C1xE|GwbGYvfj&C z7v|;bP^PC;JslN+*m1zEj?cQjk>tWwd98DvLa4DxrJMdG!K-yMuMgC)@KiD~=g!Nt zi7v3|z)mk$6mBr1&wf}j#7vQCmL_WHK%esrt=!#^=SIYwCq=*XLIkUa!BGxBVR<>Srr)5T>+JlK?|7|o*t~gWqL6?HD=FX< zQFNQdQlLmb1MHa7(ovXNF6dC$1fV}%Z#x}Qve^x((-#8^^-?#FE1}UI9P>f`(ct;f z%TLjPO{TJ~EiQ}I#beXoaBgp^GPG4#AyCXA7$op9K{a(#cm0jdT(`aFyT31L#xM$- zEK9c48g^1ya9j^X=qF}Dy`x?M{Sk>-V&j>dR*_jI_6K^C&ikCMC`2Zn*BwG1b=yzq zrEU^^6W(v+XD9+8b>#NqcKM_wG}I1Pk`ISN#^ARtsTOZAE*fTlPxn?ar)wc_fZv_@ z5?G_Myiuz&y1Ke5Z{~E_J&)8sp%OrRFr(ky1;kND`5OF1W0DIezN+Xu3XbpAlr<*wWk@zA31TTy{|YsxYzP)qwDWyl}2fbrVG1I5(z*1{tzyidg~c~NxDqu zlbWzM>AhN3QPBi~{2a@q+70bLJ>j{+XiOk!Z`U$3H1xv_pIUFBRY**-;n8&jT!sLD zX=yTC*M8DrfFwSqhElh+r(Y8yqz`w0CfGqzBqa3G0ZlMSVtja(B5U!y*k*!nu8=b% zRWIy~?qE_-P#c5qgWuQyB~C9;^s4eo;kH6)OE9xZoy$`WA=p7ds<6NM*0F~X83p#9 zdP8t$U1pKMovjt{BSAn9Cc=eHIYn2`_3DD5pb%SDM9_GJN+CpK{zIqrhiAp{`OgbG z`5kfY;lge?=g-EkKJie29m5ke1=mtWS~yf?kP}r_3{E!^E1vV;Vvy>)C(U${(nu|3 zZ12d*{O`YW#T!K0zi)+W5!eOJ7B`VnMjA5AmIsxbMW=C?nu{|1!R3288^6fEmme?r zOx4*tS6_)w9`7iLbAXT9P4CZYv_I%9BLi;2)bbhs_VGHk%HLKH@AcS`hTI3+zl13G zS4|Q1`N0P*=TByF*)A$*ppB=kst>ZO*Az$cw`g4UF~p)|=%QB$oT1m3OQjWgZRKcw zBkg4D);OBwdXfCjdmDxLhC61?PrsE)s z*h&?Nra%7`KMAc@xlHl`6|f@bql$}FvGDx!_Tutde0wwg@=W)=@8>tfHZMe^YgDKt zX)0!RlDn2yzRBDU2guNkY^|O zUC%@Iq%Z*~PWl8s;Ae(8ci6x2TgvFP3{a$}HXATnb7W;?Jaq8|k750qITXS5ijSWc zc!(tv4kF)iG4p>e*H7bf6vAUki`P{9pcjSA`nLX|a^Yhdw{uuTIu^nhEGe;@l;ERs zcw51zFW__@RC#T}owAQ$cyzI$u}P%g-bZSl2OrgcDTq09Dk~!}aw0D@{%}WAS5vFA zWOBQbR?e*_B|WBEtyhx3hrKxwRFsYA1}9QGP`qNG?U3>N)=>n=^u`{niX*`U5hFKM z+y9lQTHMIRLXU#3M?*$o3}!c8gBpo59m5i=XvjocAVo3_Mt||iWVkEs?u?(yZ_0<< zZKQV)QVwMQh{xESmpg;AX(|p)QjI18i789M4?q}9J6Q}erG=2RsG3tHY1gK~u{rd@ zCMt_2u6!-q5IPpIL9_HQB6yrSfVd z>ju~C>U+b}uqyacGM5x$zho|sg?6Q5C}lI-a6T_ws=X|;D*w3-We{?_1hQPJ1HlX- zD=6SLwq1;hiTQXMg#8RvTJl|4Ump-pk1!YxEQC(APK_ZHgrg2a-!`Fyox^UF5)~p6 zb={hV`Ecrpl{clT#>T*(7^~l(Uq;o{?Rc;6PGvTL0mI%uZ#1!;7=9+>tt$w%_zFI- ztdI%;dSG}0(n7F61!p}$@rP&jV6tO{UpYEDFq1^q`%a9BdG<(c(kp8}0YC?Op(c3L zhmU#?jpkX7<{(m#YU0VDT}KFvjAH7`F-o4uO58xfT~o+N(U?RyAvk+5I%S%fObkb- zlZe2^L!@`k{D!|VXzvdlKSJJg<)Y7k>sVduk2K%syY1k0(!S?0qk@$dB2iC2%w%Z$?MG1?nHow6cB|{l9diE& z$Jyn}r+7mtIKg%~H{_eQ#F5P>_O*vj954=Uhx1n&JJDfj|B#0x_On3It!Tkt+tTB5 z>W0#x!!7vl-tW!}c8R%1VMdR^H5ldDJ?$bwQ0?sZl#!lrW0UUN&&86P-FLi}hv*m6 zDw+%23vd~W0rh)cGwSo*^ZnO^Ri0BU)OK5@3S@X8O|Rq|VziBT zOqpoEYC93?Su8M>#GL&}78FK+i*2W-uGtbG}s?npY5!|}K74x2BWnqc3; z-jtV1?I)18l85{sw)eWPe3)Q`9QE$RDPA(EagseJeG_*2|g&Hebv_+NK7DWq4&#b0m}m< z*EJ!qRBytZV%4ft47p)o1yc8PgdEaSa zVsb7HZ4aeR*G8w6z88&CcyGTy#yur#UC*I*4pi0UcAO_H>JW zxt)a#uUi#PY~3JmCCF>RCiWn=>VtHF(1l4E*&ckI1A0BajPV#J^~U!L$&QC!tv%Cc zi{XIF&yM|{{&+aqo%TQQwW4YM84BGH*mF8oP|+{mPs`Gz2Ci13op5Ox8EPI8GV(I* zZt~+Z-RtKOyz?Va zb~fVSqs81i^?Z}oZXKJ};gO?%V`G_OycS=lr&SX@!)m=Jt08IM2v)P}4+Ih2g^1?t zF;r!Wj05r^3{S_U;H9J+UlRFlHHBVwoC+2cDSi8k7N$^O=;OO~3Y9iR`{KLOzZ&-U zCE?BBkavT+1{+-0P{%w^IKo>p_kr7Spvdlw~sJ4yG@qyuN!^MUjl3Q9Uc`;quDuB6(f@^ncJ!8Eh%xlKK9WGt z0h)&!S{kINkJHK&FRN`Kac0z`J0)E zx#9imhO0Qb0R5kmGy3mKKV#Tg)Qc@bO15PvNoB){NMUt0$a$L0F#*0JRxeuo+~ zX%lqolTnJ4iB>|q8_*3350z0=S!MVzVv|FP)?riCDc6>=6;RkpdddPTy_fm;KnSS| zuk!~kngDg!NDHiq zL`(uM{kig~y$fhnC%mjqP+4^qMY1$DXYS;;*Uaop^*xQF%tfA{CgKw<0M*}ye@z&> z=d1bCwp{cnju<<8ZMY2?DQe>RDcf1NH)}P&J?Q*pX%q8AgL!tWZ%?9?Jf>Q+|GWiN zQJC~Pw^b&dK+69^R1b2hAZ|QMVS_0A>9>HRBuq@~SOR~R z^W^-3_6l4jzvgh6rG(ra<;emkq|#VsSg{qca>8_6JrM5?EsO?o#Ttk*F@Eg#PSSt7 zuO*kakC&jpxbYU4FUnK&p_UOdL#9)LtC;}d?MV&|gt$ClFdXVp1(taGGHrbXm7u6P zVyZVuI2(!1*vg6Nk<8R?rYoliA-q&0Q3||!!XB;2xW29lwQq5d$*YyeXT|q9#bf#m!;0FC^ z!r1pmTn;pZTD?$RG`QIovo8KN*D8YDJ^&VuA75sex)1s@B~@@IOVB^%%Ah~K^0^_;pwmN$M| zX%j4Kl#iKPD~Ac4-B*;0s;sWP`}f$tA|p~_4hSzU=3KS)9pZ!uZQ=-#QDNI zl|yh3-Xg4bi%ho6U{)sa>#oFz_-F`@WuqFNyxEgz$VuabWF4_&sdfec{{4qbekFBZ zA{TWH3585NF=h87nK|UlWzj)kyr-GTw8?&>pPhxADJ<|_BA?U-=RL>9CRl$5O>L_@ z2b>NHttx$ygOrYeIhY&wO_4{?n1|s2`}q1gUVoX!ASDg0oS2v%Z%xmdj;1~)WMr%S z4-71aESZL*wW2)pzLFCXVvT%cIMLhW=+-d|t=>XPOXHNlANIB>6}MuDg4R^Sw*GFt zQ9F2n94+mTfP8l+tv=^+F@xJ`&*stziQrJ1Us#W(nT0wUds^9iTx=N`gqC)!w6X1f z*4L7w*!?Q%1yyLjc(IUgva#%k-l-t*a=ZurhuP*V}GLtPse;xY{lAxuvFbR%ZW>I2nT)1`P_SFeqCaYhK0 zN^Wd7Bz{U78-Yht&ahQ@H^_vgvyplp#$r0$FBIt7I>a7i-lZl$(9lX0T9!mPfgeK? zt`wpA<0OYh!%W>X<(`iZnXrV*r^`h?$Hqb+Y8)OWP*Fd&&3e?M5Tc+EL&gvxJ~ZoI zBY}=eHeC2UV`08&=~$=k>*(lsnaCEY91fYF$A7l6+F$82wU&D7>}FtL5eKZ1ek){$ zh^y}_01jY@kuNVk50B3^+&{_}8(^V2cg3yj#`es))UzZM8_^~)oXg_D`o|!@^eQu$Lf2OADfmd|?kfBQ|B%x4YAKVMdW?ZFeDEC-9 z+=)sD7Yu9GEbn17mm&G)Rw7zME99ERxEg<^_NO=k68d5`47KIX*-%0p zqYFwmp>dmHrV!d;E82Czr3@j~bZq#H%1>CLs~z^YG^dV6NmXh9yBFtDI+Kd3a+rJu zx@kDBxT7sw1}Yo3I;bqD>GrU$R%9@ocTt5>vdDcNy7rf`oo(xO>PhqAMYgH94TtQHNb&?_Crj`FbQ|+o87z&XZ6%}x&ObC(;*r5SShKZ4K$sRMv zX1xnZ;CeE#7(*B^xy)J*Y?uPFdp8e0_VWq}Y3v@1%A;jUB9AD51(JlU0|t8M_{dOK zFnXD^jt*1XlQs3*?VPSwiw8T~)#Z0CYhaHq4!}L6DSaDm_lt*?`MG^r)E2zR;uJ+> zRQ=Go?%|jEDG2#44sV8=Q^wJO=-YHy$E+6)?BXKW)~WL=heVW3cDDk1YND)|03 zI53m8@%v5^486e7RpslC(*}z@c^aw3NrOgI!#|>daN&@UBEqO0HSoCgChvXz?+?CU z4#ck~b^C9kFWcd2$`6b77a6grm5nQyI)C;QRdk^Ob1THZAxTM*THIO6$|7Vx^zo)4 z3Lxq7*h_!;f*QX=DC#GK$E+VUY0}5$JQMk=#=_+I_ZOk05+#abBO~X{C4bV;UT(f!>Cl^twGE$5mc+g9IEj%c*8w7K3f(TG{Trc=P*gbW?UI3 zf!tI{BQ`kdj`g^`Jv`=R2?rGfM|mK-N^?)hV?{9UAj)$j4$h>IvOGc)E~_!Y;mZFFwA z8y5k_LYyj=)cgnG+#ZjXe#sujpi^pxZr!r&yfA|UVSWOilZahLS>Bx(Pn@~#rpZn4 z2q~EJ(3|62p2^)xPBE*H1kDZYQmH2B z5ifFro1KuXQwEhC4d3u*`(8xaR?0^xplRvuk7uATZ@q$mq zy^y7AV_(c3llIAA-AY+iEfmBvmx6o?cZ;So#z|k~uFIgAV^J+loh>~SxVrRqE$>w( z(!3D_c?*pvO2RKrluRm(odu9|XhLXWyUS>i+1U$FbPWyTN6?^MY~Ii!BBYbc2@ebD z_9XSRng0?a0`@Tg@(-XnC?p6yy;qh@$;o1)!_ZF7l>2)Sp7fM;>9w`(*+8F?0&>{W z1zAH=R{NK7Jb7@B;=|EKrvI_YJuMk+p6rea_=Z)+n0m2cU0Vm*KqAJwv_?s zs2Nn^^m6*qXr(L*Bq9WS#*kzWeNHsBINzr0Ssfcz5rWrYIXW3rdJ4M;IN_Y_v}1aa z&5cGj_&z;xZEmc;Lsy(m8IMhi_T{UkZdQd%rg_g(+ALpi*OL#3X#=_|uA;t|JSW+L z0xVIE9_o;|=J=DUP~!eUFiaV%aW>}P)ss`HDJTMp&Q#P>dd-82>u~XE2;V)nQGK>E z)_bVqh5Kycy?{|w%i9z$(#Ua1C#8Cxn)nCNwMeDjMSXg8K4!d!IK4>0y`H?+3-|${ zSy{?EK0^r#%45?sreWo|4KXKGq$J7v?T}bsw>U3TJ3n~;?~MIHfDPkS(cX20x`hlU z({=rJ)?XfDcSUNPyUD}gZj2v11eB;Uj(O_*tDJHU#{ZX%WnF$^pBzlc%Tf)4s4*93 zWC(D%qKPl*8q|~Z^u$+urUqi`pMJ$$Az!vs+jigPpI7~Ou3AKFX{~sX7*$p2d$b`X z$7J}=cDL2#pD|T~RnV_wPDgTS=zr=6A;ScD>XnoTC?9jCoh!%yEtEjHZFtu0SqbBNw!)c;0uzUfzreg?` z8V?zE-KfOmJmAyKZrXVd5ZiuJePoDXW;#ME?|pB(rK~qk2DRx+9I_54R2kut`8p8x zjVkqQOmbGW*bp0d+({Mu9ZVObm!raxr)W^TjMy9<9ksN!KDy##rZM^_f<4>*0*g(j z_(@J>Qv3GM3)Py=xTf-P3Np0sGwI!dqq*RqwEx3_22c1A2FVUGbvu~@o%HPP45ibS zu-5B=t!&9+47XrBXr$!Wy1ZHKX$-5>RCwp7MCK54?~bnYx2=UhzNThEX;D%fXVR;C z|H$+eVT8MTW1dWyUaQc?QJ5daq?)0pUoNEpTS&SXH1Wqd;Q@Do++*ZU%U78H4x6}A z0>h4jCB4Maj!f3uLXfnZQ;}s!rVaBeE4Ae3=lmc1ktqAvB?Gd#EM&=KvJx8NkTXB% zDQ#DWs7nfVOu>$h9T%7_2Dl5pgU)j_lL|l%jmvl!9^oVgwD-Qiy!`H(rJTK)Mo=frQhb zYFM*fWlj!C+{`I!1>6*|l8RObpacq5hK(A@!`P){On^fV60l@r`vxgOo|;hI?=r1roHsRFuJRQg zbkZkhrlQcocUVr4@85nw&vn)hfB$4_#;#~{89t+l`XgG^YyoLZqUC+$bpgzkSK^#N z=Un}<+2H@f)Hj7^x;0V8wr!__j&0jX$F^m>t0Y?z z<{~-q5cS_fLzBQN2$4I!y%jJ7Q5g{`Q{l+&_)xT=i7cb}=5NeqW#RV#{`P<~n{ zA|kSTJ3=s6n(G@1kJ}?;Zcatu`D`%RWdZS}DISX#F&fn@gLA^yT1%_|+EQK|N5xjX9Dqll^9RqkOLGw|aV(4YnM;vQK zbxRMt7zzM#nooY|2jr=Avj+g~kTr?D3#vHyA3~?zSd=#HJkGYm5q-rh&`p z+JH8WG8F+{a#7UERXP+DAVR&eCU`ISCF{`FmlJI&WjzmYnC!Zfncgd~io|^s0CHlW zZ#|R!_6j>Ur}+HX+B=pyJu7eda<}1Sp#l=Hn@Dt0GE%OCS~!gxEfBcuvCwZqFO}`J z5ygB|KC!*VAUyXYG$)%9rPI?_8BpEsqLc9ON2=&|t12BEcLPFxl$DaoZ z%c+#k4X2&6gK1b;1=l+)^6p@aRM_L8@Ic)Vzk3Tn&U3#e zVXgHLK~mPNf0e&0m(`Sunwqk)W0c5e4k#OoArOXky?eL(EaL*i^?x{8z0)(igi;Iif1cCp2NuV#nnvGm3Dx0bND^sW38F@nFutB}%jFtF2vuPA~05I@2 z?&<@~ALuH~=dN1He-pXwB0#T0pQz5b{^z5*Cd9+3BGCcZVIqoaFPf6_!dZs0I^Ot} zPF@Cc=}z|Pq$#sp*61PSS@#>l4XvB=_p{OZ19KZIVZNm-7`dz82CjlIFz3IC|Ggup zCko4 zYd~BxbaC~F77@&inkqRx`KK&}dIh;8o0i`;_KwB}O`$Wt25M;Z=k?0_nJh>{e`w)n z9I4>76;&g@gzW~FayKs>PwjIfrSxv@#Sp3G+tY)^YKX-=X{{YyFhfjdL-h@VHX|d0 z(d|*DOZm8Y@8A9WD|u9DnF z?CjtvSs7!Oq4WNC@ALxY0RG{R?C9*dT}R1kv8t+NxgXm`afocvjjB>X z@$+1IJXnQO2wX0yP-IOIwN{G&r!QW|2*JWU7=wvdDe8Hu-oUS6|6Tpl91n>3fshkC zM-2_CD@|YAc|=07dw;6S^-jb_(`kXrJ}m347F19YQiiK;*na{W(!KDj5GO>#SJ_vz zh>%q43D2!Ine;gO-irgO!(1Bj{L3->ynbj!jJ1lQV-d$icB z43}SSc&^)vanxR36m;EznUE!EWL)unb=Wj)9EBI zu;cO^qv*8j92pwk)P~fcxfUw-lQ+v9`O(#sMfocJMo_GrYr8?nzLP~!=G&^pX=e>X6s=w2_#=lebr1ElSTgzrEoTDc-j zM}D8;orLHvYC|dI)$pt?E*cHyz!{pFfZRWh+IrIN{SO@nz8o1Pd402-?n9i`KZ=w9 zfjq&VKfX22U@&{l)Li4Ze9<;Aq`#QXpY7^jq@~lTAGJurmQ65q+L*SIS^r3zT9w&P z@yZ1etPNK_#5-F&_V<;Er-hZrsr6E1ZcR7MPhkxbLFueKH)T0F*xbN}gQaJD==mrg)?M zduAlLLP9JClte&@S|UQ;T|Yb6jl(Hu6oZwFi_}i2N%r4E117*d_Jl^i9`xeh-=BqP z(A%rZW*?>Bu7l@ifgULNIZ=NfiP_kNUF>{?c37Yul1sO_|7s=QyDTrw`#fe>$nhh% zd+J5BxY?!OfB=UuSU()QtOh?=jerAd)RKD0Wd38CH9BeNv=cKo7L1gC_wTdpg7-MX zICkrq@Sd{Zr>>F;J zrJSVF&a8M1t1f1##A^MTH5EOzARu9&p{d-}=O0h*4~l0pW<)_n-Svv4ecC24Q+8sO zsiqhjMlklxLXIrB3+$?I#8g(&Cz&l4A5+*F-P6Cm}-u z9ASI*R7#_RczN~RSapdN%1jRHckZxQtLQIsK)XoP#s>cn|HmrIs8$pPI=azpo-x+u zuLuikAJH2?H%}cIWg-qQz~@mr%>;T+I7|qK(H|E?$+AMtn1}Dv*)4_ElUjeQ6v9nqf9X#1@*;e$#AX%%=d$JN9^hOAl|OCdV=jPPf+3O z$uIx?TwTHU%d1CkXhvQQ7>7cD@xVyNZO}{Wt5zLNe&0Fk0 z&4?LORK+qt;iuGr+OCbFXU=+pKRmFnO%_oHyIAP$_5d?jg3Ep05O{TsmP!_ zAA@ElCJy#zs-rLsA1~9P?u&BoQ6Rbzu+x96`VryF`~1Q6wtfKzH#avIu=v5LMRQY4 zNhqx213DlioaU6=N7{b}3)Aj?nBUe0mRq~yU)u8k|BMxrf%S`ky+Loau1SSJQB_+r zvLmB|{yH_d7~o`JH61(=!g}o&4tdp!iM)qwZfAE=`!>_M-QP|7)9CsWAbBI#pDdeW z)S`2Lcwl$f;iW~!K^eeLNJ}%{o|58IuQv)1nB_O1{C3p26B3fWd$G2OmY!xm<@j_| znse@`H#G&0KzLk$wiJCHi-tM~oAt+KZFBTOx>|4ML|_Zw4JZgwc&$;qQb!avJBE5Z zaw=xtrd9Cc5S1g>2ji|lH2%5+*6dtO66?D+mLAV6o?GFqpWo{OdA0mW>ioVT83lR& zEZsPuf&Vvt=D{AOD&>KioHjMx+#!x9kV4f|3WIogBbhvC580|@L3eO;^EJY{v~EYP zMxfp%zkyUBm9VI&2G%0}%HZw4R-T>S(e=vqf#)?d@Yz29)$aie;DM4g;Ysj^`}H3&GdYP6JkYuJaOuEflvJ!42K! zEXqf;PWV72xWYpDm8pVJhOGt@1-Gl-eiv~?WNgHBy2cmxZY9$d4=Q1)WBjT-{}P~4S8*Z zGDHvoz>1mwBqO&s{h;`}2PEJyFru(?Yjna!N1?nAZpD!a2`_Bliwr-r*08=?V|~7_ ztfb8}pc{$B33+b{xNBt=R8A}+S2R^cmyR^Iv=Cn>V|+g%JRJdVzP!ZCQF53FZ1?^c z2sG@mF*M})ypHQV*+)&yUnTruy``@A1)1~qYX;zG4B@q!_wTe zzef0R@*_bd=M9YT4^Bi(jRJy_+-RxW?VwowGtfjj)e%|d zr%SVdy!~F|AlD6O;1mM(SOEr_)+nUm2rPt{x6WRV(w-p6!L@ z`<)dpyd|a5aeuTbX+S+3r4mnNLZ*{cbTk@Acp>RT6+Yo^ift|ppCf}Zph(e{+MEW4 z&$Js3{+lIl#@jO_3>98l({X(cL6@bZ2v|_}z01g>q0_UYj*!am-a!>X63j}mK}`#a z+aczy+yH3uih`6(4f;&Ydygj4-}ME^v}>5bdu&|6L5&K&`@E`nKkt?D&`@z%0%6*9 zQCG}zNQ!W~-!R4!@D49rA(Rjbxr=aETAklKl+bmxprSkOber)%mJ$MNV}r*QW7j*l za&XTh0t=w1!UjV(lSMDEk)864J7E?9rK( zXkwJU&Dx2mrcNuh2Wf-Iek;HK2_6OA*L4JeF^laF!zm;@NRG$k3eBm{FTKeXlo?Fl z6jAX|O3SRAznad$R&W5f_fUOtgh`(1b|LkD&ta=*wF4Xh;78Tq5B}M(a zw>wTP@WQfXAlXIR=;L(fb$)es_R73t{nOIoYVgkIu{stKc0gB>hdaO$)8o5)wLnL3 zzA%KK8-hs&%-3`}Z&Im{63pJ1@(W|SX1)6yNRAkXp$LtXG%cgG1`WV$osq?b>fOgj z)Qu9*A3bx)oPp|_gZa7O3H&){)vpDfyq+TUQ0_EajWGyi>ia9GCn8V@t6$9Z`ZgOTMyE1 znMn=pJn(C;pt@+KD$%&iFjo9}VOw6028-dy0H-Eyo5Kajl{o{!?J?zea%_is(02EO z-&~T;)=Kv(vNm*5Qc{XPRAYW~yBa)Hc-?I1eFfGw8aW&S%wd6ufFwl(Ri5~YN(qPL zeeZ)7Hh$Q+%H*&RkcO7t4xB+E5*{fk2?hW^dv9Sv!9Wi;Q70v&r-#%V4FmYjU(|SV zm;hcBO@*aC%c-J<_PAbV9zv+%oFY$kJ@4G`u&@0_8rL!Z-DIyoDe18M9KT5gFF5(<0oVQ0m(2f=kzeeF05H!aKZ(0 zf|6F|iZUf1o6{M8k8ThN*BTp(z_G?L=tmgauI0FeS z_{L@f>GAbKp+=FH9`G=H@*6lMF)<b6@EX(P5v3eFh6I5QB9ef7)zW%fUp}uT}XB=ky@y zqL)I5h~7~Z^1dPHk4$g1c?>%PC@dE0KiA^C7JmL79UUDCmOMa~Y!+J$JGF6$gb8D3 zV?C&h$*i+^lN%cOWjIIoCm|jwZlC}~qG9O5pt;p8ucIWkbnfN#jf96K`o&DmIc+L! zR4&K2$9Hsm>vl-2__Flfgkx-I7r@0_dBDEC*2vIqL3gD*gW+6E*( z*Y0d^XeqvNcZ{#{EjPQDBrqsn0UlQBqUn*aP|_aamG7*TB%}Hs@${|3w1BxOYSI~x zR{g?|>Z7KtgqU?F&u6~*^?yUdVxjt@t(V!<0*aN=S z^}>lGtL@~9dv0|x*yW;E=&IbCjC^Qt%=eJ|S1|y(4T!5HBoP{He-#@TC2iNHr=*b0@{gXh?z%tey>pFK1ceZovGu#t<3DMoz0!`=!erR}wGGIfVTuy7>$>B~MUYZJe)&`|yHLrEU4OF+AUYhf?$gO-+dB+BoVSt#vx z8?`A{sbxB}md#Ny&R!{>)AjAl>|*y|kOE(I->CG-VPT4ScOpyFKmec~nh-4>NFyTw zhY<33P%Z0p6*Qp~*qZT$@VGPXiJe~^<-X=DujvCtG;ankGYy!6Fqy)kvRZMa&YRA! zbVVcYG=kL5WOMO}&BiTC!;+Ba0k$}nVd!4KMU70ew6G9VQ9+BdWYZ=US17OLC*4nA zWOX26bh}CydJgmr7^)pwfBwa#$5j&IGk207RepPWyE24Pv?ClfHk1i9_nu$s$*K<1 zsFgC6=`q3xc&5J3in0&f!ZN{i6xpY(JgA|xm-KBWf@VbNJp1Edmw#}ZULS4do1 z^tTehVGFLlfzgYpVU|Qxaa)i7obG90cN;9A22~IGECL3|a|#dva%r?3&pYU;NH5=a@ z521X?yZEU~0hMc9-!c5wj32`6{8{}%xyIHp4d*ww=ZD&E4uSp@p$A0jiUDPg1zL&u zbWNiIdc&_k%M=9|Dkpzq$Jk(-xzYr4gwl0?xf9k1$3osvMy-{(O}LZ~`Wnqt2Ao=Z zU+}<%o5IwoPD@`tz4+`Y(&EJdA=&r>77dgl`X?-BSf#9FGzkF74u>aA^VgqH4()g@ zD^ko%wKShq%fQ4O1dlxuhgDtHQ{1Ps--7PwwNc7owT;GZfN?gM4)qSDgnzW5e zWDToD`fP51d1)z_2_N1csiRY4gY)FD$n1<5FV+qAjD_4B99V9(ZK!}O@%g0pGe*l! zCmQ_EaZYTsrInSqqQiH;--RQwMvUCg+_+xZq-7BGCxF7uFS}=F8g6iS*!2Ci)vu3v z=M4d3Sj5ePJ16jTz#Ra$ri#it)zXtoF{Y3yfDig*jk)S+9ilHc^7Dxrp z4<*YEnUwY=@uY%;(FYgyFUkh+-Z^~ z3=`NbQ6Hj4Jh2>;9atK8`O~KHe764Zd{a1cb4rSMBeb)9$|Vjy+}P+C@B0j8tJ8oL zGd1om<=!-fqoWAMOB-VYaf&!Fqs1Hj)H zj=_#OEi?Ds*KIII4n>d@M99>axG$(&JcQ%GbA3P1vukuQ4h{)5_}u)V!%W_LXz{iSG;ZXBMSTtlR)VJk~!1=&>CD z3dVy^RkvK(lJMV#RPZtQ?%Rx`I!-I%b$F;%-ND%+F*#3b{?+M+5(Ogz&se$kA-07%8wxrIQ$CMy!P{J38FTZ*DAp5NXBO8TOnV8cCICp zI|#B@=h*p%C#0A~AN+wmj>ep=IVUjG2svJ88-jqS-^~*TWD1Iq{Z8F}Bb>V8f1!`S z3urDv&vQeMi@=nBpu`mz-JQ0scbTy6$w~UaWEo_o&(G8zBQEhoBGDe2jU0e~F6R%_ z5{c*navp6cr9eK>T#VB2={Zq$CK4O~pAzboP|5i|L>)yNjZ7v%R-Y-|ois5okEpij z^~>+E2edBsT-ow*J5DFOKN86|m=dkmo`UL&o~{7yqh`m`ygR%n+#u>8 zD9od2iX|Eb^}0TP2ql*V29xGA3_4#kD2a&dQ;dL!MSnaxI_h&fK`80q%j***g)N#R zDTxRm6Q{%r04}_EfF%(?*~d z9E=vKHV*n_-LKGJe)a4(yquWgD8ZQoGImNb*w~;E+_Z#%{yp(1H85ZW zSYgCQWbsCP0(o-|B)2KdkBb#~&mx3{l0 zS)g9^yxGbra0=w8l8#?iuIjTc?cHyqnnPuWp_lu5FTGl|U^OfTHhLlCFWN92%Oiwz zCVhj7PUu?>pVZM(!1@9r(Ab5XYGYKs?6B}uOmaan>DCR;KnnnJ!|xP*)#D(+?^JX$ z<&RzTBz3t}nzUciN!ixXgS^*ILu0ANa5Vh~09h7yjo$V!oMh=-#Rqe&FyhQ}fj&SO71;;Ng5J z)mVkQVJGoS|E!|#ll?3DV8XD@TMCG!Pyo=Uz@2CR#Lpb;2}=$}a>q8-9y@*CYarF@ zJ{5Bj;3wCJH5O-JPPk4akLE2AhI&%vv70wU}a@pyJ+nwHiR$b6~rO z-?KV^g~q9l4HLTiY(38_yy*a*j2j9Gpf3E*&wA%+6q@m?q;BS6c8o1Yqa;o`(ZzmV zvMyt)Ytp}Ptcqa1sX@I~V~SDBX7b8O@Ng5?K{}3ofcJq%n3zgf zW=r`abHt^L1&w4JccepAHsgS!iEQi=ulezM$zJ~MzR|(%TZLZ3PT^%&)la8wjgLoV zyB{Ihtr6J^RIYwsJqD1H($a&I>CDJzXk<_{zyZ=gewrKWc`9mm)?TAiA%N84@I+aS zE+xL;w<8qwUA&=@|Nb>1=eOvv%Y@Wq7MBW~26i<{aw2sqFtZ0Dg!H!qRdV)PN=iDeu@Z{}hxS#&Tki8(DjfT2L@qVxQV+UG`@LRKzAanK zt!?^0CV0}-w@|;grHL+g@W1+_lJwrX8 z+hDP_S0@BM#E@mqX=lX@j8i!OU}1E}nd3UWH(85}9rs34XUi+zfao>@Do6{!IHV{f z|6-hOc_XGK$0N{$uapm+cg6_&ng2AKSJMM(I+oy?Jt|?!-?CEAbW~=2 z6)1WT>K{%e68hZVw=TP~u)GkNac7vk)SSOk64dEORbXhe8-<~gf}U4bf{J0jdwCT% zJ4z+;%pHV96;%)aplVWPX)SCPho0DvN}QyGbW!?iWtSlgoEH;t!#RB4IgY2ZCvv+Z zj$9~-7=0BwI`ZmHLU@YelR!hd8{<>J?;k6S(M;AC&cqam6aJ_z2}ceb2L*YI=AaQE zqzgSLDH9`qXLT(lBVs(xYk#%>?-};7hQM~;55u%1Q5tNxf1dESlf&Fi*6!rc3bw(6 zLw*+xo;{w*oSU2bF7U^KWtS+%aaANYcJJhb-9L>4X-^1j3DAyt-ns61qerA8ON?ZC zc?fw-P-`|6^Ag43dwUZU8Tmjt)+KGkgpl*A8rIbq^9oA~_uUnHF<}B?YeW{4B$r~r zWbh?Gi^;}shcj+M)MwICaKB^h+3bdew+~%5486n-`O#W6vc*o;uhj!W zpn{eIg1Ziju$x2&sc1dlFFC=62~M{K^O~%&>T+qgV!u)-YPhrJc~6y$ zJPT1C)c$~2 zGAM5$Z1d@WH+H3eViG)75a2ezwAthOy+Ehxw2YyDPJVkN!Ia&-(=zV?O02>TX8)bs zbtZNSyznFls={a_)?hk|bJI!@Nd*Lih6BJA0bg7e8XMoojU`lvruHO6!9F^6Jws1) zOC~jrN+E@g;+#1ddnWR6oUB7pQlnsAtOjYb zfPKlIhIr8h@2)Qj<6SLlZuYT%_U-#y{6o?0%RX5wRXL`zo=))N(N185TT)W$T&##18wbH!>Sugv`Jca^PwSmGLtVbUg zoGC@xdS4To_hyVV4KM91*(wA-vTwR^Ww@Jrk)~*P>!EaSPy6=c)%YT9F zthpUTmd_z;H~fkO(45~$oqCqOQ7REGY#L|F3`Qgl* zhGyeEm2!flUKdCVN*w*hb);Q>^f^MGSZ&|(RsL!-dzMy60@%%2<(!~<7;McLTx}W3 zc&+sa^e76Wh8^219<8t(FhBR!6OvAqs4~{?lWCJfdkZ$F0HJKsdpz0&9D^RH1-kz=m>gV+j1LXl>toNF&nq1m6l5G5tGKsF{$s5x!-`#hjuhz={0Z&+0B@<^t=}@0H>tK`W*vBW!L3Jxy>r zY_weH>TPF}<`#wzqdkW+kTKiXHGG0lFgGD{#s{9NMw7A*NP?=0iokAeZqKi;Fpg4y zA+JK$Nb~U|h~@i+RFH@RuIFe)HS}^4V~4~?=bmTiTs%eL@rE;K9^%N+k!&&CO79PKX-hIHb?F9*mqR2TW6ceZ)HrETv4(yj2f8EbMsa~zi@y{gSG12O>hye_=AGDVG_`P z`cpHT89F8tcDO+C#eqHR>9Ch~FKNsoAPZ@0uT67vH!(sj|WyfwG|%yQG3 z(&9Rc+Ne%Q9>W!4HU}<8`BHk4;w6 ztwB)=Llm|&-<^3fK~}od8606E$pHcB)76L{<+glv_P0T)lm|pFkQ3o}WsrYYDj10m z2?@zfwVhAYmn^Ywknok*0hUMsTbC6-#$6HXeWo9|B%Niwe8c&i} zo_5@oGFH6ixW-d-!KyxUOI}qOO!u~8IIL^P zFat34rtwVA)EseaRQfESSnM?5qlADvs8%Ar-tX2|UPa1dkTQs#Nr^?jRGA%|CS@e1--_iD~u z+`_fZ{qErHMB<_1^BIvbG5C)^(2&x~cH`8A2RVgkm{G^~2K9rA&WTx-;LAUQlUvy- zi;89yh$up%G8)4G9G}2=6r?uB|My!mb}Fxs@R%(8WYHyfxF|Y!KZ?TWQgA#Z=6(N& z?0wDdq|c^V(}_gB)F>0x5Xf`MXAeR-EfZiTPwn^zcbDCd*ER>WPnd87FA@HDnR)fK zv{kYDRPSa#C}I|8zs`M18_nmHlg*}Dq^cK|Wtk#5BYXE!WF?g+&9MIY*n?`l1yPH? zM#wpjJIk8ae1XF7p~tUr>HG)+Kfw$Gb`oRWnFNFyXbcuJzvv7$YwZtoMwHOriJ^$919P-) zQeNuXOCMxX$@Jj;_)L6@A1q&4xIkWiD19X*Nm7Z?=eB96CWOMld zBzswuq2xYR0HngoE^J{AG(KU#?Fu)ZFRZODHE&K76CA$}&90*8bftQF1U|Mys3ZXu zp8=CD^k_PXWSs2Z2lXGE0vzx?kjLpb#daVqk6-ZU7sZhgcnoi2PKjPkQwL6h1O06sgXFw`biLW7Uu6M|P28e{Vq^W9m`ssk zW<-dYfW{q8Qst}EX2C2V8aC>|CE=KJs^ZELlY@n{iXH+ z2DO>q6ICsnoAfR)SToHzEN;X(Te&LJqb>!}OfkglX82~n3_jw(aei=GOa?)zI!a?F z%+105_)~N+L`v7|G#UHYj3}+EN0He%mMnT|v7R5Wss17|@^T{KrEra7ASXB28a>mX zJtMIsg=KglrqH24ZbRqI3g6UDK~WjMTHtRuT%joM#uWz6Z=&yoqmw8HO23W#rocxi zN+o)V2FEdD2P>WybZmp|rO?FG6QL-{TTy4X9YY&4iWGVQ`%ca{*Pr|K^CzE>6sHf4 zlqXkwf}m|1DP<8JfzrL)-F@)kL7}HaaZyo#v=O!J?Job1 z3&3g6B>aY#Cu3k?VR3qOb?k>amY9?@7-Nd^(>1&S6G0UXhgoS^M5o9BLRtYmet4|kb^2)mnMz- zO~NHcYqk1P9!&6n9wO-J;Q>M%040?bV}kg&)6c~>gw`j?ovlt|>t_jJ9EHqFHZ3wO zi$MocT08vVWE&Ei%(S)GWj$o#2RH@zYoGDA zb}yQrPrro;)J*9aXC~^VIEe_Nu4MX|#Iaq!b?}$#p6hnIv6${)#DQO2?lgLZ#2P5R z$JaT7Qq;~091*MDI$0(q;BWBSGcEHB!0AdOdQKV1W6U**5Gdb!!$Qf3+>G>e<4Y-{ z&aOh4?DRMVqs268R@2D&N~Wyw7OnotLrOn7D1^xf3j@8qF z*Iv+7S$z}m;ZQ3=3uw4jbf4S#d~5|?iDD@Q%;6k^|7vUF_{2`hc`5-K2OVHr-WccT#TI2ni-B3}3NSlFeAkBSSri#`{ZoTY z*)^FfoHC*(gt`@Z!XJaj_93RMDyDf?-5~w%4-Gcq#}enh!#TI)k^kIVM*n!j%*3A% zxX4PSat`v8^9g}rBjjq!490N-AEVqHj7UlvSY#xH7z}EDgcGQM9|gJpVYuIe3|T6$ ztFyAji}^^%JiWX)u?5X7Ec&(VdV_B2pf){DH05{_5R|mExJgJ!L#u+qV{<<)!M|y9 zh@`#ymMtwgX0{=w~w>(mKFUtR)B z!&RR&@BQ6umR?5ShY@qE1hU5SqO!ZbB2kt}=j^k+2*Hx5*b*!Q(9;&A#TM5RtQE(e ztD0_kM>TbMI2PQaM&vpbp!yHODu>PUWoc62wIu1TvAJd&aJyasPi_43D&AtE#{b^;Ub4<_6Zcy9Tr`PT3fjkj6ci7q| zue~Aa2CJ2tQ+9#!8FrUkMPX-Ul1~rB*K6%p;2sDVfzPFbv584xS=rxS6%A z7Y)pg=er_XE!$qN-yhs>dOaX+JIx3lFE0`@;Uhr+YOUVq`AT?X^l&KrPM?t-W~|hg zEL!vsZKdB@l;;rgkA-Cj*M#;|6e^KHgJdLwh4t}f;n)5CQ!^9tb_Za)?&3sNYvt)I z#Ry`^_LNk}$u!^z?#%kfF#dscPUf{9{JLWNfS7>`iBz(0GOWoEs9Inov7bkJ{`?=% zFkWg!;IPvSD?46im9_p~AA0^nryn0-6fvjTl4c>isP3;8yE$IdKI#g2SNwSO#jX@9 zmV3td&A*Q`88%!0W|>BCd`wS|6;4sdrbO(REufI@t2v8v`6x;vVmgs-O-3>%nFGU0 z)Qk#KO_=yon4|zHf`2@c;NNIK`d>6)bj6yoCkkaW-L2JjA^m(V<#%$79EIw83l+_+seinE`oyuXLL>OQ=YnZIz!B75D~`HV}_6mfpP zMPx8~i^U(6;Ey4E-^I>R%YLk`suHlbr^?FCzMba22J}Nt0-f~j>He>N1*n<7I;-pHBC}2nM9T9;DNvtp}z``t`iqAxGxt<5N>-V!iMn5%IxH{p=QB z6@Yj|KxcSM69wvacn^!4tuV=4bs%?B)cr3no%~SG{u~fiLZB=OvjZVZ8l%x^LQQ;j z_oe3M(n^cW4urhBH=)Q=Pf$nO^~DI!L5|OeQdJ#x z?tmXp<3F;bkc#)&S~ue(#JjES{{phX3>bjp=lOb{4bJ%6!{YFdn`uH47&v}-5KzOg zcEzVADGHC?FG7n+$E>zSB1T8bGhHVYvK&JhWyxuH>Lw}z1FM1i-x;)EiTY69*-A-D zi5ZJoVPsIrig6wH*V+N(n;LZ3J|xVMK%JN-|+ zU%bJ=!TaqeIU^f(y<-=yP}a(8fI83gX(k{p4)LodM>g{7=}Y%l6vI0RL=ba_m#0Sw zSB&Yi`dMqPH;7mvGXHx&^YfIQZ``%_iKO@Y7^S(TZ9tGhCa)KUuICvh6e8@P_+{45 zojN!~zGom`K(HgFp@Dg_)`%O~p(AMKL#r$7_23;)e>k=_z)ReCzi3hpdg^g)~r+$F+m$aK`RU;fY3WOXeMIdbyPTd zU0?+F>V?cG4m$u7?gJHIfPw`IM^rQl+EfJAVlp+Xrg`DW|M_Cu%M5d3Q! z_%7CSKVqcb?+e(w?p9bOSzUkq-opJTCG~a>fFb?K{Q_a=d4_$zG~*u`jN^%p-`(x` zW-A_t*N@oq#VaR+9KJYj^`Om?uArwL)+U*>dK>mclaDkAxY1n?%iL7oz72U@`}yB1 zpSf;PyU@sN>y@KPL8KUO)H`9$#}b;oq4ym)Nnp}fF{wr1dA6EYQ5)1 zRzO=`*_cp{c{&qL5EKqYqIJsI6VjwS}X|p9_~7p;n96A z@Cn93yBC4IKP)Bz_8>wAUe@nQ;qhGdKqzOI$o0|G(rENJ``{?Y2QDtziz+XIsVC8urO#|pWU1X;mxc|#6X8O>}>DYA5LNadqw9-RFKjNi{D1%(P2%m{6`zq2X_oT>yzO%$ivq93qFx>U zG|dUj2`^jG^8*Dy|MH_a=~l+Pfd1rV+S3hJuHPqr`w3bIDc_CdblM{=Vw^GROH@Rs z9y8IvabcW0luoW0a!44`n#jQ6$6J0k{-scs9wai~poIiH{Rt5Ejj)AwwzP<%(Sj2D7XBpV7#sgHRkdz_cJWTWY= z;Xg&K=l}8-=%C$Q{rA0;uf07tgl_5#^F#v?zf2iZJPv!Hx5w*~BkIPT%G#b-uj?&9 zpOXI&6V0BEdfwypCdh5=eF?PpZR?s7+W92=;-*sXBh=>W*X1L>L*n_virz26&l_?2 zCS6^{fH*dr;ZL78PJ@)3oQT9kr7Dejyd515MByXS_XWZ)pvEz%YTX&%jJB)fgpb9w zZkwxiGhW*^18m=?x1GYOuB_JIr}Zq)o^J(hMd7V`m9>u`6Q4dZZz=1-WCX}|ht#gJ zxEap2$-H-z`~k*@Ne5sEb$VF~MP4*D;tdJv8f2|*&uvr@jM6!NTmWSk;I{f;R5 zPfz@2NXUvT$*B=R0*>)IL6Qt%d!j^v;m%6*s!rp`8KYN5IpuK@mHjsM=4PC+qPauOywr$(Cy34k0+qTtZ+jYKw=FBbZCwJzHh!vBd%!liS+{x}q@$vL-mur#iyIv5= zB}E1GF5>Dsg{O=fS@@|Jj;Y)uO7MO}iDeevv%ea>DaB(3qf?;CF zNq#Q9<@rN5?K;tVJ@(1)g*+B3R9}scPhU*^0oUGxGX+x&o7IH}R{AI9q3PU$<68UO zW}!bNZX$aV9NCUNg&V1N315)Vm-8v2!~M~4ytv8SLb2}$bqY|t5Lmh1sHgHNZfc=S z0vVYB#y)Poh;2baO299PxRg^jd3Jm)52Cr3=a1Cjfmc0$T{JF=gP7cy0zD9DOVWYZ z0mL&6lRYFw$yuC4x2A0mlG`Da1WjL*%n*mBuXm#LB}VDv{JBD?4uo;z=D2Nce0+SL z7<5ETXy1^OY*LCZ%Fuz8#l>aD_-j1q<{nH5?unXE3M4GiovEhXEKc8$B@z5=P&zm% z?@q5Tuo|kE3!D%&<7Vu)1F-Ob<&s-isl(=sN<;eFelB7c6BuTJwh<_947xsRj9J&d zyL*Bx;7q>Ni>9ise_hUbe)a1R8~YQSeC!!h&%JNGU9i<2+O}1?YB&haiW>TwA)DO+ zeXhY5qg_h8`Fvk4IDQ|UyUxg_3^q2OBsb-njb>~7i5_7*_fZ*q##}yK-R#Bo zZ3oAh_6H-Vv4iBw^nlFAH$D2^Pi~(3Q)7@3vsxnZX_lSj=TtHL_iZ)(-GH4OJq~W} zyM|`gW=PoE8x%eDO&jHL7E!WDH{WM0Hrt&bWr{^4bo8K+5;MZ5yV`Ac3?T&t#MP0C z^74IK2PZ^~LdfQL**Pwu$u%=0vFb#Zv@ruL2#HH<3oY$^5pXY0&KK|lJqZ!e#8WzJ z{atg=4hCAzuE?dG0kQo{4d9F;{I6Kyz#do4t#nFX2_*m$#3})9Y^r>@@Qnx3YhKGlr zJVT)&5ns2(j0s}dZD@$TC@%m&!G=av;K=L0iHJ%~3<4X9H8l!j(aC^iMv9aK<|YbK zTScCVx^Te-y~DKO))-YrikWHd@ZBNBEQuW*c*ZLr?ALJQ(bB<@G3LEu)?hCB$;J-f z?eaASi?MqvFOMxGEY#>kQs$UP{-qYQfC7Wcai;zo3#3&%q)2{#PtP|LQ8l;skgbLrZhLqT<6%$~qgzX+xoq^}MfG*>bQQc70!Ny-0`$*4xU?P_$}mYWh1| z-7CTQRDx}kbZEQ@UP+jKBi|$L0Nc{lXf(c?Z8=R&-#$Jb*n0ka$x>2N<1vg#B~5kL zS;UavUyb0X6Q_1Rj15k1PG(x`c5881>2i>s@{HG!-h>0dcz!v?f*h1pvx8Y#9@|Wr z7%cV9G}9A7EBTEqBMBP4-nkrs8g5@z+AU=nvR#JIq{MNjUH-3wfgg1(u8kk0HV64Z&PqyGv@m^fcJ<}8N@t{OJQ1Eehgxrh z2wZY=+x7+qQRH-|tE%#0ptg2!79Q>Kr8HX|rQj!ks>+SY&o9&J!If<^f8c_A%u>KC zGcB_TQ>QgqQPr*57PaxinAy0V>98b5vi^&3zc58|;F==%0yJ%nvd;5|ho7QFJiE^# zfM1a%2N`Q(#3MA8b;Wj*@ZWJo^s9&jTzwl$9kMESRB!m2hDc5p;7SYv3rgsa6Wmdn z`V~%E^TitNNK|S;SW#Iy%6;>VQf+%hl5?x{7PDCDc{(I$0Sn8;>Weu(%lQWy_g8>q)Mzo;+1u<$%DxJDPP0Q>)#F z>cyp?#jO#_$WD(BFe+hvuL;BA?R4`EB>1}Zo(i}-ip*o0H8Gz5Y%eqXYO((T+NyJ* zk~h9~nEkQ3@oQ>oG5FecC+7a3u}&snPC?C*n%x7RF5Ps$cRC`v{VMGpjER%%vc2i< zMRI+D^O2L$Ebn=GC0VO~U~bv9WRom}Dh>I^PBRR!2YOOYXrKfFy5m*0wmvE(t}muj zU%Uh&kwa43!Tg2>=x}&~gWg4sGVHk{*12_c2->u<4Ch*b!ucu5pKkylWq5=8+5}ve z&+n`9XTaY7!@8wb>V1)VY;qEh|L09Q4bT<22uB!cgMcLb%^e;2=DCiPwzagf8CWV; zZd*wODKb}8Ru3<0fs~U=6yQb@1(+ARs*94rUiIB_b)m~_k7&^b$iI(7SjYuuf}8e_z}N<3z0TY%2h3Nm%E2x$zeX$(PrAZH`1a)NIMFqB6`!z1qLJe=Y}5{#MgW0VW+%D^D1LQx^p>uaPAzCm5ZkU?o3EsS%MlP5pY?4-+m4c z4x@jnH*cpu*d2&}v#@}|oXifhvCWg*QxN$f=Y}YYQHj$S>wk?DTC4ivVDu8&(H9Dag~*Skm)<*#-*gCYfroZxp6gyyj0HvLQajvvDwIFP_>@Qozp!-uZpfz*=+a>gi)UY7PMr^+#(IXy$?g2t4T(yN^`e@@WFt0Qxe_C528ph0@r^W{JO{&B?p6BIICTcYb*> z8ZGhsVNR!rMGyobpHs{Ve(%a-hK6%hx-izlAVtQbdjmO~0KC71loEAzfT8xe7r80j zXM$~O-6UlM6+o{F^R0mtDTl2@ORLb(kjL;5&Qnb4b<=n!R^T`_{0}%4mbgemb9@m+ z%7vxq?ct4llQ#>jMt^NhN80Emkn}p#8vjsCZv7JFN_sxlNoEX>x>d=4f7)?@HScg; zLtB!%sJ=e(M{b{>>D|@iySgFb+tnL$YCy_#=P z-VORFmUWK<8_Vw6PQ!H(x~a9*nJHT63Q&}BBAh_N!1d1;j)JqvVXaY|-}IGoyES|r zwmIJ2wOqCR^mwLH_er z>ibWx>-OBeNnY=?>D-~gA4<|YOq`ot&lBCx)n#&Yigl<-er524g%lG5_`sO(} zIEd!=4aD$_O=RsNAt@V3jgyAfiLc7u-qhf{@(e>lR8T|Ni<#MCGpsDn*RO6GEpKkL zJb_aWFn7x2@`aAx<(gwE>i=e2E=yYSq7-egHg5zzKi)PptR!>0x$%p_fdhwr zpNIbc4ow99yl?nKgm*>{`5`R{tJQ5>Kiw^+;zU7t)c9;|*ZE(jn#~cT>w6P+0f#BH3EPdMfSg=dlRv+WeHYLqAf$b@I{3JA zw>yTpmkDr>p+eu++K>dXn{6QrLqqCN@5Lj4=}DPD022Cuj(06ojK49N-$-y-ax-$2v{e6vXagp-`$en$$yf-^ zX46AWX98j)mViph@T$7i!Tz^a`fl@uv(NWG{I>RX;#4eo1bz>K*$(k5Hxr4o%kzUL z#E6K(DZpa{xL20drE|kD1WR4fuyBB=1r}h@82$tBs#aE_ECouJuh)7sp#PEW3VvjX&ht?b;hZ@x)B`@53dGY$-|@q=o*1yczm~XbUoHUs*~JZ z-QhAzylDgsiKxaUbz+`f%*YoOnd=Y2$auU_u&A%_t|)0Jg}k*Pl8_HMu|#&HA5NwP zRZKXT8XG*!C?Fz4tZpv%G;ggctlGpeQ%liYn1rr7jA?OBsP~7?iN4BT*z69d&r(`^ zD4nAAE)EAp=U)goLOR~La5*zZcyq^sqsFM|Jn)exSS!nFqot&8XA#&M*jhK4@qbg& z(uzAP!#or43`o*VEU0K|#>NuZ^-r_c4i$*P>>VHc7MTaUIiNL296Sl5izuGIC~>D9 zZM3bbM_{g6ZS=lWd^QLEs7myeen_|OMyNqbz=$0j zoTGyp5Qi63i-p5A28p#tU6Aq3$%fm+(EkMif9qf@=al^AMkHj3NHqKeYN?pxLa1IH z6!w+!Zi%B;@1EGF3I%=Gc(n!P`DEp{8}V`YKG>F|%yP-f#`+*5g?hlYbS0LfOgmkD z>F07%1ZjKJ&z$o@j>Kv{n={;U)j78_KYl!wz1CKqSevrzHfcpSu`{V`o1c<%c%N}UERM`m(((GV!6P8ML>K*ZA8^!!9rJ+s@nZN zUtA2e>vy1tFSM|}9P7UO^9#uaS-OKFrFb^^sW(}T0#FtG=RJZP$#04rL4syhVY&Po z{hLWyWc*;JvFra6)grm46;!k_0);pCT>;usZP-`R3#{u8Bp*t{P%mHtX^FuYygYHd zkfJ5rF<`v59Mo@kO0xBaizUi0DGYd`BNK?bM}))kIDIgcG}F)VL`@b#g|2Zol0-<6 zu|)sz@)~CH;Z01W_8pC%yB5t^5l^hoCN_OpXIJ(O2?G2?8(Ng^Tm3&Olr*|J09)Rn zl$;{;HHml}G4;u1UC?F{An&IETQEOR{W6TDF_4*t2G@Pt6{4YWwji$#aqh1qq#MQTVHL) zf@MGV#(wCkwOY_agOcVFOmSUnyzv+*%sAFkpPucNf_&&fCXB#tBdED`7Z|~v{pcTB z!z>qo&6IM2UJ1qR<`+h%b_4RV8?4D}CQ!J1%fN3Q%*>+!u1{9&fIdxkTRI!B4>mOALJ6jQ{#p+eg93$w$m3o>z0<+W3zMpBNOrj zrm~rFnwwp3pYBF3H5cn|`iQo?F3y2m=Ri!DG67Z1hypc0{9LfZ&OYW;HFb_!~#J7)^Bz=JdPlZ3Jb!>A|gac4x;toms44{qA#RZj+ZOd zoCYQ>nC@E;1=Tb(g8Und|EB!8_hqyH0v(kvKK%AxF}~UPlHkuCckM3o(endZ+44a_ zr`6~iWB?QVA4NEW6(Q5a?9Bl69WXEn7=ZXw5qjJ@ET9OQ!khdHgKZiui4BE-^xQvG z^2r(qus!jnS1gg2auYE078OlcGw0d57W%rZn;Z)(bP~Z-IAt(h)ouVqj?9b~%>=8_ zyk+R|{{*=wiI0Gd1;#zBb0Rf+} zZ960E0(uXaa~V_iO?<;mynx-xIlB&l-`;_dk<`TxY=QkJcc?AmAu6h9Dc#U2_ZaV6cje;!eZh>JEbIXnJ7WRaSrzU>B-I^6?+j}od} zx^TCVX%CpTt~eu<28YA%_dMa$c}|X&)zpmmzEqvi#h|W;`|kZiiw+wx)40T!Swg6` zwaxP2N=^;F%xcuRI3GcqyaNO-Wk+X=i;LY~srPzfxz}`NqXanua2wuxfc)*v{1Ubk z#w{lIzr4w*)4a6+SPo-uGdBli+Jz=(Q$64VgVMo};>sRW0Aq*%R+I$c#>Rz6$hbbm znS}#}DH4NV2m0V4hExm_3MXOqjj;_-NmB#THqJ;LC#%Fmua1(K0{;mtIUR$dWt?RR z7QBg*BGF^Rv^lV4B#<0a)5e6Kk31g;hlg~SSD390}iBPvSBj8Xi~1zDuF z2?o2P6gg>;a5xkW2vNGT{BZ|VTw z_b_hLUerV+?VJ-GGo7kyK^@Btj0Dz^iy1!$L3MqE^vpv zYMKp(h7AfkTZW5C=SIqCSA%xyPh#`joQuJ&5X|OZ7r*K$T(<@5wOlqkZa9R<-cj7A zTi7I%pZSkirjU)bkGO6YNfEt5KLJ@HLDRBMNvqEF@D`$EUrC=Gp?_tRWT1_SIs#b@%!NxiLAG3E@Pvs*!rGNGEy<*p%R5W(upSx#r z0X^oEUgCO}WcLiVg{QXol>!R#p^)6XDB(cp*dJ!|hIR@hmGy~-$snN*mecDiL1}Ah ze~0lyi?f4J2`P!A-uPk&v}M_Sn-scd>&>hy*E#9 zTN2*M{h|{UQ$*v%?ieJ4S4TRP!5Yl(qLS0qqC!sr)AO`8Shc%xi3N{Fmv((|F}Nvb z7)9D~J*vl`yRG{l*l}xntL{2(bAR~!4&hcUaoZP}sa#zKJZyQN2OFV*ywN z+ZQQ0Ek?l_NX|5+fPw*SQE32>oeb8g2z1tw8v>=nhZ=fpcq2$wa;o{p-x3<-Ew%R! zY`RuhT^Nj_G*P1q$j>Swv1;;@5%G?ID0(tOc1Dm>)K&_YNgWp^9EI32fxeNDAmQ#p zW_}BAY6e~^pHcoPV6>i536Z^(F#WH@-y9u$6;s!*fNCFI^DT!FwvuA`)Lr+ruNHsq zcTpk4RW2PRSrUdZV|zjJN4~L#2y}%Pv9eloHnye{J3hl@X(KZ_e&l$~et|3>B3(Zd z-lhW)a3+uagYw6vooqO!CW8i-Z#ybreUf3g5X&5)IDf*H>CZG&_=?eiEuKPX)xS8B z)xitfEuK=vwF7a%q+0<0Jl=9pG0FJwh=JuZ2-|)q&;<>VmJq}Qs&UMp)_QVG5tu-j}{AVu-xjiGphxCbGp41kEQXZp?xMI8t5P~Jn!Q z#H~|k0D2z=`$*U!SV70f^{QC?e8OaiUeJ)g7EFD=T6C zV=uj^$jbA_%CX()v-sm9_*q{y#8zcBwwXRv)ZgfQKzCG^qH~VM?a6p@$Jk&W zRWau`mmpUw2&12N3)aT4Wm9;UdiO;#`CPy;V0IzxZ2~C^Lp&-rGT6%@2W4w1dNhII zb?csTbwd!Ca_pp5!Dmtvlh5{dwL9J-ZKd=<=FQaS7;IKP%SYs8P)AS&T4NvK4G%tB zBz~_kuEFC5{26$TNGKRii$+$eP>0l<)79eTDxD6T)wSMdvS+JqLTFqh+!id~y?NI9 zkja~0BJTp7Gc;Wfs9S?P`m2B}q;+3cFj>}Ty+AVsxtPyhizc>?c3tyzMV?Nvo#Y{r zbN)0S47{!*Bn_J+D|S@SSx>rx_TEEO3{Sy!Bc{erPeDyh?@4Ol-Qc@r&v-_OClaJg6M=&12xVZ27! z9_(I=n&Zvf)S0I=VqJs5oXg1f$>9lJ$fF6oTZ@)d8bb>QXMVCKQS4mI+#F{k7Tlw) ztuOMJ#;mfVjC|53XMB*w6SD+fjxOi+;U%b%B?5sExuP41cA~vbV0;Pn`)BOdGdyVN+n&a)QVq06=eN5%@vg=yc z6G{$NY7=B|5b)h{4+x|ge|Uxy8X8(5E&JbQl1N#D8BeEqQc@~Dpu4-|v}!{!Yi;iL zk5qX{SwRU21~2c}vdUTl0lQc%Qj!d4CI=o~0#-b94lw!Qs8D6Zea{&SM)m9=b#W#| zt4J{)lV3hr%d=?1aE4UOi1;>rJzwb-%VRpbgDVQL8Sms8Ji&-ZCZguj5KTQj4x$*? z8@hY{Egq)&b3YTc)}WZx(1SG*Y()`EF00ybw&10Ta46(vet@<#XZikj0LJ61AY^j0Su z+SK_ExnLj^(Dd!q>D~UV=a0xJ3W^qpF7W6@i$0YedzwbMw9LLYm;YBmTYGk#6uOms zn_qk&lK0~GHV4~VwBnXmGhTv*EFrF}+hhYZY!l%yFh zh*Uld?Cb=9;D9t_tf+n-7|ZYM>FL9CJ*vVAkUPg@!0g0F@&uOv!}_QC%&GGV*-%hg zmR75i%wu?3Fsc@fS2z3A=`N@;4ol3|lf#V|0gZMht%(82(9h2IgxYnLur&|2`RU2x zlxaXkIbcy7hp2TmuSGC=jx!nQN+rIL;`cr><}Y?>+72=T0L>_8)f^aDSnyx5*4i^| zi*1Yl`;UN^a!?v_8l{7XwhjYy$fM;MMWWR3aGmcXQVOp(pk`T}OuX9n7`%dC>$XF6 z>GUq(WIqOypJ3X1KiS}7}QP& zBfh|-_%A6c^r3{LYSvr$U`8w3^o+xy?$>bymPQk$p-;DgDV&QSl|~mKD6Oe^g6{U< zCfUUnQbtM)r9Jb+;#9y0&VD^m0*;izd_}On3}u(brmLP|g#1E&O&P3gh5$eVB^n?N z@;kz!VoFpF?HzR5(?4knCN%$H$4S({1$WOpB()~87;ZWB$>OHI>`Okg5d%2*bMLGm zROVoHCh*qL)vR{Is_2Fr5MM{WvRn06-ZxIF^Sj{cRIaIYXmGO%4^xe!KTpA^p8pdl zDHEs3|N8+Ge>`eq3wWv7MG(p*a6uuUDhZy&Z2~fb2gHz;wT#OXQFdL;rLjHI`;&)M z6v9A)RX)?m-;MOKsU@$p2g?CL#KVGci?-ULs#dIU9dD;+heQ57+It@;n1Urr__625 zIe&f-5ixox4Ln6%Rq*B*j-DM%_R?>qBiz}kqD>&MxDhHgrWoz z>h5l?KGNUS6>jyNgaj~gi19C7K5MhncTo|^EkQd&RBAI|uiUj&;6BGbS5(l5DVFwv zNKi)2X|o+QF9YDI@KtAKti)84$BV*#uc>#G>)qEB9HAK_un)=Rg4qUP1T~v-H2lCu zWjr8u8eo-pvL8&{!J;ld4N$u>l8b}&b^l!U50M8i7gJVU9~h=EuohHwM@~;o)p-u} z&5puc+Z31<%ZPFD4;2j=Cn*L!+%Av<1N$mmd6-cK3~0-*@pu2V>2);wfLz_*(7@dUig-^B(84G&b7JTc0CSj{#-`Y4NsvT z>iyEz*187& zdTek^sMPQIkz+$_sdJ$nyHgPq>RrWMI9mr`qta>7nDSrZ2upd3B$!Byf*|8mbfg>f z&L;Y4l~X_XN#Sl|lxZD`+3f_)$W)H!`^4+J?w9tN^-yH%vK0>8ENwYEEWWBR0b?XvK+^XzuhawGTF`(pOeq`q`% z-LL~OvXPmco}HcUd-KwBqYl4Hq|kCcw43d^F%v!b#xU1ov_B9^V?Lc93=vx(ZBh>gTt*oD zF4a)vHA0VO0FN~D6cGDRkR51%h~>G^^<Mwu1_yAWQi;P|_|wkU_#NDUr33dZqT0l|xlYmd63Z;gpCIi$p( z>>nlk5?DgJ1BqGa%l=o1%v7f(=g}Xx#}xvhG&lAPi0-do2`tiV4J+^kP}pb`VAyyJ zK?LKvQUY{Q(;fPrXRRz~ZKMl$0kSWBePdd==L|wCwWAq2@i^7M(q<&{*=%9s(O*G~ zC{7r*eL~K>aXHt4#@|vYkiHgG)&hgyt#c~cA?wk93ZF|L`Nm+r{oo&a%8fT?eciKr@)L0R~{fGH@Cg{V{wqqssr$gaV&}cH? z+wuMZ(P?$yo75C_R#J?LhB>g55XT8S{FJTi(i)kuR;>N4ZAK1*ATzS>&@j=Q()jd5 zNi#M&fi{`OAsYL`zPlbbFyJ#)ThsGN|DY(zQ~@d&x;GUtX%@)6C$5s5sM?Kf{a1x} z)DF_`1m$StN3~;a{i0t%MWpSFBaSoMVXASE9Jw$K)Cs=XJ$H2Y?NPc_ALFX&G4<} z<#pN}jt1cg${GD&R*zJ(G?8lZfNK7c>Q-7Y)kAXg_QI-R5c7-a=7BM%KTHNjS1Oy!CU26 z0D_6)*=%}hq=Ptx7EZ?eaikD2-ana|mjuW|q(aP17dA>BoK(T_GQLJ!X|+QF$gUUjT%Gp zwQLoP{a$&pPg~#jlyL#gVzBkltg?ZgvejCAU`-!KoE_K0<6p7P0{^*7uP+oe zIBv#SSdYo~7U^x!xSsY`nGh2fU8~Gda_|&+N2!1AZB->}!{<<}>$dXm?Ua0O;czbF z-rWJp%hve4sAqTZNPW_0gK+*Wr2KE}s8OD#F-GwV8o(Y|0`HcPf*a;=UNB}hn|pV3 zVK_RCVR%NJp`xPaYsL-zUY*zc-kbnVC4`6f^z2$h+L&bHBbY{!=7}(w6fURH`xaX> zt-WZ75VfW+)*3yJWm_T$$HH1T-W$=d9~Pqidt3IYOxYF^992U{&Z#yCQ^j>H!qL1D zbnh9y?`l3Fn>Co$Zl=lM`^7DbhW()HKxWXfHIdA}Ad8VROVU(^)qa7%3ZVP?YF<^) z)Q_(i3ijbdV7Y2ls|j%!gd0i9h6{b<4;pvT96+@!mdss5sND@YxaR@g_C2+=6Sr5S zV|u_dZoxl46V=}(q|r>3m}TJMA9>h!EH)+Pr$>XcwOjCiG?o)vK@}~uQ~-fnd${L& zgiLaT`p_R}M;O!0&`ImOcH2s#D9pBL?ER+s?1)JUn(|0x?OUxQAjrBE$~OwQ6cIEf zV+!G7v7$=z|4^fuZ6$U%XYFztgS^mAF&}+fdSIi`=)gULS(Ny>4kF1RoY>xsJ08(1 zGMyF!$H>SdzI+%!84FuB z3}ai0T^UjHpao0Q)rh!cjEpk_XNi&byktZlq2PVpTk>mb298EY>a1+zQBlp!Vk)L&hAB{VM5F7!{|t{2eC>sITkv+k-LQ~*;-24G$Yw6bdg?zUS3{wGa>U|k(;^{)vNFA@i zNm3GCyqB$JGzz(#piySX%;^E1vg4WbX>j27cFxx=dw(yEcyQT2-*csW;}yH(Ng)t? zZ&0WhXmAAd{QL+nJI)j{OWDGtxa46ot{NRCNZzw{t@{rM{^)Yyi;%s9qdt2*or;>8 zj6R3e@SLTpUi)3AuLW|C(Ye`CJni*P%% z)Z-BK!*|Mxcp0KE+*c$Vl!vcU5Ed_mqDqh5wmB6MPh$ma9rp*ALyjFpmU0{l#@x3t zkkyTwa4~(LX*#tr47XS01*P;@V^lVUZ+EVDgsh&Cg4tf&0z@3Ms3eb3qQ@eqw-%{1n4hVZ<|ardG&Gk8Pi{7s5irtr`)P zuhxpjsdn?JdqI3ICtj(k68r9QZA+$M#(MhsM%Xxv7yiDBFC~q!*Aa=4+9ni0H$JW8 zk7c$sEYfu+SuqKnbNa;VQqm4Iox~`h@okd*gBxcav?%$fK?v51YtEqyM6W;Ou>tw$ zSVw?pNt~BpP#h0}6;|GxR*ts@8;9dP3n0uzBugqYG!%vfRqD(Ee0J{_}Q6nMFA3yej6{D$YhXLO)aq!<~8fl4PO9~XyLzPhQ zMG5^f&|Z5K!7aZQ7{1XCbfPhH$VqrhU=7c88>;$L(}~iYr}Ha+H>v9d$_-O?=-3fR z$WHk}riImt!R$-W#+fT0AyG86tfn=&eqVZ6#mGHwboedAa}F z%!?sHf&rGZHchpz`xP|^WM&E0WMj5qmmiWo+c_<%j4mU25=c7ckp%nf0}pFV3MS7` zA-J&un@sIDCS+a5f&rQrqJtUXw97Y_RPlwQemaJ@zF%rH$DAc(2k< z(?zoVCoqNO!0V-H+e3-y7>e(you$a)FIhJFxOU#29kzz7pG@-1`1Ghmq05*c83-A8 zn6A;C(Lj_~2S8fP(bw0su-EmZe_if zDr1uZNf2E2|CR*s;mn>Ye^QC)DR9V>vDh-v*rHQY8RWu_3$W?u-;44x6PUe$oFY^4 zEG;NO)f|AY4D-^Gcc#=BL2Y)N`U) zPzaBw2QM4^JmlH-AM;5V#;F~2MZsxYGRTTiquI=i{}2nX#82I@JxIcNBv$EL!7S4a^5WLCyvCmV!gf{@Fi1 zXK@;7qD_pUN4Yr#Ehg{wjDr<{NGE@__7@l2_p@g@OI-#C^itC z(2Zv@v=y&!3-;IGyPDYXU{-4e7MRR=sQh4sb!?DuB=8TLaCv0jhX#aan%p=W~Z= z`l7fyt^~f6gK&ioMxV8IrR|p$`tQkgAO|_|&}4v9Qp&Pv#~dCu?rtZKB_)Yc4M=i< zZCN=Gse?1K{0R(+Q_b$kV<>EUBz9uM!s$$IQ+B>d1gM6qly=QDQr$ z(T?FPwiKv>xfUewF?8D1x|o-K$Moi^H?1%y+Fgq7;0<>?lA%Yn{;f2O*)faTkFPo$ zWx70uhYk}dOFGQ3=7(y}=X?o#QY_?_gWyu!YfF1Bep3#@u?~d#?@Yl<&hTemjw6_@ zYVvxN(33A}Q5Tbu(F3l3`u`ssp!^1>4*7jyVQP@KP8^34^CCx+ql*}#cBcDV0jozh zGZ>nDzNVGtyl))}a5O9`6P)o&Av?o!2TptZa#!1A8X2+^`1z;ZU?Md~!zgCwJm5~h zbJQk)O}EFLKIHrR{}J_#ah1i}-;-^-lQr44YcghXO`2>s*|u%hRFiSCZQC}VGxy&A z=Xur3-9Gz=wboaLJz=aD2_tki$Lw)=XysB+Wl;oaf8$}jbFR$zXTr%r2@BQUU(h^R zuxoUqo+XZJsTx~ad0-GUs!2;+QK|7;r`0rL?kW)rlZ$|f+$4=C&M+uDSI0Ku6kxKT zkk8~GkcOn#>`PSz3uOA^c9j4UZY0=3rDf$0ZLq35Vr40W4UcCE4{~(Y1M9wlqM%rW zUfd-ge1+FX0N3je^gtG0OrA3-Y!a2}qDf&g18@ZERyorqC^60-a}bQM+*%4aEXba<0x_N#B5}HC zC?hF^>|+PZK?D{mbM3`@J3_{FNQiX0nsY~Jp>*e@#;6@V9}&Sqq^QOadHG8};NtO{ ztxs8ma6(4J1G`Ca+V(G@APBRQ=@qs>0}5yb7qT`hC=Gos1gK-|0=KAP_z0QcWvhUW zKllg->UlI=SVo^bgnV{i2EPaFrIq*gCXFfqns<+2V3dA12C8rVaD4YNVT0;NrKe0l zs=mWaHn!^Hv4AJ@L3#T=GotmSV~_Z<9H}?C3sL?1gz?iaT)6eQ}Zb3uRZ?9eR$B4j_+rYCc~= z@;ki@bh5~E$;a}#&w%FH=WLL);ii$igZz1LmozUvK7xVwrvU49_`LEF)WV(oxkAC! zWORn_Q!%B#K+;;%Jcd;f9|dwCqIP0h)fa@t&EIo>*l=rc@++AI%IJthMuc5#z{1xI z-JJMTSR<5_)mh%N1@`d2J0d8@7UZ`(5FaG|1WKxhWLh1S!&rLrW&ZqC=V61b<#X$g z_4nMAUePUrnJei*D5#X~mP}n%O4}K$9t$nN%tQ@jIBCV%6R+wY)PGz%gbvB#-|6UV zUQlDvh^omFJ~L^kWJg9>g8MURpGMxbm#p8mBQv~yKSPPUlG{s2w)nsb8R90w<}Z*Tc!x2nUI$q1~7>PSk9%6wB%OSLN1@*o<~me^_0 zs_XHOd=P{%Rs%1Y;4+n}VXT`5P!0GTelqU1!P@ zG4KjKU;?&teitN=Iq{7S)?TVQ&Zai(F{-@kn$rt@#olsPyg*s2YN5`y{&sru@oQMS z(Dki}KiN5Or-d-8xfEvg`7{<69O2qTNiv+dX9=gEBRJ|bfjhenX+j?*veo8#7fFBB ztt*v#AqlA~q52t}Puc4h1>;8~u$E=#k=`(YbXbwccU)4R zPk{D?^H^ZL))x_jrqg#vTkb7+={@?B>gcf6laG@{ux+q4PAkVp)spWhn|e^Uy)G^VW}j4MhI)Bf|e@c0ti#h zgSw8^p3 zcpIjBPswL_{x|#bdjCk;;D3ETfG?d$E0CNaNHbC6=^6So9$l+sW7A1 zl&K@pQ6+s2Zx=1wy$1SbcxJkpuG>^;}UTjIB=HV_T!0-nd!SG`4dEfs=7VuUY7Ist2Gd!A* z-}?KW|K^`M<$ls=XUpCgoz`?g8*p0~nP)&8i6MV)&Exy(l6?a!8)NHv z_iq^DniMY|&WatW$=tlWxJbt_8rrnpa&N*33PV_>LIDF}Ri+s9;xlIc;+tSGX70>k ze>fEZfvHW;n6KRSy>0>UDr#P`uqt68iPZ(fDo*)Dt@t|&Rj7-Vez6J0YRd_3Gd>gZ zF)u(8QQr^u(40^HLMh_3i`i|R0z3O~&@$jo5F@)jr4T)=K_TG_&hPED@25?V$gOCD ziBeEt5K3VfrlA>le!warXey>157qwl@tOT{;MX5xspp*@~vkqzw|VspCvlc#IW! zn?_TAh7=LiT15t{i03@8qk@850 zE{+HIoK~SGGr=62=MI}ZiKmzd(6x{)VggdDLKSAsz9EslM#sgRKV|@&oJF2q7D=6) zgkJ}J!8xsdvx-$e4}RhuMh5>EjA)^Qg$m$S{}Ez9Gvok1MX~9l|HW(~Tg+Bp2qQo( zifUhDnZZR-gA-((Vt3+%^Z?QZ*3Y0Ly73R0TM`2lDQ~Q$XZkdte_2=<9~w3CPAyIK zO)znAU^SXe7-^_e!o%N?hM|97S*bO<6kIx2Boy!gzpXeFomNlY6U0SMc(+JPiMjaB z6nlI1dHfajRe*mkp3V7)H&6|$y6Y@hiMbnnmz(@jp_Tf90t3%m0=$P8Vz>+xdF~y$_9*H+%8;7$uYe> zH%8xwu;t7aQ>2LR3q3m)>7k|3y5p=jGzR>CSG1$LFmP{Wb!Cg_u8yK%eSN*O zOdz1LQvS~AaqDWkK�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 literal 0 HcmV?d00001 diff --git a/packages/gui/src/background.js b/packages/gui/src/background.js index dec9ad6..00b5d4f 100644 --- a/packages/gui/src/background.js +++ b/packages/gui/src/background.js @@ -75,6 +75,21 @@ function setTray (app) { return appTray } +function isLinux () { + const platform = DevSidecar.api.shell.getSystemPlatform() + return platform === 'linux' +} + +function hideWin () { + if (win) { + if (isLinux()) { + win.minimize() + } else { + win.hide() + } + } +} + function createWindow () { // Create the browser window. @@ -113,7 +128,7 @@ function createWindow () { } if (startHideWindow) { - win.hide() + hideWin() } win.on('closed', async (e) => { @@ -124,7 +139,7 @@ function createWindow () { win.on('close', (e) => { if (!forceClose) { e.preventDefault() - win.hide() + hideWin() } }) } diff --git a/packages/gui/src/view/components/setup-ca.vue b/packages/gui/src/view/components/setup-ca.vue index 282f384..a379fbf 100644 --- a/packages/gui/src/view/components/setup-ca.vue +++ b/packages/gui/src/view/components/setup-ca.vue @@ -21,13 +21,16 @@ 2、然后按如下图步骤将随机生成的根证书设置为始终信任
    3、可能需要重新启动应用和浏览器才能生效
    + - @@ -59,6 +62,8 @@ export default { setupImage () { if (this.systemPlatform === 'mac') { return '/setup-mac.png' + } else if (this.systemPlatform === 'linux') { + return '/setup-linux.png' } else { return '/setup.png' } @@ -75,6 +80,9 @@ export default { }, async doSetup () { this.$emit('setup') + if (this.systemPlatform === 'linux') { + this.$message.success('根证书已成功安装到系统证书库(注意:浏览器仍然需要手动安装)') + } } } } From 967769ea05d8359e9c8bdb9a7ad9dfe26fce0112 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Fri, 13 Aug 2021 15:12:01 +0800 Subject: [PATCH 6/9] inux ubuntu --- packages/mitmproxy/src/index.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/mitmproxy/src/index.js b/packages/mitmproxy/src/index.js index aede43e..010c939 100644 --- a/packages/mitmproxy/src/index.js +++ b/packages/mitmproxy/src/index.js @@ -34,6 +34,10 @@ function registerProcessListener () { log.info('Unhandled Rejection at: Promise', p, 'err:', err) // application specific logging, throwing an error, or other logic here }) + + process.on('exit', function (code) { + log.info('代理服务进程被关闭:', code) + }) } const api = { From 7bd83de598bf297644099466650687cd1adb43c0 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Fri, 13 Aug 2021 16:04:54 +0800 Subject: [PATCH 7/9] safe mode sni set --- packages/core/src/config/index.js | 3 + packages/gui/src/view/pages/server.vue | 61 +++++++++++++++++-- .../proxy/mitmproxy/createConnectHandler.js | 20 ++++-- .../src/lib/proxy/mitmproxy/index.js | 25 ++------ packages/mitmproxy/src/options.js | 1 + 5 files changed, 79 insertions(+), 31 deletions(-) diff --git a/packages/core/src/config/index.js b/packages/core/src/config/index.js index be15150..37c0a91 100644 --- a/packages/core/src/config/index.js +++ b/packages/core/src/config/index.js @@ -157,6 +157,9 @@ module.exports = { 'pay.weixin.qq.com': true, 'www.baidu.com': true }, + sniList: { + 'github.com': 'baidu.com' + }, dns: { providers: { aliyun: { diff --git a/packages/gui/src/view/pages/server.vue b/packages/gui/src/view/pages/server.vue index f887716..faa9480 100644 --- a/packages/gui/src/view/pages/server.vue +++ b/packages/gui/src/view/pages/server.vue @@ -80,11 +80,9 @@ -
    -
    这里配置哪些域名需要通过国外DNS服务器获取IP进行访问
    @@ -110,10 +108,31 @@ @click="restoreDefDnsMapping(item,index)">
    -
    - + + + +
    这里配置哪些域名要修改sni
    +
    + + + +
    + + + + + + + + + + + + +
    +
    @@ -207,7 +226,8 @@ export default { wrapperCol: { span: 20 }, dnsMappings: [], speedTestList: [], - whiteList: [] + whiteList: [], + sniList: [] } }, created () { @@ -249,6 +269,7 @@ export default { ready () { this.initDnsMapping() this.initWhiteList() + this.initSniList() if (this.config.server.dns.speedTest.dnsProviders) { this.speedDns = this.config.server.dns.speedTest.dnsProviders } @@ -256,6 +277,7 @@ export default { async applyBefore () { this.submitDnsMapping() this.submitWhiteList() + this.submitSniList() }, async applyAfter () { if (this.status.server.enabled) { @@ -320,6 +342,35 @@ export default { this.whiteList.unshift({ key: '', value: true }) }, + // sniList + initSniList () { + this.sniList = [] + for (const key in this.config.server.sniList) { + const value = this.config.server.sniList[key] + this.sniList.push({ + key, value + }) + } + }, + submitSniList () { + const sniList = {} + for (const item of this.sniList) { + if (item.key) { + sniList[item.key] = item.value + } + } + this.config.server.sniList = sniList + }, + deleteSniList (item, index) { + this.sniList.splice(index, 1) + }, + restoreDefSniList (item, index) { + + }, + addSniList () { + this.sniList.unshift({ key: '', value: true }) + }, + async openLog () { const dir = await this.$api.info.getConfigDir() this.$api.ipc.openPath(dir + '/logs/') diff --git a/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js b/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js index 5359837..514c61a 100644 --- a/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js +++ b/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js @@ -5,7 +5,7 @@ const log = require('../../../utils/util.log') const DnsUtil = require('../../dns/index') const localIP = '127.0.0.1' const defaultDns = require('dns') - +const matchUtil = require('../../../utils/util.match') const speedTest = require('../../speed/index.js') function isSslConnect (sslConnectInterceptors, req, cltSocket, head) { @@ -19,7 +19,7 @@ function isSslConnect (sslConnectInterceptors, req, cltSocket, head) { } // create connectHandler function -module.exports = function createConnectHandler (sslConnectInterceptor, middlewares, fakeServerCenter, dnsConfig) { +module.exports = function createConnectHandler (sslConnectInterceptor, middlewares, fakeServerCenter, dnsConfig, sniConfig) { // return const sslConnectInterceptors = [] sslConnectInterceptors.push(sslConnectInterceptor) @@ -28,6 +28,9 @@ module.exports = function createConnectHandler (sslConnectInterceptor, middlewar sslConnectInterceptors.push(middleware.sslConnectInterceptor) } } + + console.log('sni config', sniConfig) + const sniRegexpMap = matchUtil.domainMapRegexply(sniConfig) return function connectHandler (req, cltSocket, head) { // eslint-disable-next-line node/no-deprecated-api const srvUrl = url.parse(`https://${req.url}`) @@ -40,21 +43,28 @@ module.exports = function createConnectHandler (sslConnectInterceptor, middlewar log.error('getServerPromise', e) }) } else { - connect(req, cltSocket, head, hostname, srvUrl.port, dnsConfig) + connect(req, cltSocket, head, hostname, srvUrl.port, dnsConfig, sniRegexpMap) } } } -function connect (req, cltSocket, head, hostname, port, dnsConfig) { +function connect (req, cltSocket, head, hostname, port, dnsConfig, sniRegexpMap) { // tunneling https // log.info('connect:', hostname, port) const start = new Date().getTime() let isDnsIntercept = null + const replaceSni = matchUtil.matchHostname(sniRegexpMap, hostname) + console.log('replaceSni', replaceSni, sniRegexpMap) + let servername = null + if (replaceSni) { + servername = replaceSni + } try { const options = { port, host: hostname, - connectTimeout: 10000 + connectTimeout: 10000, + servername } if (dnsConfig) { const dns = DnsUtil.hasDnsLookup(dnsConfig, hostname) diff --git a/packages/mitmproxy/src/lib/proxy/mitmproxy/index.js b/packages/mitmproxy/src/lib/proxy/mitmproxy/index.js index 0edb114..933cfe0 100644 --- a/packages/mitmproxy/src/lib/proxy/mitmproxy/index.js +++ b/packages/mitmproxy/src/lib/proxy/mitmproxy/index.js @@ -21,7 +21,8 @@ module.exports = { middlewares = [], externalProxy, dnsConfig, - setting + setting, + sniConfig }, callback) { // Don't reject unauthorized // process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' @@ -39,25 +40,6 @@ module.exports = { log.info(`CA private key saved in: ${caKeyPath}`) } - // function lookup (hostname, options, callback) { - // const dns = DnsUtil.hasDnsLookup(dnsConfig, hostname) - // if (dns) { - // dns.lookup(hostname).then(ip => { - // // isDnsIntercept = { dns, hostname, ip } - // if (ip !== hostname) { - // log.info(`-----${hostname} use ip:${ip}-----`) - // callback(null, ip, 4) - // } else { - // defaultDns.lookup(hostname, options, callback) - // } - // }) - // } else { - // defaultDns.lookup(hostname, options, callback) - // } - // } - // - // https.globalAgent.lookup = lookup - port = ~~port const speedTestConfig = dnsConfig.speedTest @@ -95,7 +77,8 @@ module.exports = { sslConnectInterceptor, middlewares, fakeServersCenter, - dnsConfig + dnsConfig, + sniConfig ) const server = new http.Server() diff --git a/packages/mitmproxy/src/options.js b/packages/mitmproxy/src/options.js index 8721ab5..943403c 100644 --- a/packages/mitmproxy/src/options.js +++ b/packages/mitmproxy/src/options.js @@ -30,6 +30,7 @@ module.exports = (config) => { speedTest: config.dns.speedTest }, setting, + sniConfig: serverConfig.sniList, middlewares, sslConnectInterceptor: (req, cltSocket, head) => { const hostname = req.url.split(':')[0] From cc46292cd9e196fab683b03b40e3a2be5315c26f Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Fri, 13 Aug 2021 18:44:53 +0800 Subject: [PATCH 8/9] 1 --- packages/core/src/config/index.js | 6 +- packages/core/start/mitmproxy.js | 12 +- packages/core/start/user_config.json5 | 45 +++-- packages/gui/src/view/pages/server.vue | 42 ++--- .../proxy/mitmproxy/createConnectHandler.js | 36 +++- .../mitmproxy/src/lib/proxy/tls/sniUtil.js | 169 ++++++++++++++++++ packages/mitmproxy/src/utils/util.match.js | 3 + 7 files changed, 257 insertions(+), 56 deletions(-) create mode 100644 packages/mitmproxy/src/lib/proxy/tls/sniUtil.js diff --git a/packages/core/src/config/index.js b/packages/core/src/config/index.js index 3d9114b..26baaac 100644 --- a/packages/core/src/config/index.js +++ b/packages/core/src/config/index.js @@ -157,9 +157,9 @@ module.exports = { 'pay.weixin.qq.com': true, 'www.baidu.com': true }, - sniList: { - 'github.com': 'baidu.com' - }, + // sniList: { + // 'github.com': 'abaidu.com' + // }, dns: { providers: { aliyun: { diff --git a/packages/core/start/mitmproxy.js b/packages/core/start/mitmproxy.js index d284a37..bbbb823 100644 --- a/packages/core/start/mitmproxy.js +++ b/packages/core/start/mitmproxy.js @@ -2,7 +2,7 @@ const server = require('@docmirror/mitmproxy') const JSON5 = require('json5') const path = require('path') -const home = process.env.HOME +const home = process.env.USER_HOME || process.env.HOME || 'C:/Users/xiaoj/' let configPath = path.join(home, '.dev-sidecar/running.json') if (process.argv && process.argv.length > 3) { configPath = process.argv[2] @@ -11,9 +11,9 @@ if (process.argv && process.argv.length > 3) { const fs = require('fs') const configJson = fs.readFileSync(configPath) const config = JSON5.parse(configJson) -const scriptDir = '../../gui/extra/scripts/' -config.setting.script.defaultDir = path.join(__dirname, scriptDir) -const pacFilePath = '../../gui/extra/pac/pac.txt' -config.plugin.overwall.pac.customPacFilePath = path.join(__dirname, pacFilePath) - +// const scriptDir = '../../gui/extra/scripts/' +// config.setting.script.defaultDir = path.join(__dirname, scriptDir) +// const pacFilePath = '../../gui/extra/pac/pac.txt' +// config.plugin.overwall.pac.customPacFilePath = path.join(__dirname, pacFilePath) +config.setting.rootDir = path.join(__dirname, '../../gui/') server.start(config) diff --git a/packages/core/start/user_config.json5 b/packages/core/start/user_config.json5 index 0d7f5de..b745d13 100644 --- a/packages/core/start/user_config.json5 +++ b/packages/core/start/user_config.json5 @@ -1,24 +1,31 @@ { - server: { - intercepts: { - 'github1.githubassets.com': { - '.*': { - redirect: 'assets.fastgit.org', - test: 'https://github.githubassets.com/favicons/favicon.svg', - desc: '静态资源加速' - } - }, - 'github.githubassets.com': null, - 'notify3.note.youdao.com': { - '/pushserver3/.*': { - abort: true - }, - } + app: { + autoStart: { + enabled: true, }, + mode: 'safe', }, plugin: { node: { - enabled: true - } - } -} + setting: { + yarnRegistry: null, + }, + }, + git: { + enabled: true, + }, + overwall: { + targets: { + '*yonsz.net': true, + '*bootstrapcdn.com': true, + '*cloudflare.com': true, + 'help.yonsz.net': true, + }, + }, + }, + server: { + intercept: { + enabled: false, + }, + }, +} \ No newline at end of file diff --git a/packages/gui/src/view/pages/server.vue b/packages/gui/src/view/pages/server.vue index faa9480..287338d 100644 --- a/packages/gui/src/view/pages/server.vue +++ b/packages/gui/src/view/pages/server.vue @@ -110,28 +110,28 @@
    - - - -
    这里配置哪些域名要修改sni
    -
    - - - -
    - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + -
    +
    diff --git a/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js b/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js index 514c61a..671eb12 100644 --- a/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js +++ b/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js @@ -7,7 +7,7 @@ const localIP = '127.0.0.1' const defaultDns = require('dns') const matchUtil = require('../../../utils/util.match') const speedTest = require('../../speed/index.js') - +const sniExtract = require('../tls/sniUtil.js') function isSslConnect (sslConnectInterceptors, req, cltSocket, head) { for (const intercept of sslConnectInterceptors) { const ret = intercept(req, cltSocket, head) @@ -55,16 +55,11 @@ function connect (req, cltSocket, head, hostname, port, dnsConfig, sniRegexpMap) let isDnsIntercept = null const replaceSni = matchUtil.matchHostname(sniRegexpMap, hostname) console.log('replaceSni', replaceSni, sniRegexpMap) - let servername = null - if (replaceSni) { - servername = replaceSni - } try { const options = { port, host: hostname, - connectTimeout: 10000, - servername + connectTimeout: 10000 } if (dnsConfig) { const dns = DnsUtil.hasDnsLookup(dnsConfig, hostname) @@ -100,6 +95,33 @@ function connect (req, cltSocket, head, hostname, port, dnsConfig, sniRegexpMap) proxySocket.pipe(cltSocket) cltSocket.pipe(proxySocket) + // let sniReplaced = false + // cltSocket.on('data', (chunk) => { + // // if (replaceSni && sniReplaced === false) { + // // const sniPackage = sniExtract(chunk) + // // if (sniPackage != null) { + // // sniReplaced = true + // // const bytes = Buffer.from(replaceSni) + // // const start = sniPackage.start + // // const length = sniPackage.length + // // for (let i = 0; i < length; i++) { + // // let char = 97 // a 的ascii + // // if (bytes.length > i) { + // // char = bytes[i] + // // } + // // chunk[start + i] = char + // // } + // // } + // // } + // if (sniReplaced === false) { + // sniReplaced = true + // chunk[chunk.length - 1] = 1 + // } + // proxySocket.write(chunk) + // }) + // cltSocket.on('end', () => { + // proxySocket.end() + // }) }) cltSocket.on('error', (e) => { diff --git a/packages/mitmproxy/src/lib/proxy/tls/sniUtil.js b/packages/mitmproxy/src/lib/proxy/tls/sniUtil.js new file mode 100644 index 0000000..88269b4 --- /dev/null +++ b/packages/mitmproxy/src/lib/proxy/tls/sniUtil.js @@ -0,0 +1,169 @@ +module.exports = function extractSNI (data) { + /* + From https://tools.ietf.org/html/rfc5246: + enum { + hello_request(0), client_hello(1), server_hello(2), + certificate(11), server_key_exchange (12), + certificate_request(13), server_hello_done(14), + certificate_verify(15), client_key_exchange(16), + finished(20) + (255) + } HandshakeType; + struct { + HandshakeType msg_type; + uint24 length; + select (HandshakeType) { + case hello_request: HelloRequest; + case client_hello: ClientHello; + case server_hello: ServerHello; + case certificate: Certificate; + case server_key_exchange: ServerKeyExchange; + case certificate_request: CertificateRequest; + case server_hello_done: ServerHelloDone; + case certificate_verify: CertificateVerify; + case client_key_exchange: ClientKeyExchange; + case finished: Finished; + } body; + } Handshake; + struct { + uint8 major; + uint8 minor; + } ProtocolVersion; + struct { + uint32 gmt_unix_time; + opaque random_bytes[28]; + } Random; + opaque SessionID<0..32>; + uint8 CipherSuite[2]; + enum { null(0), (255) } CompressionMethod; + struct { + ProtocolVersion client_version; + Random random; + SessionID session_id; + CipherSuite cipher_suites<2..2^16-2>; + CompressionMethod compression_methods<1..2^8-1>; + select (extensions_present) { + case false: + struct {}; + case true: + Extension extensions<0..2^16-1>; + }; + } ClientHello; + */ + + var end = data.length + + // skip the record header + var pos = 5 + + // skip HandshakeType (you should already have verified this) + pos += 1 + + // skip handshake length + pos += 3 + + // skip protocol version (you should already have verified this) + pos += 2 + + // skip Random + pos += 32 + + // skip SessionID + if (pos > end - 1) return null + var sessionIdLength = data[pos] + pos += 1 + sessionIdLength + + // skip CipherSuite + if (pos > end - 2) return null + var cipherSuiteLength = data[pos] << 8 | data[pos + 1] + pos += 2 + cipherSuiteLength + + // skip CompressionMethod + if (pos > end - 1) return null + var compressionMethodLength = data[pos] + pos += 1 + compressionMethodLength + + // verify extensions exist + if (pos > end - 2) return null + var extensionsLength = data[pos] << 8 | data[pos + 1] + pos += 2 + + // verify the extensions fit + var extensionsEnd = pos + extensionsLength + if (extensionsEnd > end) return null + end = extensionsEnd + + /* + From https://tools.ietf.org/html/rfc5246 + and http://tools.ietf.org/html/rfc6066: + struct { + ExtensionType extension_type; + opaque extension_data<0..2^16-1>; + } Extension; + enum { + signature_algorithms(13), (65535) + } ExtensionType; + enum { + server_name(0), max_fragment_length(1), + client_certificate_url(2), trusted_ca_keys(3), + truncated_hmac(4), status_request(5), (65535) + } ExtensionType; + struct { + NameType name_type; + select (name_type) { + case host_name: HostName; + } name; + } ServerName; + enum { + host_name(0), (255) + } NameType; + opaque HostName<1..2^16-1>; + struct { + ServerName server_name_list<1..2^16-1> + } ServerNameList; + */ + + while (pos <= end - 4) { + var extensionType = data[pos] << 8 | data[pos + 1] + var extensionSize = data[pos + 2] << 8 | data[pos + 3] + pos += 4 + if (extensionType === 0) { // ExtensionType was server_name(0) + // read ServerNameList length + if (pos > end - 2) return null + var nameListLength = data[pos] << 8 | data[pos + 1] + pos += 2 + + // verify we have enough bytes and loop over SeverNameList + var n = pos + pos += nameListLength + if (pos > end) return null + while (n < pos - 3) { + var nameType = data[n] + var nameLength = data[n + 1] << 8 | data[n + 2] + n += 3 + + // check if NameType is host_name(0) + if (nameType === 0) { + // verify we have enough bytes + if (n > end - nameLength) return null + + // decode as ascii and return + + const sniName = data.toString('ascii', n, n + nameLength) + return { + sniName, + start: n, + end: n + nameLength, + length: nameLength + } + } else { + n += nameLength + } + } + } else { // ExtensionType was something we are not interested in + pos += extensionSize + } + } + + return null +} diff --git a/packages/mitmproxy/src/utils/util.match.js b/packages/mitmproxy/src/utils/util.match.js index 0d4807a..eaaed08 100644 --- a/packages/mitmproxy/src/utils/util.match.js +++ b/packages/mitmproxy/src/utils/util.match.js @@ -24,6 +24,9 @@ function domainMapRegexply (hostMap) { } function matchHostname (hostMap, hostname) { + if (hostMap == null) { + return null + } const value = hostMap[hostname] if (value) { return value From 6586b67249d572ef956adb1590b84ce4c5d6b31c Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Sat, 14 Aug 2021 21:03:14 -0700 Subject: [PATCH 9/9] feat: ubuntu support --- package-lock.json | 7078 ----------------- package.json | 3 +- packages/gui/package.json | 19 +- packages/gui/src/background.js | 1 + packages/gui/yarn.lock | 71 +- .../proxy/mitmproxy/createConnectHandler.js | 1 - packages/mitmproxy/yarn-error.log | 40 +- 7 files changed, 85 insertions(+), 7128 deletions(-) delete mode 100644 package-lock.json diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index dd95ab4..0000000 --- a/package-lock.json +++ /dev/null @@ -1,7078 +0,0 @@ -{ - "name": "dev-sidecar-parent", - "requires": true, - "lockfileVersion": 1, - "dependencies": { - "@babel/code-frame": { - "version": "7.10.4", - "resolved": "https://registry.npm.taobao.org/@babel/code-frame/download/@babel/code-frame-7.10.4.tgz?cache=0&sync_timestamp=1593522948158&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcode-frame%2Fdownload%2F%40babel%2Fcode-frame-7.10.4.tgz", - "integrity": "sha1-Fo2ho26Q2miujUnA8bSMfGJJITo=", - "dev": true, - "requires": { - "@babel/highlight": "^7.10.4" - } - }, - "@babel/helper-validator-identifier": { - "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=1593521083613&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhelper-validator-identifier%2Fdownload%2F%40babel%2Fhelper-validator-identifier-7.10.4.tgz", - "integrity": "sha1-p4x6clHgH2FlEtMbEK3PUq2l4NI=", - "dev": true - }, - "@babel/highlight": { - "version": "7.10.4", - "resolved": "https://registry.npm.taobao.org/@babel/highlight/download/@babel/highlight-7.10.4.tgz?cache=0&sync_timestamp=1593521095576&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fhighlight%2Fdownload%2F%40babel%2Fhighlight-7.10.4.tgz", - "integrity": "sha1-fRvf1ldTU4+r5sOFls23bZrGAUM=", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.10.4", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@evocateur/libnpmaccess": { - "version": "3.1.2", - "resolved": "https://registry.npm.taobao.org/@evocateur/libnpmaccess/download/@evocateur/libnpmaccess-3.1.2.tgz", - "integrity": "sha1-7Pf2zmsATp+UKwmNkiAL5KSxyEU=", - "dev": true, - "requires": { - "@evocateur/npm-registry-fetch": "^4.0.0", - "aproba": "^2.0.0", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.0.0", - "npm-package-arg": "^6.1.0" - }, - "dependencies": { - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/aproba/download/aproba-2.0.0.tgz", - "integrity": "sha1-UlILiuW1aSFbNU78DKo/4eRaitw=", - "dev": true - } - } - }, - "@evocateur/libnpmpublish": { - "version": "1.2.2", - "resolved": "https://registry.npm.taobao.org/@evocateur/libnpmpublish/download/@evocateur/libnpmpublish-1.2.2.tgz", - "integrity": "sha1-Vd8J0tyhNq+6nIjHWconIZjbnxo=", - "dev": true, - "requires": { - "@evocateur/npm-registry-fetch": "^4.0.0", - "aproba": "^2.0.0", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.0.0", - "lodash.clonedeep": "^4.5.0", - "normalize-package-data": "^2.4.0", - "npm-package-arg": "^6.1.0", - "semver": "^5.5.1", - "ssri": "^6.0.1" - }, - "dependencies": { - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/aproba/download/aproba-2.0.0.tgz", - "integrity": "sha1-UlILiuW1aSFbNU78DKo/4eRaitw=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "@evocateur/npm-registry-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/@evocateur/npm-registry-fetch/download/@evocateur/npm-registry-fetch-4.0.0.tgz", - "integrity": "sha1-jEw4dm2NMtMgD8sKg/BktXNl7WY=", - "dev": true, - "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.1.2" - } - }, - "@evocateur/pacote": { - "version": "9.6.5", - "resolved": "https://registry.npm.taobao.org/@evocateur/pacote/download/@evocateur/pacote-9.6.5.tgz", - "integrity": "sha1-M94yuiELbxfCDrq01JfvxnVfSuU=", - "dev": true, - "requires": { - "@evocateur/npm-registry-fetch": "^4.0.0", - "bluebird": "^3.5.3", - "cacache": "^12.0.3", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.5.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.4.4", - "npm-pick-manifest": "^3.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.3", - "safe-buffer": "^5.2.0", - "semver": "^5.7.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "@lerna/add": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/add/download/@lerna/add-3.21.0.tgz", - "integrity": "sha1-JwB73nHMewopaas8LwrkFXi0V3s=", - "dev": true, - "requires": { - "@evocateur/pacote": "^9.6.3", - "@lerna/bootstrap": "3.21.0", - "@lerna/command": "3.21.0", - "@lerna/filter-options": "3.20.0", - "@lerna/npm-conf": "3.16.0", - "@lerna/validation-error": "3.13.0", - "dedent": "^0.7.0", - "npm-package-arg": "^6.1.0", - "p-map": "^2.1.0", - "semver": "^6.2.0" - } - }, - "@lerna/bootstrap": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/bootstrap/download/@lerna/bootstrap-3.21.0.tgz", - "integrity": "sha1-vNG2Ub5bCXCyDY+uBMhkVIEjrtY=", - "dev": true, - "requires": { - "@lerna/command": "3.21.0", - "@lerna/filter-options": "3.20.0", - "@lerna/has-npm-version": "3.16.5", - "@lerna/npm-install": "3.16.5", - "@lerna/package-graph": "3.18.5", - "@lerna/pulse-till-done": "3.13.0", - "@lerna/rimraf-dir": "3.16.5", - "@lerna/run-lifecycle": "3.16.2", - "@lerna/run-topologically": "3.18.5", - "@lerna/symlink-binary": "3.17.0", - "@lerna/symlink-dependencies": "3.17.0", - "@lerna/validation-error": "3.13.0", - "dedent": "^0.7.0", - "get-port": "^4.2.0", - "multimatch": "^3.0.0", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2", - "p-finally": "^1.0.0", - "p-map": "^2.1.0", - "p-map-series": "^1.0.0", - "p-waterfall": "^1.0.0", - "read-package-tree": "^5.1.6", - "semver": "^6.2.0" - } - }, - "@lerna/changed": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/changed/download/@lerna/changed-3.21.0.tgz", - "integrity": "sha1-EI4V9nm/4HevUA9YJIxjTxBE6gs=", - "dev": true, - "requires": { - "@lerna/collect-updates": "3.20.0", - "@lerna/command": "3.21.0", - "@lerna/listable": "3.18.5", - "@lerna/output": "3.13.0" - } - }, - "@lerna/check-working-tree": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/check-working-tree/download/@lerna/check-working-tree-3.16.5.tgz", - "integrity": "sha1-tPiuYbtFI1Yd+5+PjYdN1Gu0S6o=", - "dev": true, - "requires": { - "@lerna/collect-uncommitted": "3.16.5", - "@lerna/describe-ref": "3.16.5", - "@lerna/validation-error": "3.13.0" - } - }, - "@lerna/child-process": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/child-process/download/@lerna/child-process-3.16.5.tgz", - "integrity": "sha1-OPo8GAZKpKwHVK2AEUd2p7NqabI=", - "dev": true, - "requires": { - "chalk": "^2.3.1", - "execa": "^1.0.0", - "strong-log-transformer": "^2.0.0" - } - }, - "@lerna/clean": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/clean/download/@lerna/clean-3.21.0.tgz", - "integrity": "sha1-wLRrUwDMPa4s2jvsFLgDCC2jhW0=", - "dev": true, - "requires": { - "@lerna/command": "3.21.0", - "@lerna/filter-options": "3.20.0", - "@lerna/prompt": "3.18.5", - "@lerna/pulse-till-done": "3.13.0", - "@lerna/rimraf-dir": "3.16.5", - "p-map": "^2.1.0", - "p-map-series": "^1.0.0", - "p-waterfall": "^1.0.0" - } - }, - "@lerna/cli": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/cli/download/@lerna/cli-3.18.5.tgz", - "integrity": "sha1-yQxGFUL801ttWwFaKQ+w2/tB0kI=", - "dev": true, - "requires": { - "@lerna/global-options": "3.13.0", - "dedent": "^0.7.0", - "npmlog": "^4.1.2", - "yargs": "^14.2.2" - } - }, - "@lerna/collect-uncommitted": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/collect-uncommitted/download/@lerna/collect-uncommitted-3.16.5.tgz", - "integrity": "sha1-pJTWGqwxzceuxLvlLJZVAnQTLmM=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "chalk": "^2.3.1", - "figgy-pudding": "^3.5.1", - "npmlog": "^4.1.2" - } - }, - "@lerna/collect-updates": { - "version": "3.20.0", - "resolved": "https://registry.npm.taobao.org/@lerna/collect-updates/download/@lerna/collect-updates-3.20.0.tgz", - "integrity": "sha1-YvnXa6IaJbfZ+/McAt6IdEpWS9E=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/describe-ref": "3.16.5", - "minimatch": "^3.0.4", - "npmlog": "^4.1.2", - "slash": "^2.0.0" - } - }, - "@lerna/command": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/command/download/@lerna/command-3.21.0.tgz", - "integrity": "sha1-miODdZ3HtwDaz6iiKy86bhkBIfc=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/package-graph": "3.18.5", - "@lerna/project": "3.21.0", - "@lerna/validation-error": "3.13.0", - "@lerna/write-log-file": "3.13.0", - "clone-deep": "^4.0.1", - "dedent": "^0.7.0", - "execa": "^1.0.0", - "is-ci": "^2.0.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/conventional-commits": { - "version": "3.22.0", - "resolved": "https://registry.npm.taobao.org/@lerna/conventional-commits/download/@lerna/conventional-commits-3.22.0.tgz", - "integrity": "sha1-J5j0iB7i70V72uAnq30L8K9vHgk=", - "dev": true, - "requires": { - "@lerna/validation-error": "3.13.0", - "conventional-changelog-angular": "^5.0.3", - "conventional-changelog-core": "^3.1.6", - "conventional-recommended-bump": "^5.0.0", - "fs-extra": "^8.1.0", - "get-stream": "^4.0.0", - "lodash.template": "^4.5.0", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2", - "pify": "^4.0.1", - "semver": "^6.2.0" - } - }, - "@lerna/create": { - "version": "3.22.0", - "resolved": "https://registry.npm.taobao.org/@lerna/create/download/@lerna/create-3.22.0.tgz", - "integrity": "sha1-1rvQN8PcW0Jf5fbRuBcFfCePdhk=", - "dev": true, - "requires": { - "@evocateur/pacote": "^9.6.3", - "@lerna/child-process": "3.16.5", - "@lerna/command": "3.21.0", - "@lerna/npm-conf": "3.16.0", - "@lerna/validation-error": "3.13.0", - "camelcase": "^5.0.0", - "dedent": "^0.7.0", - "fs-extra": "^8.1.0", - "globby": "^9.2.0", - "init-package-json": "^1.10.3", - "npm-package-arg": "^6.1.0", - "p-reduce": "^1.0.0", - "pify": "^4.0.1", - "semver": "^6.2.0", - "slash": "^2.0.0", - "validate-npm-package-license": "^3.0.3", - "validate-npm-package-name": "^3.0.0", - "whatwg-url": "^7.0.0" - } - }, - "@lerna/create-symlink": { - "version": "3.16.2", - "resolved": "https://registry.npm.taobao.org/@lerna/create-symlink/download/@lerna/create-symlink-3.16.2.tgz", - "integrity": "sha1-QSy45Zpy9afZRj5ORyGtIHAUmWc=", - "dev": true, - "requires": { - "@zkochan/cmd-shim": "^3.1.0", - "fs-extra": "^8.1.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/describe-ref": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/describe-ref/download/@lerna/describe-ref-3.16.5.tgz", - "integrity": "sha1-ozjCWq7YN9PccLinLER8XGY0asA=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "npmlog": "^4.1.2" - } - }, - "@lerna/diff": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/diff/download/@lerna/diff-3.21.0.tgz", - "integrity": "sha1-5t8Ni5kWFn/1pJ/LAqwGQkKApo0=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/command": "3.21.0", - "@lerna/validation-error": "3.13.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/exec": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/exec/download/@lerna/exec-3.21.0.tgz", - "integrity": "sha1-F/B1M4k8uRihe0G8xWbcQ3AW2yY=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/command": "3.21.0", - "@lerna/filter-options": "3.20.0", - "@lerna/profiler": "3.20.0", - "@lerna/run-topologically": "3.18.5", - "@lerna/validation-error": "3.13.0", - "p-map": "^2.1.0" - } - }, - "@lerna/filter-options": { - "version": "3.20.0", - "resolved": "https://registry.npm.taobao.org/@lerna/filter-options/download/@lerna/filter-options-3.20.0.tgz", - "integrity": "sha1-Dw9dWkeDhW7s5CBHCMyQLLyK9Zs=", - "dev": true, - "requires": { - "@lerna/collect-updates": "3.20.0", - "@lerna/filter-packages": "3.18.0", - "dedent": "^0.7.0", - "figgy-pudding": "^3.5.1", - "npmlog": "^4.1.2" - } - }, - "@lerna/filter-packages": { - "version": "3.18.0", - "resolved": "https://registry.npm.taobao.org/@lerna/filter-packages/download/@lerna/filter-packages-3.18.0.tgz", - "integrity": "sha1-ano3bShSCNsDqClYz7gXLhebTnA=", - "dev": true, - "requires": { - "@lerna/validation-error": "3.13.0", - "multimatch": "^3.0.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/get-npm-exec-opts": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/get-npm-exec-opts/download/@lerna/get-npm-exec-opts-3.13.0.tgz", - "integrity": "sha1-0bVSywCIGZ/D5+Em+RTjmgjfnqU=", - "dev": true, - "requires": { - "npmlog": "^4.1.2" - } - }, - "@lerna/get-packed": { - "version": "3.16.0", - "resolved": "https://registry.npm.taobao.org/@lerna/get-packed/download/@lerna/get-packed-3.16.0.tgz", - "integrity": "sha1-GzFrcG3O6Gx7qlXlCwh5WUR4Uv8=", - "dev": true, - "requires": { - "fs-extra": "^8.1.0", - "ssri": "^6.0.1", - "tar": "^4.4.8" - } - }, - "@lerna/github-client": { - "version": "3.22.0", - "resolved": "https://registry.npm.taobao.org/@lerna/github-client/download/@lerna/github-client-3.22.0.tgz", - "integrity": "sha1-XYFqpPdnR+1zauZP+WK48Vw1TZU=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@octokit/plugin-enterprise-rest": "^6.0.1", - "@octokit/rest": "^16.28.4", - "git-url-parse": "^11.1.2", - "npmlog": "^4.1.2" - } - }, - "@lerna/gitlab-client": { - "version": "3.15.0", - "resolved": "https://registry.npm.taobao.org/@lerna/gitlab-client/download/@lerna/gitlab-client-3.15.0.tgz", - "integrity": "sha1-kfTsjGl7WsV/fyW9UP5lnSSqlqY=", - "dev": true, - "requires": { - "node-fetch": "^2.5.0", - "npmlog": "^4.1.2", - "whatwg-url": "^7.0.0" - } - }, - "@lerna/global-options": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/global-options/download/@lerna/global-options-3.13.0.tgz", - "integrity": "sha1-IXZiKQ2watnPLEnY4xAO4o6uuuE=", - "dev": true - }, - "@lerna/has-npm-version": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/has-npm-version/download/@lerna/has-npm-version-3.16.5.tgz", - "integrity": "sha1-q4OVbyEdiSPqav6bl5s4zHOxUyY=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "semver": "^6.2.0" - } - }, - "@lerna/import": { - "version": "3.22.0", - "resolved": "https://registry.npm.taobao.org/@lerna/import/download/@lerna/import-3.22.0.tgz", - "integrity": "sha1-Gl8DlPOOI8T2QqEj5eFRfnDQaNI=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/command": "3.21.0", - "@lerna/prompt": "3.18.5", - "@lerna/pulse-till-done": "3.13.0", - "@lerna/validation-error": "3.13.0", - "dedent": "^0.7.0", - "fs-extra": "^8.1.0", - "p-map-series": "^1.0.0" - } - }, - "@lerna/info": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/info/download/@lerna/info-3.21.0.tgz", - "integrity": "sha1-dmlrZ2/bDzXUjIPGPB4yu143gU8=", - "dev": true, - "requires": { - "@lerna/command": "3.21.0", - "@lerna/output": "3.13.0", - "envinfo": "^7.3.1" - } - }, - "@lerna/init": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/init/download/@lerna/init-3.21.0.tgz", - "integrity": "sha1-HoEJNNyL9OU4bAMQQYgdO0CWqlw=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/command": "3.21.0", - "fs-extra": "^8.1.0", - "p-map": "^2.1.0", - "write-json-file": "^3.2.0" - } - }, - "@lerna/link": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/link/download/@lerna/link-3.21.0.tgz", - "integrity": "sha1-i+aP8MzuEEsXS1u9YGMCwvBunZs=", - "dev": true, - "requires": { - "@lerna/command": "3.21.0", - "@lerna/package-graph": "3.18.5", - "@lerna/symlink-dependencies": "3.17.0", - "p-map": "^2.1.0", - "slash": "^2.0.0" - } - }, - "@lerna/list": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/list/download/@lerna/list-3.21.0.tgz", - "integrity": "sha1-Qvdvr6Vt6hO2keyMqxODJpHWHaI=", - "dev": true, - "requires": { - "@lerna/command": "3.21.0", - "@lerna/filter-options": "3.20.0", - "@lerna/listable": "3.18.5", - "@lerna/output": "3.13.0" - } - }, - "@lerna/listable": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/listable/download/@lerna/listable-3.18.5.tgz", - "integrity": "sha1-6CeYQFte2PxRhDyO8eeg5Jc4iho=", - "dev": true, - "requires": { - "@lerna/query-graph": "3.18.5", - "chalk": "^2.3.1", - "columnify": "^1.5.4" - } - }, - "@lerna/log-packed": { - "version": "3.16.0", - "resolved": "https://registry.npm.taobao.org/@lerna/log-packed/download/@lerna/log-packed-3.16.0.tgz", - "integrity": "sha1-+DmRBB7neySVY04URwtCJZ/SvBY=", - "dev": true, - "requires": { - "byte-size": "^5.0.1", - "columnify": "^1.5.4", - "has-unicode": "^2.0.1", - "npmlog": "^4.1.2" - } - }, - "@lerna/npm-conf": { - "version": "3.16.0", - "resolved": "https://registry.npm.taobao.org/@lerna/npm-conf/download/@lerna/npm-conf-3.16.0.tgz", - "integrity": "sha1-HBComuL2wu6WliVXc4aFMA03aCc=", - "dev": true, - "requires": { - "config-chain": "^1.1.11", - "pify": "^4.0.1" - } - }, - "@lerna/npm-dist-tag": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/npm-dist-tag/download/@lerna/npm-dist-tag-3.18.5.tgz", - "integrity": "sha1-nvmrt8EEB3sx9vqyLMc7MU1UrFU=", - "dev": true, - "requires": { - "@evocateur/npm-registry-fetch": "^4.0.0", - "@lerna/otplease": "3.18.5", - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/npm-install": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/npm-install/download/@lerna/npm-install-3.16.5.tgz", - "integrity": "sha1-1r/cFvgShdpmUVrkeSTW4njWN9M=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/get-npm-exec-opts": "3.13.0", - "fs-extra": "^8.1.0", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2", - "signal-exit": "^3.0.2", - "write-pkg": "^3.1.0" - } - }, - "@lerna/npm-publish": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/npm-publish/download/@lerna/npm-publish-3.18.5.tgz", - "integrity": "sha1-JA5AOZWf2YFrScWwdCHhG1ywAK8=", - "dev": true, - "requires": { - "@evocateur/libnpmpublish": "^1.2.2", - "@lerna/otplease": "3.18.5", - "@lerna/run-lifecycle": "3.16.2", - "figgy-pudding": "^3.5.1", - "fs-extra": "^8.1.0", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2", - "pify": "^4.0.1", - "read-package-json": "^2.0.13" - } - }, - "@lerna/npm-run-script": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/npm-run-script/download/@lerna/npm-run-script-3.16.5.tgz", - "integrity": "sha1-nC7IJFOibAtG7cC7fBWBbIIfXBU=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "@lerna/get-npm-exec-opts": "3.13.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/otplease": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/otplease/download/@lerna/otplease-3.18.5.tgz", - "integrity": "sha1-t3uOdgtAq62fdljZiPPqd9T9AjE=", - "dev": true, - "requires": { - "@lerna/prompt": "3.18.5", - "figgy-pudding": "^3.5.1" - } - }, - "@lerna/output": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/output/download/@lerna/output-3.13.0.tgz", - "integrity": "sha1-Pe18yQiyephyIopjDZUK7a56SYk=", - "dev": true, - "requires": { - "npmlog": "^4.1.2" - } - }, - "@lerna/pack-directory": { - "version": "3.16.4", - "resolved": "https://registry.npm.taobao.org/@lerna/pack-directory/download/@lerna/pack-directory-3.16.4.tgz", - "integrity": "sha1-Pq5fkb31rP4DhFEO1T+t3EwHRpM=", - "dev": true, - "requires": { - "@lerna/get-packed": "3.16.0", - "@lerna/package": "3.16.0", - "@lerna/run-lifecycle": "3.16.2", - "figgy-pudding": "^3.5.1", - "npm-packlist": "^1.4.4", - "npmlog": "^4.1.2", - "tar": "^4.4.10", - "temp-write": "^3.4.0" - } - }, - "@lerna/package": { - "version": "3.16.0", - "resolved": "https://registry.npm.taobao.org/@lerna/package/download/@lerna/package-3.16.0.tgz", - "integrity": "sha1-fgpG5Gl+2LipwU1Zx/iQ4NOLoTw=", - "dev": true, - "requires": { - "load-json-file": "^5.3.0", - "npm-package-arg": "^6.1.0", - "write-pkg": "^3.1.0" - } - }, - "@lerna/package-graph": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/package-graph/download/@lerna/package-graph-3.18.5.tgz", - "integrity": "sha1-x0Di6jV40FnlUWM+lQaQgxuUH2s=", - "dev": true, - "requires": { - "@lerna/prerelease-id-from-version": "3.16.0", - "@lerna/validation-error": "3.13.0", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2", - "semver": "^6.2.0" - } - }, - "@lerna/prerelease-id-from-version": { - "version": "3.16.0", - "resolved": "https://registry.npm.taobao.org/@lerna/prerelease-id-from-version/download/@lerna/prerelease-id-from-version-3.16.0.tgz", - "integrity": "sha1-skv6eJ9eG6q5FNewi6rpt719g6E=", - "dev": true, - "requires": { - "semver": "^6.2.0" - } - }, - "@lerna/profiler": { - "version": "3.20.0", - "resolved": "https://registry.npm.taobao.org/@lerna/profiler/download/@lerna/profiler-3.20.0.tgz", - "integrity": "sha1-D23CNvTqj56l81jGcDMFpPMq0FE=", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "fs-extra": "^8.1.0", - "npmlog": "^4.1.2", - "upath": "^1.2.0" - } - }, - "@lerna/project": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/project/download/@lerna/project-3.21.0.tgz", - "integrity": "sha1-XXhNLRDFYaAPIDILzbBAmXwQUC0=", - "dev": true, - "requires": { - "@lerna/package": "3.16.0", - "@lerna/validation-error": "3.13.0", - "cosmiconfig": "^5.1.0", - "dedent": "^0.7.0", - "dot-prop": "^4.2.0", - "glob-parent": "^5.0.0", - "globby": "^9.2.0", - "load-json-file": "^5.3.0", - "npmlog": "^4.1.2", - "p-map": "^2.1.0", - "resolve-from": "^4.0.0", - "write-json-file": "^3.2.0" - } - }, - "@lerna/prompt": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/prompt/download/@lerna/prompt-3.18.5.tgz", - "integrity": "sha1-YozVRfIliH0GBJGrld+JnPxSGKE=", - "dev": true, - "requires": { - "inquirer": "^6.2.0", - "npmlog": "^4.1.2" - } - }, - "@lerna/publish": { - "version": "3.22.1", - "resolved": "https://registry.npm.taobao.org/@lerna/publish/download/@lerna/publish-3.22.1.tgz", - "integrity": "sha1-tPfOP7oemvsovkofPYgiImm6lRk=", - "dev": true, - "requires": { - "@evocateur/libnpmaccess": "^3.1.2", - "@evocateur/npm-registry-fetch": "^4.0.0", - "@evocateur/pacote": "^9.6.3", - "@lerna/check-working-tree": "3.16.5", - "@lerna/child-process": "3.16.5", - "@lerna/collect-updates": "3.20.0", - "@lerna/command": "3.21.0", - "@lerna/describe-ref": "3.16.5", - "@lerna/log-packed": "3.16.0", - "@lerna/npm-conf": "3.16.0", - "@lerna/npm-dist-tag": "3.18.5", - "@lerna/npm-publish": "3.18.5", - "@lerna/otplease": "3.18.5", - "@lerna/output": "3.13.0", - "@lerna/pack-directory": "3.16.4", - "@lerna/prerelease-id-from-version": "3.16.0", - "@lerna/prompt": "3.18.5", - "@lerna/pulse-till-done": "3.13.0", - "@lerna/run-lifecycle": "3.16.2", - "@lerna/run-topologically": "3.18.5", - "@lerna/validation-error": "3.13.0", - "@lerna/version": "3.22.1", - "figgy-pudding": "^3.5.1", - "fs-extra": "^8.1.0", - "npm-package-arg": "^6.1.0", - "npmlog": "^4.1.2", - "p-finally": "^1.0.0", - "p-map": "^2.1.0", - "p-pipe": "^1.2.0", - "semver": "^6.2.0" - } - }, - "@lerna/pulse-till-done": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/pulse-till-done/download/@lerna/pulse-till-done-3.13.0.tgz", - "integrity": "sha1-yOnOW6+vENkwpn1+0My12Vj+ARA=", - "dev": true, - "requires": { - "npmlog": "^4.1.2" - } - }, - "@lerna/query-graph": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/query-graph/download/@lerna/query-graph-3.18.5.tgz", - "integrity": "sha1-30gwu1FVJzADvzXo3aHDLQknvYY=", - "dev": true, - "requires": { - "@lerna/package-graph": "3.18.5", - "figgy-pudding": "^3.5.1" - } - }, - "@lerna/resolve-symlink": { - "version": "3.16.0", - "resolved": "https://registry.npm.taobao.org/@lerna/resolve-symlink/download/@lerna/resolve-symlink-3.16.0.tgz", - "integrity": "sha1-N/xwlfq9vPMXwm63Tg0L3o79I4Y=", - "dev": true, - "requires": { - "fs-extra": "^8.1.0", - "npmlog": "^4.1.2", - "read-cmd-shim": "^1.0.1" - } - }, - "@lerna/rimraf-dir": { - "version": "3.16.5", - "resolved": "https://registry.npm.taobao.org/@lerna/rimraf-dir/download/@lerna/rimraf-dir-3.16.5.tgz", - "integrity": "sha1-BDFqtf/SkJZXqvOI6lAsuMLyCgk=", - "dev": true, - "requires": { - "@lerna/child-process": "3.16.5", - "npmlog": "^4.1.2", - "path-exists": "^3.0.0", - "rimraf": "^2.6.2" - } - }, - "@lerna/run": { - "version": "3.21.0", - "resolved": "https://registry.npm.taobao.org/@lerna/run/download/@lerna/run-3.21.0.tgz", - "integrity": "sha1-KjXshJeeTW5CR0/hSNMuXeHKyJE=", - "dev": true, - "requires": { - "@lerna/command": "3.21.0", - "@lerna/filter-options": "3.20.0", - "@lerna/npm-run-script": "3.16.5", - "@lerna/output": "3.13.0", - "@lerna/profiler": "3.20.0", - "@lerna/run-topologically": "3.18.5", - "@lerna/timer": "3.13.0", - "@lerna/validation-error": "3.13.0", - "p-map": "^2.1.0" - } - }, - "@lerna/run-lifecycle": { - "version": "3.16.2", - "resolved": "https://registry.npm.taobao.org/@lerna/run-lifecycle/download/@lerna/run-lifecycle-3.16.2.tgz", - "integrity": "sha1-Z7KI+OqWTbnqT7H7x3FdW7sLzgA=", - "dev": true, - "requires": { - "@lerna/npm-conf": "3.16.0", - "figgy-pudding": "^3.5.1", - "npm-lifecycle": "^3.1.2", - "npmlog": "^4.1.2" - } - }, - "@lerna/run-topologically": { - "version": "3.18.5", - "resolved": "https://registry.npm.taobao.org/@lerna/run-topologically/download/@lerna/run-topologically-3.18.5.tgz", - "integrity": "sha1-PNY52iDpZ9dnLLiNsPdWuS8v38M=", - "dev": true, - "requires": { - "@lerna/query-graph": "3.18.5", - "figgy-pudding": "^3.5.1", - "p-queue": "^4.0.0" - } - }, - "@lerna/symlink-binary": { - "version": "3.17.0", - "resolved": "https://registry.npm.taobao.org/@lerna/symlink-binary/download/@lerna/symlink-binary-3.17.0.tgz", - "integrity": "sha1-j4AxswmGOBSIPT8AmHf4Ljiu9Fo=", - "dev": true, - "requires": { - "@lerna/create-symlink": "3.16.2", - "@lerna/package": "3.16.0", - "fs-extra": "^8.1.0", - "p-map": "^2.1.0" - } - }, - "@lerna/symlink-dependencies": { - "version": "3.17.0", - "resolved": "https://registry.npm.taobao.org/@lerna/symlink-dependencies/download/@lerna/symlink-dependencies-3.17.0.tgz", - "integrity": "sha1-SNY2DphYZaDlbNi1GzCKUmMIeEo=", - "dev": true, - "requires": { - "@lerna/create-symlink": "3.16.2", - "@lerna/resolve-symlink": "3.16.0", - "@lerna/symlink-binary": "3.17.0", - "fs-extra": "^8.1.0", - "p-finally": "^1.0.0", - "p-map": "^2.1.0", - "p-map-series": "^1.0.0" - } - }, - "@lerna/timer": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/timer/download/@lerna/timer-3.13.0.tgz", - "integrity": "sha1-vNCQRVHbFuCDZNbBjl4hYPyHB4E=", - "dev": true - }, - "@lerna/validation-error": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/validation-error/download/@lerna/validation-error-3.13.0.tgz", - "integrity": "sha1-yGuPB8WrlTn3db2KVJdukm83WcM=", - "dev": true, - "requires": { - "npmlog": "^4.1.2" - } - }, - "@lerna/version": { - "version": "3.22.1", - "resolved": "https://registry.npm.taobao.org/@lerna/version/download/@lerna/version-3.22.1.tgz", - "integrity": "sha1-mAWpJHpH7mLWuBvZ+l+3KLJLWeI=", - "dev": true, - "requires": { - "@lerna/check-working-tree": "3.16.5", - "@lerna/child-process": "3.16.5", - "@lerna/collect-updates": "3.20.0", - "@lerna/command": "3.21.0", - "@lerna/conventional-commits": "3.22.0", - "@lerna/github-client": "3.22.0", - "@lerna/gitlab-client": "3.15.0", - "@lerna/output": "3.13.0", - "@lerna/prerelease-id-from-version": "3.16.0", - "@lerna/prompt": "3.18.5", - "@lerna/run-lifecycle": "3.16.2", - "@lerna/run-topologically": "3.18.5", - "@lerna/validation-error": "3.13.0", - "chalk": "^2.3.1", - "dedent": "^0.7.0", - "load-json-file": "^5.3.0", - "minimatch": "^3.0.4", - "npmlog": "^4.1.2", - "p-map": "^2.1.0", - "p-pipe": "^1.2.0", - "p-reduce": "^1.0.0", - "p-waterfall": "^1.0.0", - "semver": "^6.2.0", - "slash": "^2.0.0", - "temp-write": "^3.4.0", - "write-json-file": "^3.2.0" - } - }, - "@lerna/write-log-file": { - "version": "3.13.0", - "resolved": "https://registry.npm.taobao.org/@lerna/write-log-file/download/@lerna/write-log-file-3.13.0.tgz", - "integrity": "sha1-t42eTPwTSai+ZNkTJMTIGZ6CKiY=", - "dev": true, - "requires": { - "npmlog": "^4.1.2", - "write-file-atomic": "^2.3.0" - } - }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/@mrmlnc/readdir-enhanced/download/@mrmlnc/readdir-enhanced-2.2.1.tgz", - "integrity": "sha1-UkryQNGjYFJ7cwR17PoTRKpUDd4=", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npm.taobao.org/@nodelib/fs.stat/download/@nodelib/fs.stat-1.1.3.tgz", - "integrity": "sha1-K1o6s/kYzKSKjHVMCBaOPwPrphs=", - "dev": true - }, - "@octokit/auth-token": { - "version": "2.4.2", - "resolved": "https://registry.npm.taobao.org/@octokit/auth-token/download/@octokit/auth-token-2.4.2.tgz", - "integrity": "sha1-ENCul5sQD6a3L6Do5j4n5tDb/4o=", - "dev": true, - "requires": { - "@octokit/types": "^5.0.0" - } - }, - "@octokit/endpoint": { - "version": "6.0.8", - "resolved": "https://registry.npm.taobao.org/@octokit/endpoint/download/@octokit/endpoint-6.0.8.tgz", - "integrity": "sha1-kbB+I2/baZKcZ4xkOfelYNxgWKw=", - "dev": true, - "requires": { - "@octokit/types": "^5.0.0", - "is-plain-object": "^5.0.0", - "universal-user-agent": "^6.0.0" - }, - "dependencies": { - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-5.0.0.tgz", - "integrity": "sha1-RCf1CrNCnpAl6n1S6QQ6nvQVk0Q=", - "dev": true - }, - "universal-user-agent": { - "version": "6.0.0", - "resolved": "https://registry.npm.taobao.org/universal-user-agent/download/universal-user-agent-6.0.0.tgz", - "integrity": "sha1-M4H4UDslHA2c0hvB3pOeyd9UgO4=", - "dev": true - } - } - }, - "@octokit/plugin-enterprise-rest": { - "version": "6.0.1", - "resolved": "https://registry.npm.taobao.org/@octokit/plugin-enterprise-rest/download/@octokit/plugin-enterprise-rest-6.0.1.tgz", - "integrity": "sha1-4HiWc5YY2rjafUB3xlgAN3X5VDc=", - "dev": true - }, - "@octokit/plugin-paginate-rest": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/@octokit/plugin-paginate-rest/download/@octokit/plugin-paginate-rest-1.1.2.tgz", - "integrity": "sha1-AEFwrPjCvlNauiZyeGfWkve0iPw=", - "dev": true, - "requires": { - "@octokit/types": "^2.0.1" - }, - "dependencies": { - "@octokit/types": { - "version": "2.16.2", - "resolved": "https://registry.npm.taobao.org/@octokit/types/download/@octokit/types-2.16.2.tgz", - "integrity": "sha1-TF+No8b+zz2hgRrvZ4/aA+2sNdI=", - "dev": true, - "requires": { - "@types/node": ">= 8" - } - } - } - }, - "@octokit/plugin-request-log": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/@octokit/plugin-request-log/download/@octokit/plugin-request-log-1.0.2.tgz?cache=0&sync_timestamp=1603481907939&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40octokit%2Fplugin-request-log%2Fdownload%2F%40octokit%2Fplugin-request-log-1.0.2.tgz", - "integrity": "sha1-OU1Z7HNM0vEiQx+68FCZhh7OPEQ=", - "dev": true - }, - "@octokit/plugin-rest-endpoint-methods": { - "version": "2.4.0", - "resolved": "https://registry.npm.taobao.org/@octokit/plugin-rest-endpoint-methods/download/@octokit/plugin-rest-endpoint-methods-2.4.0.tgz", - "integrity": "sha1-Mojs9UgfaMSU3QYC/BVAeln69h4=", - "dev": true, - "requires": { - "@octokit/types": "^2.0.1", - "deprecation": "^2.3.1" - }, - "dependencies": { - "@octokit/types": { - "version": "2.16.2", - "resolved": "https://registry.npm.taobao.org/@octokit/types/download/@octokit/types-2.16.2.tgz", - "integrity": "sha1-TF+No8b+zz2hgRrvZ4/aA+2sNdI=", - "dev": true, - "requires": { - "@types/node": ">= 8" - } - } - } - }, - "@octokit/request": { - "version": "5.4.9", - "resolved": "https://registry.npm.taobao.org/@octokit/request/download/@octokit/request-5.4.9.tgz?cache=0&sync_timestamp=1600012764030&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40octokit%2Frequest%2Fdownload%2F%40octokit%2Frequest-5.4.9.tgz", - "integrity": "sha1-CkbxG4I1GzQW0xVyYa2bFVjEM2U=", - "dev": true, - "requires": { - "@octokit/endpoint": "^6.0.1", - "@octokit/request-error": "^2.0.0", - "@octokit/types": "^5.0.0", - "deprecation": "^2.0.0", - "is-plain-object": "^5.0.0", - "node-fetch": "^2.6.1", - "once": "^1.4.0", - "universal-user-agent": "^6.0.0" - }, - "dependencies": { - "@octokit/request-error": { - "version": "2.0.2", - "resolved": "https://registry.npm.taobao.org/@octokit/request-error/download/@octokit/request-error-2.0.2.tgz", - "integrity": "sha1-Dna4P12P3aHbmQJ+pfYXwua6ntA=", - "dev": true, - "requires": { - "@octokit/types": "^5.0.1", - "deprecation": "^2.0.0", - "once": "^1.4.0" - } - }, - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-5.0.0.tgz", - "integrity": "sha1-RCf1CrNCnpAl6n1S6QQ6nvQVk0Q=", - "dev": true - }, - "universal-user-agent": { - "version": "6.0.0", - "resolved": "https://registry.npm.taobao.org/universal-user-agent/download/universal-user-agent-6.0.0.tgz", - "integrity": "sha1-M4H4UDslHA2c0hvB3pOeyd9UgO4=", - "dev": true - } - } - }, - "@octokit/request-error": { - "version": "1.2.1", - "resolved": "https://registry.npm.taobao.org/@octokit/request-error/download/@octokit/request-error-1.2.1.tgz", - "integrity": "sha1-7eBxTHc/MjR1dsJWSdwBOuazGAE=", - "dev": true, - "requires": { - "@octokit/types": "^2.0.0", - "deprecation": "^2.0.0", - "once": "^1.4.0" - }, - "dependencies": { - "@octokit/types": { - "version": "2.16.2", - "resolved": "https://registry.npm.taobao.org/@octokit/types/download/@octokit/types-2.16.2.tgz", - "integrity": "sha1-TF+No8b+zz2hgRrvZ4/aA+2sNdI=", - "dev": true, - "requires": { - "@types/node": ">= 8" - } - } - } - }, - "@octokit/rest": { - "version": "16.43.2", - "resolved": "https://registry.npm.taobao.org/@octokit/rest/download/@octokit/rest-16.43.2.tgz?cache=0&sync_timestamp=1600063003790&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40octokit%2Frest%2Fdownload%2F%40octokit%2Frest-16.43.2.tgz", - "integrity": "sha1-xTQm8eHRBE3ulnAj4yecUJk92Rs=", - "dev": true, - "requires": { - "@octokit/auth-token": "^2.4.0", - "@octokit/plugin-paginate-rest": "^1.1.1", - "@octokit/plugin-request-log": "^1.0.0", - "@octokit/plugin-rest-endpoint-methods": "2.4.0", - "@octokit/request": "^5.2.0", - "@octokit/request-error": "^1.0.2", - "atob-lite": "^2.0.0", - "before-after-hook": "^2.0.0", - "btoa-lite": "^1.0.0", - "deprecation": "^2.0.0", - "lodash.get": "^4.4.2", - "lodash.set": "^4.3.2", - "lodash.uniq": "^4.5.0", - "octokit-pagination-methods": "^1.1.0", - "once": "^1.4.0", - "universal-user-agent": "^4.0.0" - } - }, - "@octokit/types": { - "version": "5.5.0", - "resolved": "https://registry.npm.taobao.org/@octokit/types/download/@octokit/types-5.5.0.tgz", - "integrity": "sha1-5fBujbISRsoQKqKERM2xOuF6E5s=", - "dev": true, - "requires": { - "@types/node": ">= 8" - } - }, - "@types/glob": { - "version": "7.1.3", - "resolved": "https://registry.npm.taobao.org/@types/glob/download/@types/glob-7.1.3.tgz?cache=0&sync_timestamp=1596838206290&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fglob%2Fdownload%2F%40types%2Fglob-7.1.3.tgz", - "integrity": "sha1-5rqA82t9qtLGhazZJmOC5omFwYM=", - "dev": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npm.taobao.org/@types/minimatch/download/@types/minimatch-3.0.3.tgz?cache=0&sync_timestamp=1596839141589&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fminimatch%2Fdownload%2F%40types%2Fminimatch-3.0.3.tgz", - "integrity": "sha1-PcoOPzOyAPx9ETnAzZbBJoyt/Z0=", - "dev": true - }, - "@types/minimist": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/@types/minimist/download/@types/minimist-1.2.0.tgz", - "integrity": "sha1-aaI6OtKcrwCX8G7aWbNh7i8GOfY=", - "dev": true - }, - "@types/node": { - "version": "14.14.5", - "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-14.14.5.tgz?cache=0&sync_timestamp=1603753296174&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.14.5.tgz", - "integrity": "sha1-6S07j3ZYPvomwaY6IcnTwRQ9qik=", - "dev": true - }, - "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npm.taobao.org/@types/normalize-package-data/download/@types/normalize-package-data-2.4.0.tgz?cache=0&sync_timestamp=1596839391651&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnormalize-package-data%2Fdownload%2F%40types%2Fnormalize-package-data-2.4.0.tgz", - "integrity": "sha1-5IbQ2XOW15vu3QpuM/RTT/a0lz4=", - "dev": true - }, - "@zkochan/cmd-shim": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/@zkochan/cmd-shim/download/@zkochan/cmd-shim-3.1.0.tgz", - "integrity": "sha1-KrjtgfW7VFKoXyV1jrm4aBmC/S4=", - "dev": true, - "requires": { - "is-windows": "^1.0.0", - "mkdirp-promise": "^5.0.1", - "mz": "^2.5.0" - } - }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npm.taobao.org/JSONStream/download/JSONStream-1.3.5.tgz", - "integrity": "sha1-MgjB8I06TZkmGrZPkjArwV4RHKA=", - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/abbrev/download/abbrev-1.1.1.tgz", - "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg=" - }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npm.taobao.org/agent-base/download/agent-base-4.3.0.tgz?cache=0&sync_timestamp=1603480100923&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fagent-base%2Fdownload%2Fagent-base-4.3.0.tgz", - "integrity": "sha1-gWXwHENgCbzK0LHRIvBe13Dvxu4=", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - }, - "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npm.taobao.org/agentkeepalive/download/agentkeepalive-3.5.2.tgz", - "integrity": "sha1-oROSTdP6JKC8O3gQjEUMKr7gD2c=", - "dev": true, - "requires": { - "humanize-ms": "^1.2.1" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.12.6.tgz?cache=0&sync_timestamp=1603561547443&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fajv%2Fdownload%2Fajv-6.12.6.tgz", - "integrity": "sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ=", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-3.2.0.tgz", - "integrity": "sha1-h4C5j/nb9WOBUtHx/lwde0RCl2s=", - "dev": true - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz?cache=0&sync_timestamp=1601839122515&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "any-promise": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/any-promise/download/any-promise-1.3.0.tgz?cache=0&sync_timestamp=1589682733115&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fany-promise%2Fdownload%2Fany-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", - "dev": true - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/aproba/download/aproba-1.2.0.tgz", - "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=" - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npm.taobao.org/are-we-there-yet/download/are-we-there-yet-1.1.5.tgz", - "integrity": "sha1-SzXClE8GKov82mZBB2A1D+nd/CE=", - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz?cache=0&sync_timestamp=1598649734444&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fargparse%2Fdownload%2Fargparse-1.0.10.tgz", - "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/arr-diff/download/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/arr-flatten/download/arr-flatten-1.1.0.tgz", - "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/arr-union/download/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-differ": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/array-differ/download/array-differ-2.1.0.tgz", - "integrity": "sha1-S5wcPxS5BnVwgpJXaeirkE9IAbE=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/array-find-index/download/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-ify": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/array-ify/download/array-ify-1.0.0.tgz", - "integrity": "sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/array-union/download/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/array-uniq/download/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/arrify/download/arrify-1.0.1.tgz?cache=0&sync_timestamp=1589684737833&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farrify%2Fdownload%2Farrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npm.taobao.org/asn1/download/asn1-0.2.4.tgz", - "integrity": "sha1-jSR136tVO7M+d7VOWeiAu4ziMTY=", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/assert-plus/download/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npm.taobao.org/asynckit/download/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", - "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=", - "dev": true - }, - "atob-lite": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/atob-lite/download/atob-lite-2.0.0.tgz", - "integrity": "sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY=", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz?cache=0&sync_timestamp=1589682812085&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faws-sign2%2Fdownload%2Faws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "1.10.1", - "resolved": "https://registry.npm.taobao.org/aws4/download/aws4-1.10.1.tgz?cache=0&sync_timestamp=1597236947743&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faws4%2Fdownload%2Faws4-1.10.1.tgz", - "integrity": "sha1-4eguTz6Zniz9YbFhKA0WoRH4ZCg=" - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npm.taobao.org/base/download/base-0.11.2.tgz", - "integrity": "sha1-e95c7RRbbVUakNuH+DxVi060io8=", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/bcrypt-pbkdf/download/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "before-after-hook": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/before-after-hook/download/before-after-hook-2.1.0.tgz", - "integrity": "sha1-tsA0h/ROJCAN0wyl5qGXnF0vtjU=", - "dev": true - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npm.taobao.org/block-stream/download/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "optional": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz?cache=0&sync_timestamp=1589682744631&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbluebird%2Fdownload%2Fbluebird-3.7.2.tgz", - "integrity": "sha1-nyKcFb4nJFT/qXOs4NvueaGww28=", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz?cache=0&sync_timestamp=1601898189928&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrace-expansion%2Fdownload%2Fbrace-expansion-1.1.11.tgz", - "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npm.taobao.org/braces/download/braces-2.3.2.tgz", - "integrity": "sha1-WXn9PxTNUxVl5fot8av/8d+u5yk=", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "btoa-lite": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/btoa-lite/download/btoa-lite-1.0.0.tgz", - "integrity": "sha1-M3dm2hWAEhD92VbCLpxokaudAzc=", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz", - "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/builtins/download/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "byline": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/byline/download/byline-5.0.0.tgz", - "integrity": "sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE=", - "dev": true - }, - "byte-size": { - "version": "5.0.1", - "resolved": "https://registry.npm.taobao.org/byte-size/download/byte-size-5.0.1.tgz", - "integrity": "sha1-S2UQOaXs2Wdn5xo9ftOA5IvtQZE=", - "dev": true - }, - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-12.0.4.tgz", - "integrity": "sha1-ZovL0QWutfHZL+JVcOyVJcj6pAw=", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/cache-base/download/cache-base-1.0.1.tgz", - "integrity": "sha1-Cn9GQWgxyLZi7jb+TnxZ129marI=", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/call-me-maybe/download/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", - "dev": true - }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/caller-callsite/download/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", - "dev": true, - "requires": { - "callsites": "^2.0.0" - } - }, - "caller-path": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/caller-path/download/caller-path-2.0.0.tgz", - "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", - "dev": true, - "requires": { - "caller-callsite": "^2.0.0" - } - }, - "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/callsites/download/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz?cache=0&sync_timestamp=1602350083472&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-5.3.1.tgz", - "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=", - "dev": true - }, - "camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-6.2.2.tgz", - "integrity": "sha1-XnVda6UaoiPsfT1S8ld4IQ+dw8A=", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npm.taobao.org/chardet/download/chardet-0.7.0.tgz?cache=0&sync_timestamp=1601032467034&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchardet%2Fdownload%2Fchardet-0.7.0.tgz", - "integrity": "sha1-kAlISfCTfy7twkJdDSip5fDLrZ4=", - "dev": true - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npm.taobao.org/chownr/download/chownr-1.1.4.tgz", - "integrity": "sha1-b8nXtC0ypYNZYzdmbn0ICE2izGs=" - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ci-info/download/ci-info-2.0.0.tgz", - "integrity": "sha1-Z6npZL4xpR4V5QENWObxKDQAL0Y=", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npm.taobao.org/class-utils/download/class-utils-0.3.6.tgz", - "integrity": "sha1-+TNprouafOAv1B+q0MqDAzGQxGM=", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/cli-cursor/download/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "^2.0.0" - } - }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npm.taobao.org/cli-width/download/cli-width-2.2.1.tgz", - "integrity": "sha1-sEM9C06chH7xiGik7xb9X8gnHEg=", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-5.0.0.tgz?cache=0&sync_timestamp=1602861367442&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-5.0.0.tgz", - "integrity": "sha1-3u/P2y6AB4SqNPRvoI4GhRx7u8U=", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", - "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", - "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-5.2.0.tgz", - "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npm.taobao.org/clone/download/clone-1.0.4.tgz?cache=0&sync_timestamp=1589682821772&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fclone%2Fdownload%2Fclone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/clone-deep/download/clone-deep-4.0.1.tgz", - "integrity": "sha1-wZ/Zvbv4WUK0/ZechNz31fB8I4c=", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/code-point-at/download/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "columnify": { - "version": "1.5.4", - "resolved": "https://registry.npm.taobao.org/columnify/download/columnify-1.5.4.tgz", - "integrity": "sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs=", - "dev": true, - "requires": { - "strip-ansi": "^3.0.0", - "wcwidth": "^1.0.0" - } - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npm.taobao.org/combined-stream/download/combined-stream-1.0.8.tgz", - "integrity": "sha1-w9RaizT9cwYxoRCoolIGgrMdWn8=", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "compare-func": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/compare-func/download/compare-func-2.0.0.tgz", - "integrity": "sha1-+2XnXtvd/S5WhVTotbBf/3pR/LM=", - "dev": true, - "requires": { - "array-ify": "^1.0.0", - "dot-prop": "^5.1.0" - }, - "dependencies": { - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npm.taobao.org/dot-prop/download/dot-prop-5.3.0.tgz", - "integrity": "sha1-kMzOcIzZzYLMTcjD3dmr3VWyDog=", - "dev": true, - "requires": { - "is-obj": "^2.0.0" - } - }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/is-obj/download/is-obj-2.0.0.tgz", - "integrity": "sha1-Rz+wXZc3BeP9liBUUBjKjiLvSYI=", - "dev": true - } - } - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/component-emitter/download/component-emitter-1.3.0.tgz", - "integrity": "sha1-FuQHD7qK4ptnnyIVhT7hgasuq8A=", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npm.taobao.org/concat-stream/download/concat-stream-1.6.2.tgz?cache=0&sync_timestamp=1589682751334&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconcat-stream%2Fdownload%2Fconcat-stream-1.6.2.tgz", - "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "config-chain": { - "version": "1.1.12", - "resolved": "https://registry.npm.taobao.org/config-chain/download/config-chain-1.1.12.tgz", - "integrity": "sha1-D96NCRIA616AjK8l/mGMAvSOTvo=", - "dev": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/console-control-strings/download/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "conventional-changelog-angular": { - "version": "5.0.11", - "resolved": "https://registry.npm.taobao.org/conventional-changelog-angular/download/conventional-changelog-angular-5.0.11.tgz?cache=0&sync_timestamp=1596848973874&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconventional-changelog-angular%2Fdownload%2Fconventional-changelog-angular-5.0.11.tgz", - "integrity": "sha1-maPKFuSlMF4MLC+uPvdP12Mfw/s=", - "dev": true, - "requires": { - "compare-func": "^2.0.0", - "q": "^1.5.1" - } - }, - "conventional-changelog-core": { - "version": "3.2.3", - "resolved": "https://registry.npm.taobao.org/conventional-changelog-core/download/conventional-changelog-core-3.2.3.tgz?cache=0&sync_timestamp=1597209492467&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconventional-changelog-core%2Fdownload%2Fconventional-changelog-core-3.2.3.tgz", - "integrity": "sha1-sxQQhW9DHIRwhqfctNLKGEp9iPs=", - "dev": true, - "requires": { - "conventional-changelog-writer": "^4.0.6", - "conventional-commits-parser": "^3.0.3", - "dateformat": "^3.0.0", - "get-pkg-repo": "^1.0.0", - "git-raw-commits": "2.0.0", - "git-remote-origin-url": "^2.0.0", - "git-semver-tags": "^2.0.3", - "lodash": "^4.2.1", - "normalize-package-data": "^2.3.5", - "q": "^1.5.1", - "read-pkg": "^3.0.0", - "read-pkg-up": "^3.0.0", - "through2": "^3.0.0" - }, - "dependencies": { - "through2": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/through2/download/through2-3.0.2.tgz", - "integrity": "sha1-mfiJMc/HYex2eLQdXXM2tbage/Q=", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - } - } - }, - "conventional-changelog-preset-loader": { - "version": "2.3.4", - "resolved": "https://registry.npm.taobao.org/conventional-changelog-preset-loader/download/conventional-changelog-preset-loader-2.3.4.tgz", - "integrity": "sha1-FKhVq7/9WQJ/1gJYHx802YYupEw=", - "dev": true - }, - "conventional-changelog-writer": { - "version": "4.0.17", - "resolved": "https://registry.npm.taobao.org/conventional-changelog-writer/download/conventional-changelog-writer-4.0.17.tgz?cache=0&sync_timestamp=1596851643808&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconventional-changelog-writer%2Fdownload%2Fconventional-changelog-writer-4.0.17.tgz", - "integrity": "sha1-R1OqoTi/WqWcCydMtZN+/NJyLiE=", - "dev": true, - "requires": { - "compare-func": "^2.0.0", - "conventional-commits-filter": "^2.0.6", - "dateformat": "^3.0.0", - "handlebars": "^4.7.6", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.15", - "meow": "^7.0.0", - "semver": "^6.0.0", - "split": "^1.0.0", - "through2": "^3.0.0" - }, - "dependencies": { - "through2": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/through2/download/through2-3.0.2.tgz", - "integrity": "sha1-mfiJMc/HYex2eLQdXXM2tbage/Q=", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - } - } - }, - "conventional-commits-filter": { - "version": "2.0.6", - "resolved": "https://registry.npm.taobao.org/conventional-commits-filter/download/conventional-commits-filter-2.0.6.tgz", - "integrity": "sha1-CTXhJAxcp2mDKa/+4bakbTMyTEw=", - "dev": true, - "requires": { - "lodash.ismatch": "^4.4.0", - "modify-values": "^1.0.0" - } - }, - "conventional-commits-parser": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/conventional-commits-parser/download/conventional-commits-parser-3.1.0.tgz", - "integrity": "sha1-EBQGc9Xn71VyYzeRRWxdA7aei+Q=", - "dev": true, - "requires": { - "JSONStream": "^1.0.4", - "is-text-path": "^1.0.1", - "lodash": "^4.17.15", - "meow": "^7.0.0", - "split2": "^2.0.0", - "through2": "^3.0.0", - "trim-off-newlines": "^1.0.0" - }, - "dependencies": { - "through2": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/through2/download/through2-3.0.2.tgz", - "integrity": "sha1-mfiJMc/HYex2eLQdXXM2tbage/Q=", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "2 || 3" - } - } - } - }, - "conventional-recommended-bump": { - "version": "5.0.1", - "resolved": "https://registry.npm.taobao.org/conventional-recommended-bump/download/conventional-recommended-bump-5.0.1.tgz?cache=0&sync_timestamp=1597209492324&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconventional-recommended-bump%2Fdownload%2Fconventional-recommended-bump-5.0.1.tgz", - "integrity": "sha1-WvY5A5R7bgied3Z2ActZLKuxBro=", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "conventional-changelog-preset-loader": "^2.1.1", - "conventional-commits-filter": "^2.0.2", - "conventional-commits-parser": "^3.0.3", - "git-raw-commits": "2.0.0", - "git-semver-tags": "^2.0.3", - "meow": "^4.0.0", - "q": "^1.5.1" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-4.1.0.tgz?cache=0&sync_timestamp=1602350083472&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/concat-stream/download/concat-stream-2.0.0.tgz?cache=0&sync_timestamp=1589682751334&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fconcat-stream%2Fdownload%2Fconcat-stream-2.0.0.tgz", - "integrity": "sha1-QUz1r3kKSMYKub5FJ9VtXkETPLE=", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/meow/download/meow-4.0.1.tgz", - "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0" - } - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/minimist-options/download/minimist-options-3.0.2.tgz", - "integrity": "sha1-+6TIGRM54T7PTWG+sD8HAQPz2VQ=", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/quick-lru/download/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz?cache=0&sync_timestamp=1589682741447&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-3.6.0.tgz", - "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg=", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/redent/download/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/strip-indent/download/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/trim-newlines/download/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz", - "integrity": "sha1-kilzmMrjSTf8r9bsgTnBgFHwteA=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npm.taobao.org/copy-descriptor/download/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" - }, - "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npm.taobao.org/cosmiconfig/download/cosmiconfig-5.2.1.tgz?cache=0&sync_timestamp=1596310819353&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcosmiconfig%2Fdownload%2Fcosmiconfig-5.2.1.tgz", - "integrity": "sha1-BA9yaAnFked6F8CjYmykW08Wixo=", - "dev": true, - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-6.0.5.tgz", - "integrity": "sha1-Sl7Hxk364iw6FBJNus3uhG2Ay8Q=", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npm.taobao.org/currently-unhandled/download/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/cyclist/download/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true - }, - "d2-crud-x": { - "version": "2.12.0", - "resolved": "https://registry.npm.taobao.org/d2-crud-x/download/d2-crud-x-2.12.0.tgz", - "integrity": "sha1-XP2ritWhOxQdjdhdXwpx/IzrgnQ=", - "requires": { - "lodash.clonedeep": "^4.5.0", - "lodash.foreach": "^4.5.0", - "lodash.get": "^4.4.2", - "lodash.merge": "^4.5.0", - "lodash.set": "^4.3.2" - } - }, - "dargs": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/dargs/download/dargs-4.1.0.tgz", - "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npm.taobao.org/dashdash/download/dashdash-1.14.1.tgz?cache=0&sync_timestamp=1601073454623&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdashdash%2Fdownload%2Fdashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "dateformat": { - "version": "3.0.3", - "resolved": "https://registry.npm.taobao.org/dateformat/download/dateformat-3.0.3.tgz", - "integrity": "sha1-puN0maTZqc+F71hyBE1ikByYia4=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz?cache=0&sync_timestamp=1600502894812&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-3.1.0.tgz", - "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "debuglog": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/debuglog/download/debuglog-1.0.1.tgz", - "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=", - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/decamelize-keys/download/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - } - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npm.taobao.org/dedent/download/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npm.taobao.org/deep-extend/download/deep-extend-0.6.0.tgz", - "integrity": "sha1-xPp8lUBKF6nD6Mp+FTcxK3NjMKw=" - }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/defaults/download/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", - "dev": true, - "requires": { - "clone": "^1.0.2" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npm.taobao.org/define-properties/download/define-properties-1.1.3.tgz", - "integrity": "sha1-z4jabL7ib+bbcJT2HYcMvYTO6fE=", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-2.0.2.tgz", - "integrity": "sha1-1Flono1lS6d+AqgX+HENcCyxbp0=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/delayed-stream/download/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/delegates/download/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "deprecation": { - "version": "2.3.1", - "resolved": "https://registry.npm.taobao.org/deprecation/download/deprecation-2.3.1.tgz", - "integrity": "sha1-Y2jL20Cr8zc7UlrIfkomDDpwCRk=", - "dev": true - }, - "detect-indent": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/detect-indent/download/detect-indent-5.0.0.tgz", - "integrity": "sha1-OHHMCmoALow+Wzz38zYmRnXwa50=", - "dev": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/detect-libc/download/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=" - }, - "dezalgo": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/dezalgo/download/dezalgo-1.0.3.tgz", - "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", - "dev": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, - "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npm.taobao.org/dir-glob/download/dir-glob-2.2.2.tgz", - "integrity": "sha1-+gnwaUFTyJGLGLoN6vrpR2n8UMQ=", - "dev": true, - "requires": { - "path-type": "^3.0.0" - } - }, - "dot-prop": { - "version": "4.2.1", - "resolved": "https://registry.npm.taobao.org/dot-prop/download/dot-prop-4.2.1.tgz", - "integrity": "sha1-RYhBlKcfws2nHLtLzrOk3S9DO6Q=", - "dev": true, - "requires": { - "is-obj": "^1.0.0" - } - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npm.taobao.org/duplexer/download/duplexer-0.1.2.tgz", - "integrity": "sha1-Or5DrvODX4rgd9E23c4PJ2sEAOY=", - "dev": true - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npm.taobao.org/duplexify/download/duplexify-3.7.1.tgz", - "integrity": "sha1-Kk31MX9sz9kfhtb9JdjYoQO4gwk=", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npm.taobao.org/ecc-jsbn/download/ecc-jsbn-0.1.2.tgz?cache=0&sync_timestamp=1589682745945&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fecc-jsbn%2Fdownload%2Fecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz?cache=0&sync_timestamp=1603212180491&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Femoji-regex%2Fdownload%2Femoji-regex-7.0.3.tgz", - "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", - "dev": true - }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npm.taobao.org/encoding/download/encoding-0.1.13.tgz", - "integrity": "sha1-VldK/deR9UqOmyeFwFgqLSYhD6k=", - "dev": true, - "requires": { - "iconv-lite": "^0.6.2" - }, - "dependencies": { - "iconv-lite": { - "version": "0.6.2", - "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.6.2.tgz", - "integrity": "sha1-zhPRh1sMOmdL1qBLf3awGxtt7QE=", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } - } - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz", - "integrity": "sha1-WuZKX0UFe682JuwU2gyl5LJDHrA=", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "env-paths": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/env-paths/download/env-paths-2.2.0.tgz", - "integrity": "sha1-zcpVfcAJFSkX1hZuL+vh8DloXkM=", - "dev": true - }, - "envinfo": { - "version": "7.7.3", - "resolved": "https://registry.npm.taobao.org/envinfo/download/envinfo-7.7.3.tgz?cache=0&sync_timestamp=1598316397491&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenvinfo%2Fdownload%2Fenvinfo-7.7.3.tgz", - "integrity": "sha1-Sy2GIuPnNmr7gJGyPtlVaeoCCMw=", - "dev": true - }, - "err-code": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/err-code/download/err-code-1.1.2.tgz", - "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", - "dev": true - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npm.taobao.org/error-ex/download/error-ex-1.3.2.tgz", - "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.17.7.tgz?cache=0&sync_timestamp=1601502719982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.17.7.tgz", - "integrity": "sha1-pN5hsvZpifx0IWdsHLl4dXOs5Uw=", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npm.taobao.org/es-to-primitive/download/es-to-primitive-1.2.1.tgz", - "integrity": "sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo=", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npm.taobao.org/es6-promise/download/es6-promise-4.2.8.tgz", - "integrity": "sha1-TrIVlMlyvEBVPSduUQU5FD21Pgo=", - "dev": true - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/es6-promisify/download/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", - "dev": true, - "requires": { - "es6-promise": "^4.0.3" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz?cache=0&sync_timestamp=1589682833047&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fesprima%2Fdownload%2Fesprima-4.0.1.tgz", - "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=", - "dev": true - }, - "eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npm.taobao.org/eventemitter3/download/eventemitter3-3.1.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feventemitter3%2Fdownload%2Feventemitter3-3.1.2.tgz", - "integrity": "sha1-LT1I+cNGaY/Og6hdfWZOmFNd9uc=", - "dev": true - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/execa/download/execa-1.0.0.tgz", - "integrity": "sha1-xiNqW7TfbW8V6I5/AXeYIWdJ3dg=", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^4.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npm.taobao.org/expand-brackets/download/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502894812&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz?cache=0&sync_timestamp=1589682707348&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fextend%2Fdownload%2Fextend-3.0.2.tgz", - "integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo=" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", - "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/external-editor/download/external-editor-3.1.0.tgz", - "integrity": "sha1-ywP3QL764D6k0oPK7SdBqD8zVJU=", - "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", - "integrity": "sha1-rQD+TcYSqSMuhxhxHcXLWrAoVUM=", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/extsprintf/download/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-3.1.3.tgz", - "integrity": "sha1-On1WtVnWy8PrUSMlJE5hmmXGxSU=" - }, - "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npm.taobao.org/fast-glob/download/fast-glob-2.2.7.tgz?cache=0&sync_timestamp=1592291968616&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-glob%2Fdownload%2Ffast-glob-2.2.7.tgz", - "integrity": "sha1-aVOFfDr6R1//ku5gFdUtpwpM050=", - "dev": true, - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/is-glob/download/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM=" - }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.2.tgz", - "integrity": "sha1-tO7oFIq7Adzx0aw0Nn1Z4S+mHW4=", - "dev": true - }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/figures/download/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/fill-range/download/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz?cache=0&sync_timestamp=1597169842138&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-up%2Fdownload%2Ffind-up-3.0.0.tgz", - "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz", - "integrity": "sha1-jdfYc6G6vCB9lOrQwuDkQnbr8ug=", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/for-in/download/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npm.taobao.org/forever-agent/download/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npm.taobao.org/form-data/download/form-data-2.3.3.tgz", - "integrity": "sha1-3M5SwF9kTymManq5Nr1yTO/786Y=", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npm.taobao.org/fragment-cache/download/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npm.taobao.org/fs-extra/download/fs-extra-8.1.0.tgz?cache=0&sync_timestamp=1591229972229&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffs-extra%2Fdownload%2Ffs-extra-8.1.0.tgz", - "integrity": "sha1-SdQ8RaiM2Wd2aMt74bRu/bjS4cA=", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npm.taobao.org/fs-minipass/download/fs-minipass-1.2.7.tgz", - "integrity": "sha1-zP+FcIQef+QmVpPaiJNsVa7X98c=", - "requires": { - "minipass": "^2.6.0" - } - }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npm.taobao.org/fs-write-stream-atomic/download/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npm.taobao.org/fstream/download/fstream-1.0.12.tgz", - "integrity": "sha1-Touo7i1Ivk99DeUFRVVI6uWTIEU=", - "optional": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", - "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npm.taobao.org/gauge/download/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/genfun/download/genfun-5.0.0.tgz", - "integrity": "sha1-ndlxCgaQClxKW/V6yl2k5S/nZTc=", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-2.0.5.tgz", - "integrity": "sha1-T5RBKoLbMvNuOwuXQfipf+sDH34=", - "dev": true - }, - "get-pkg-repo": { - "version": "1.4.0", - "resolved": "https://registry.npm.taobao.org/get-pkg-repo/download/get-pkg-repo-1.4.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fget-pkg-repo%2Fdownload%2Fget-pkg-repo-1.4.0.tgz", - "integrity": "sha1-xztInAbYDMVTbCyFP54FIyBWly0=", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "meow": "^3.3.0", - "normalize-package-data": "^2.3.0", - "parse-github-repo-url": "^1.3.0", - "through2": "^2.0.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-2.1.1.tgz?cache=0&sync_timestamp=1602350083472&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-1.1.2.tgz?cache=0&sync_timestamp=1597169842138&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-up%2Fdownload%2Ffind-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npm.taobao.org/meow/download/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-2.2.0.tgz?cache=0&sync_timestamp=1598129182781&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse-json%2Fdownload%2Fparse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/path-type/download/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/read-pkg/download/read-pkg-1.1.0.tgz?cache=0&sync_timestamp=1589682810106&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fread-pkg%2Fdownload%2Fread-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/read-pkg-up/download/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/redent/download/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/strip-bom/download/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/strip-indent/download/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/trim-newlines/download/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - } - } - }, - "get-port": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/get-port/download/get-port-4.2.0.tgz", - "integrity": "sha1-43Nosehjt2KcQ8WjI2Jflc8ksRk=", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/get-stdin/download/get-stdin-4.0.1.tgz?cache=0&sync_timestamp=1599054261857&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fget-stdin%2Fdownload%2Fget-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/get-stream/download/get-stream-4.1.0.tgz?cache=0&sync_timestamp=1597056502934&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fget-stream%2Fdownload%2Fget-stream-4.1.0.tgz", - "integrity": "sha1-wbJVV189wh1Zv8ec09K0axw6VLU=", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npm.taobao.org/getpass/download/getpass-0.1.7.tgz?cache=0&sync_timestamp=1589682745510&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgetpass%2Fdownload%2Fgetpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "git-raw-commits": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/git-raw-commits/download/git-raw-commits-2.0.0.tgz", - "integrity": "sha1-2Srd90RAwUvMXIPszj+3+KeRGLU=", - "dev": true, - "requires": { - "dargs": "^4.0.1", - "lodash.template": "^4.0.2", - "meow": "^4.0.0", - "split2": "^2.0.0", - "through2": "^2.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-4.1.0.tgz?cache=0&sync_timestamp=1602350083472&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/meow/download/meow-4.0.1.tgz", - "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0" - } - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/minimist-options/download/minimist-options-3.0.2.tgz", - "integrity": "sha1-+6TIGRM54T7PTWG+sD8HAQPz2VQ=", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/quick-lru/download/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/redent/download/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/strip-indent/download/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/trim-newlines/download/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "git-remote-origin-url": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/git-remote-origin-url/download/git-remote-origin-url-2.0.0.tgz", - "integrity": "sha1-UoJlna4hBxRaERJhEq0yFuxfpl8=", - "dev": true, - "requires": { - "gitconfiglocal": "^1.0.0", - "pify": "^2.3.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "git-semver-tags": { - "version": "2.0.3", - "resolved": "https://registry.npm.taobao.org/git-semver-tags/download/git-semver-tags-2.0.3.tgz?cache=0&sync_timestamp=1597209495984&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgit-semver-tags%2Fdownload%2Fgit-semver-tags-2.0.3.tgz", - "integrity": "sha1-SJiKcYrPWTgA+ZYiqVKnfEBb+jQ=", - "dev": true, - "requires": { - "meow": "^4.0.0", - "semver": "^6.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-4.1.0.tgz?cache=0&sync_timestamp=1602350083472&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/camelcase-keys/download/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "dev": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "dev": true - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", - "dev": true - }, - "meow": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/meow/download/meow-4.0.1.tgz", - "integrity": "sha1-1IWY9vSxRy81v2MXqVlFrONH+XU=", - "dev": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0" - } - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/minimist-options/download/minimist-options-3.0.2.tgz", - "integrity": "sha1-+6TIGRM54T7PTWG+sD8HAQPz2VQ=", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/quick-lru/download/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", - "dev": true - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/redent/download/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "dev": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/strip-indent/download/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/trim-newlines/download/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", - "dev": true - } - } - }, - "git-up": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/git-up/download/git-up-4.0.2.tgz?cache=0&sync_timestamp=1596976398751&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgit-up%2Fdownload%2Fgit-up-4.0.2.tgz", - "integrity": "sha1-EMPXMQUbNm3BnT30VL/KP3eROnw=", - "dev": true, - "requires": { - "is-ssh": "^1.3.0", - "parse-url": "^5.0.0" - } - }, - "git-url-parse": { - "version": "11.4.0", - "resolved": "https://registry.npm.taobao.org/git-url-parse/download/git-url-parse-11.4.0.tgz?cache=0&sync_timestamp=1603394944331&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgit-url-parse%2Fdownload%2Fgit-url-parse-11.4.0.tgz", - "integrity": "sha1-8rsfKwDwVVJUDpWmLjE5mmOaaqY=", - "dev": true, - "requires": { - "git-up": "^4.0.0" - } - }, - "gitconfiglocal": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/gitconfiglocal/download/gitconfiglocal-1.0.0.tgz", - "integrity": "sha1-QdBF84UaXqiPA/JMocYXgRRGS5s=", - "dev": true, - "requires": { - "ini": "^1.3.2" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.6.tgz", - "integrity": "sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY=", - "requires": { - "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" - } - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-5.1.1.tgz", - "integrity": "sha1-tsHvQXxOVmPqSY8cRa+saRa7wik=", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npm.taobao.org/glob-to-regexp/download/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, - "globby": { - "version": "9.2.0", - "resolved": "https://registry.npm.taobao.org/globby/download/globby-9.2.0.tgz?cache=0&sync_timestamp=1591083812416&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobby%2Fdownload%2Fglobby-9.2.0.tgz", - "integrity": "sha1-/QKacGxwPSm90XD0tts6P3p8tj0=", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - } - }, - "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz?cache=0&sync_timestamp=1589682809142&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.4.tgz", - "integrity": "sha1-Ila94U02MpWMRl68ltxGfKB6Kfs=" - }, - "handlebars": { - "version": "4.7.6", - "resolved": "https://registry.npm.taobao.org/handlebars/download/handlebars-4.7.6.tgz", - "integrity": "sha1-1MBcG6+Q6ZRfd6pop6IZqkp9904=", - "dev": true, - "requires": { - "minimist": "^1.2.5", - "neo-async": "^2.6.0", - "source-map": "^0.6.1", - "uglify-js": "^3.1.4", - "wordwrap": "^1.0.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz?cache=0&sync_timestamp=1589682764497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - } - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npm.taobao.org/har-validator/download/har-validator-5.1.5.tgz?cache=0&sync_timestamp=1596082584903&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhar-validator%2Fdownload%2Fhar-validator-5.1.5.tgz", - "integrity": "sha1-HwgDufjLIMD6E4It8ezds2veHv0=", - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/hard-rejection/download/hard-rejection-2.1.0.tgz", - "integrity": "sha1-HG7aXBaFxjlCdm15u0Cudzzs2IM=", - "dev": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz", - "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/has-symbols/download/has-symbols-1.0.1.tgz", - "integrity": "sha1-n1IUdYpEGWxAbZvXbOv4HsLdMeg=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/has-unicode/download/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/has-value/download/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/has-values/download/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.8.tgz?cache=0&sync_timestamp=1602803832496&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhosted-git-info%2Fdownload%2Fhosted-git-info-2.8.8.tgz", - "integrity": "sha1-dTm9S8Hg4KiVgVouAmJCCxKFhIg=", - "dev": true - }, - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npm.taobao.org/http-cache-semantics/download/http-cache-semantics-3.8.1.tgz", - "integrity": "sha1-ObDhat2bYFvwqe89nar0hDtMrNI=", - "dev": true - }, - "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/http-proxy-agent/download/http-proxy-agent-2.1.0.tgz", - "integrity": "sha1-5IIb7vWyFCogJr1zkm/lN2McVAU=", - "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz?cache=0&sync_timestamp=1600868452638&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npm.taobao.org/https-proxy-agent/download/https-proxy-agent-2.2.4.tgz", - "integrity": "sha1-TuenN6vZJniik9mzShr00NCMeHs=", - "dev": true, - "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - } - }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npm.taobao.org/humanize-ms/download/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz", - "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npm.taobao.org/iferr/download/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true - }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-4.0.6.tgz", - "integrity": "sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=", - "dev": true - }, - "ignore-walk": { - "version": "3.0.3", - "resolved": "https://registry.npm.taobao.org/ignore-walk/download/ignore-walk-3.0.3.tgz", - "integrity": "sha1-AX4kRxhL/q3nwjjkrv3R6PlbHjc=", - "requires": { - "minimatch": "^3.0.4" - } - }, - "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/import-fresh/download/import-fresh-2.0.0.tgz?cache=0&sync_timestamp=1589682760620&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fimport-fresh%2Fdownload%2Fimport-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - } - } - }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/import-local/download/import-local-2.0.0.tgz", - "integrity": "sha1-VQcL44pZk88Y72236WH1vuXFoJ0=", - "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npm.taobao.org/imurmurhash/download/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/indent-string/download/indent-string-4.0.0.tgz", - "integrity": "sha1-Yk+PRJfWGbLZdoUx1Y9BIoVNclE=", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npm.taobao.org/infer-owner/download/infer-owner-1.0.4.tgz", - "integrity": "sha1-xM78qo5RBRwqQLos6KPScpWvlGc=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz", - "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=" - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npm.taobao.org/ini/download/ini-1.3.5.tgz", - "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=" - }, - "init-package-json": { - "version": "1.10.3", - "resolved": "https://registry.npm.taobao.org/init-package-json/download/init-package-json-1.10.3.tgz?cache=0&sync_timestamp=1602875832889&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finit-package-json%2Fdownload%2Finit-package-json-1.10.3.tgz", - "integrity": "sha1-Rf/i9hCoyhNPK9HbVjeyNQcPbL4=", - "dev": true, - "requires": { - "glob": "^7.1.1", - "npm-package-arg": "^4.0.0 || ^5.0.0 || ^6.0.0", - "promzard": "^0.3.0", - "read": "~1.0.1", - "read-package-json": "1 || 2", - "semver": "2.x || 3.x || 4 || 5", - "validate-npm-package-license": "^3.0.1", - "validate-npm-package-name": "^3.0.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "inquirer": { - "version": "6.5.2", - "resolved": "https://registry.npm.taobao.org/inquirer/download/inquirer-6.5.2.tgz", - "integrity": "sha1-rVCUI3XQNtMn/1KMCL1fqwiZKMo=", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", - "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-5.2.0.tgz", - "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npm.taobao.org/ip/download/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npm.taobao.org/is-arrayish/download/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz", - "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=", - "dev": true - }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npm.taobao.org/is-callable/download/is-callable-1.2.2.tgz?cache=0&sync_timestamp=1600719276620&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-callable%2Fdownload%2Fis-callable-1.2.2.tgz", - "integrity": "sha1-x8ZxXNItTdtI0+GZcCI6zquwgNk=", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/is-ci/download/is-ci-2.0.0.tgz", - "integrity": "sha1-a8YzQYGBDgS1wis9WJ/cpVAmQEw=", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/is-core-module/download/is-core-module-2.0.0.tgz?cache=0&sync_timestamp=1603133391687&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-core-module%2Fdownload%2Fis-core-module-2.0.0.tgz", - "integrity": "sha1-WFMbcK7R23wOjU6xoKLR3dZL0S0=", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-date-object/download/is-date-object-1.0.2.tgz", - "integrity": "sha1-vac28s2P0G0yhE53Q7+nSUw7/X4=", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-0.1.6.tgz", - "integrity": "sha1-Nm2CQN3kh8pRgjsaufB6EKeCUco=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-5.1.0.tgz", - "integrity": "sha1-cpyR4thXt6QZofmqZWhcTDP1hF0=", - "dev": true - } - } - }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npm.taobao.org/is-directory/download/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/is-finite/download/is-finite-1.1.0.tgz", - "integrity": "sha1-kEE1x3+0LAZB1qobzbxNqo2ggvM=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz", - "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negative-zero": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/is-negative-zero/download/is-negative-zero-2.0.0.tgz", - "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-obj/download/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz?cache=0&sync_timestamp=1602541451286&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-plain-obj%2Fdownload%2Fis-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-2.0.4.tgz", - "integrity": "sha1-LBY7P6+xtgbZ0Xko8FwqHDjgdnc=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-regex": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/is-regex/download/is-regex-1.1.1.tgz?cache=0&sync_timestamp=1596555640677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-regex%2Fdownload%2Fis-regex-1.1.1.tgz", - "integrity": "sha1-xvmKrMVG9s7FRooHt7FTq1ZKV7k=", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-ssh": { - "version": "1.3.2", - "resolved": "https://registry.npm.taobao.org/is-ssh/download/is-ssh-1.3.2.tgz?cache=0&sync_timestamp=1596976398304&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-ssh%2Fdownload%2Fis-ssh-1.3.2.tgz", - "integrity": "sha1-pLgqtj1zl2/YJjzO7if5moi9ris=", - "dev": true, - "requires": { - "protocols": "^1.1.0" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/is-symbol/download/is-symbol-1.0.3.tgz", - "integrity": "sha1-OOEBS55jKb4N6dJKQU/XRB7GGTc=", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-text-path": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-text-path/download/is-text-path-1.0.1.tgz", - "integrity": "sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4=", - "dev": true, - "requires": { - "text-extensions": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-typedarray/download/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npm.taobao.org/is-utf8/download/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz", - "integrity": "sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/js-tokens/download/js-tokens-4.0.0.tgz", - "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk=", - "dev": true - }, - "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.14.0.tgz", - "integrity": "sha1-p6NBcPJqIbsWJCTYray0ETpp5II=", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npm.taobao.org/jsbn/download/jsbn-0.1.1.tgz?cache=0&sync_timestamp=1589682745609&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjsbn%2Fdownload%2Fjsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/json-parse-better-errors/download/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npm.taobao.org/json-parse-even-better-errors/download/json-parse-even-better-errors-2.3.1.tgz?cache=0&sync_timestamp=1599064788298&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjson-parse-even-better-errors%2Fdownload%2Fjson-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha1-fEeAWpQxmSjgV3dAXcEuH3pO4C0=", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npm.taobao.org/json-schema/download/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz?cache=0&sync_timestamp=1599333856086&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjson-schema-traverse%2Fdownload%2Fjson-schema-traverse-0.4.1.tgz", - "integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=" - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz?cache=0&sync_timestamp=1589682771374&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjson-stringify-safe%2Fdownload%2Fjson-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/jsonfile/download/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npm.taobao.org/jsonparse/download/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", - "dev": true - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npm.taobao.org/jsprim/download/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-6.0.3.tgz", - "integrity": "sha1-B8BQNKbDSfoG4k+jWqdttFgM5N0=", - "dev": true - }, - "lerna": { - "version": "3.22.1", - "resolved": "https://registry.npm.taobao.org/lerna/download/lerna-3.22.1.tgz", - "integrity": "sha1-ggJ6w9qcYn/YvwLM/v+AapjmW2I=", - "dev": true, - "requires": { - "@lerna/add": "3.21.0", - "@lerna/bootstrap": "3.21.0", - "@lerna/changed": "3.21.0", - "@lerna/clean": "3.21.0", - "@lerna/cli": "3.18.5", - "@lerna/create": "3.22.0", - "@lerna/diff": "3.21.0", - "@lerna/exec": "3.21.0", - "@lerna/import": "3.22.0", - "@lerna/info": "3.21.0", - "@lerna/init": "3.21.0", - "@lerna/link": "3.21.0", - "@lerna/list": "3.21.0", - "@lerna/publish": "3.22.1", - "@lerna/run": "3.21.0", - "@lerna/version": "3.22.1", - "import-local": "^2.0.0", - "npmlog": "^4.1.2" - } - }, - "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npm.taobao.org/lines-and-columns/download/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", - "dev": true - }, - "load-json-file": { - "version": "5.3.0", - "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-5.3.0.tgz", - "integrity": "sha1-TTweAfocA+p4pgrHr5MsnOU0A/M=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.15", - "parse-json": "^4.0.0", - "pify": "^4.0.1", - "strip-bom": "^3.0.0", - "type-fest": "^0.3.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", - "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.20", - "resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.20.tgz?cache=0&sync_timestamp=1597335994883&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash%2Fdownload%2Flodash-4.17.20.tgz", - "integrity": "sha1-tEqbYpe8tpjxxRo1RaKzs2jVnFI=", - "dev": true - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/lodash._reinterpolate/download/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npm.taobao.org/lodash.clonedeep/download/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" - }, - "lodash.foreach": { - "version": "4.5.0", - "resolved": "https://registry.npm.taobao.org/lodash.foreach/download/lodash.foreach-4.5.0.tgz", - "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npm.taobao.org/lodash.get/download/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" - }, - "lodash.ismatch": { - "version": "4.4.0", - "resolved": "https://registry.npm.taobao.org/lodash.ismatch/download/lodash.ismatch-4.4.0.tgz", - "integrity": "sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc=", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npm.taobao.org/lodash.merge/download/lodash.merge-4.6.2.tgz", - "integrity": "sha1-VYqlO0O2YeGSWgr9+japoQhf5Xo=" - }, - "lodash.set": { - "version": "4.3.2", - "resolved": "https://registry.npm.taobao.org/lodash.set/download/lodash.set-4.3.2.tgz", - "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=" - }, - "lodash.sortby": { - "version": "4.7.0", - "resolved": "https://registry.npm.taobao.org/lodash.sortby/download/lodash.sortby-4.7.0.tgz?cache=0&sync_timestamp=1589683608371&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash.sortby%2Fdownload%2Flodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true - }, - "lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npm.taobao.org/lodash.template/download/lodash.template-4.5.0.tgz", - "integrity": "sha1-+XYZXPPzR9DV9SSDVp/oAxzM6Ks=", - "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npm.taobao.org/lodash.templatesettings/download/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha1-5IExDwSdPPbUfpEq0JMTsVTw+zM=", - "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0" - } - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npm.taobao.org/lodash.uniq/download/lodash.uniq-4.5.0.tgz?cache=0&sync_timestamp=1589682817275&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash.uniq%2Fdownload%2Flodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npm.taobao.org/loud-rejection/download/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npm.taobao.org/lru-cache/download/lru-cache-5.1.1.tgz?cache=0&sync_timestamp=1594427582110&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flru-cache%2Fdownload%2Flru-cache-5.1.1.tgz", - "integrity": "sha1-HaJ+ZxAnGUdpXa9oSOhH8B2EuSA=", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "macos-release": { - "version": "2.4.1", - "resolved": "https://registry.npm.taobao.org/macos-release/download/macos-release-2.4.1.tgz", - "integrity": "sha1-ZAM9Dsal5jdRVadLGh66jlCYIKw=", - "dev": true - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-1.3.0.tgz", - "integrity": "sha1-ecEDO4BRW9bSTsmTPoYMp17ifww=", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npm.taobao.org/make-fetch-happen/download/make-fetch-happen-5.0.2.tgz?cache=0&sync_timestamp=1602184515452&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-fetch-happen%2Fdownload%2Fmake-fetch-happen-5.0.2.tgz", - "integrity": "sha1-qoOHEE8mh+3KAchofuRQE9AtGb0=", - "dev": true, - "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npm.taobao.org/map-cache/download/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-obj": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/map-obj/download/map-obj-4.1.0.tgz", - "integrity": "sha1-uRIhtUJzS58UJWwBMsiXxdclb9U=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/map-visit/download/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "meow": { - "version": "7.1.1", - "resolved": "https://registry.npm.taobao.org/meow/download/meow-7.1.1.tgz", - "integrity": "sha1-fAFZXj0zf8sOxOju0WZuqVkD0wY=", - "dev": true, - "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-4.1.0.tgz?cache=0&sync_timestamp=1597169842138&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-up%2Fdownload%2Ffind-up-4.1.0.tgz", - "integrity": "sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk=", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-5.0.0.tgz", - "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA=", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-4.1.0.tgz", - "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc=", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "parse-json": { - "version": "5.1.0", - "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-5.1.0.tgz?cache=0&sync_timestamp=1598129182781&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse-json%2Fdownload%2Fparse-json-5.1.0.tgz", - "integrity": "sha1-+WCIzfJKj6qa6poAny2dlCyZlkY=", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-4.0.0.tgz", - "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM=", - "dev": true - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npm.taobao.org/read-pkg/download/read-pkg-5.2.0.tgz?cache=0&sync_timestamp=1589682810106&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fread-pkg%2Fdownload%2Fread-pkg-5.2.0.tgz", - "integrity": "sha1-e/KVQ4yloz5WzTDgU7NO5yUMk8w=", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.6.0.tgz?cache=0&sync_timestamp=1602623859603&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.6.0.tgz", - "integrity": "sha1-jSojcNPfiG61yQraHFv2GIrPg4s=", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npm.taobao.org/read-pkg-up/download/read-pkg-up-7.0.1.tgz", - "integrity": "sha1-86YTV1hFlzOuK5VjgFbhhU5+9Qc=", - "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.8.1.tgz?cache=0&sync_timestamp=1602623859603&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.8.1.tgz", - "integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0=", - "dev": true - } - } - }, - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.13.1.tgz?cache=0&sync_timestamp=1602623859603&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.13.1.tgz", - "integrity": "sha1-AXLLW86AsL1ULqNI21DH4hg02TQ=", - "dev": true - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-18.1.3.tgz?cache=0&sync_timestamp=1602861397132&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-18.1.3.tgz", - "integrity": "sha1-vmjEl1xrKr9GkjawyHA2L6sJp7A=", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npm.taobao.org/merge2/download/merge2-1.4.1.tgz", - "integrity": "sha1-Q2iJL4hekHRVpv19xVwMnUBJkK4=", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-3.1.10.tgz", - "integrity": "sha1-cIWbyVyYQJUvNZoGij/En57PrCM=", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime-db": { - "version": "1.44.0", - "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.44.0.tgz?cache=0&sync_timestamp=1600831210195&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-db%2Fdownload%2Fmime-db-1.44.0.tgz", - "integrity": "sha1-+hHF6wrKEzS0Izy01S8QxaYnL5I=" - }, - "mime-types": { - "version": "2.1.27", - "resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.27.tgz?cache=0&sync_timestamp=1589682770020&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-types%2Fdownload%2Fmime-types-2.1.27.tgz", - "integrity": "sha1-R5SfmOJ56lMRn1ci4PNOUpvsAJ8=", - "requires": { - "mime-db": "1.44.0" - } - }, - "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-1.2.0.tgz?cache=0&sync_timestamp=1596095644798&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmimic-fn%2Fdownload%2Fmimic-fn-1.2.0.tgz", - "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=", - "dev": true - }, - "min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/min-indent/download/min-indent-1.0.1.tgz", - "integrity": "sha1-pj9oFnOzBXH76LwlaGrnRu76mGk=", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz", - "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npm.taobao.org/minimist/download/minimist-1.2.5.tgz?cache=0&sync_timestamp=1589682820731&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminimist%2Fdownload%2Fminimist-1.2.5.tgz", - "integrity": "sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=" - }, - "minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/minimist-options/download/minimist-options-4.1.0.tgz", - "integrity": "sha1-wGVXE8U6ii69d/+iR9NCxA8BBhk=", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - } - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npm.taobao.org/minipass/download/minipass-2.9.0.tgz?cache=0&sync_timestamp=1589683712023&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminipass%2Fdownload%2Fminipass-2.9.0.tgz", - "integrity": "sha1-5xN2Ln0+Mv7YAxFc+T4EvKn8yaY=", - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npm.taobao.org/minizlib/download/minizlib-1.3.3.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fminizlib%2Fdownload%2Fminizlib-1.3.3.tgz", - "integrity": "sha1-IpDeloGKNMKVUcio0wEha9Zahh0=", - "requires": { - "minipass": "^2.9.0" - } - }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/mississippi/download/mississippi-3.0.0.tgz", - "integrity": "sha1-6goykfl+C16HdrNj1fChLZTGcCI=", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npm.taobao.org/mixin-deep/download/mixin-deep-1.3.2.tgz", - "integrity": "sha1-ESC0PcNZp4Xc5ltVuC4lfM9HlWY=", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/is-extendable/download/is-extendable-1.0.1.tgz", - "integrity": "sha1-p0cPnkJnM9gb2B4RVSZOOjUHyrQ=", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.5.tgz?cache=0&sync_timestamp=1589682820707&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-0.5.5.tgz", - "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=", - "requires": { - "minimist": "^1.2.5" - } - }, - "mkdirp-promise": { - "version": "5.0.1", - "resolved": "https://registry.npm.taobao.org/mkdirp-promise/download/mkdirp-promise-5.0.1.tgz", - "integrity": "sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE=", - "dev": true, - "requires": { - "mkdirp": "*" - } - }, - "modify-values": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/modify-values/download/modify-values-1.0.1.tgz", - "integrity": "sha1-s5OfpgVUZHTj4+PGPWS9Q7TuYCI=", - "dev": true - }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz", - "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=" - }, - "multimatch": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/multimatch/download/multimatch-3.0.0.tgz", - "integrity": "sha1-DiU0zGvCONmrZ+G5zV/Nhabb9ws=", - "dev": true, - "requires": { - "array-differ": "^2.0.3", - "array-union": "^1.0.2", - "arrify": "^1.0.1", - "minimatch": "^3.0.4" - } - }, - "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "mz": { - "version": "2.7.0", - "resolved": "https://registry.npm.taobao.org/mz/download/mz-2.7.0.tgz", - "integrity": "sha1-lQCAV6Vsr63CvGPd5/n/aVWUjjI=", - "dev": true, - "requires": { - "any-promise": "^1.0.0", - "object-assign": "^4.0.1", - "thenify-all": "^1.0.0" - } - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npm.taobao.org/nanomatch/download/nanomatch-1.2.13.tgz", - "integrity": "sha1-uHqKpPwN6P5r6IiVs4mD/yZb0Rk=", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "needle": { - "version": "2.5.2", - "resolved": "https://registry.npm.taobao.org/needle/download/needle-2.5.2.tgz?cache=0&sync_timestamp=1598999728434&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fneedle%2Fdownload%2Fneedle-2.5.2.tgz", - "integrity": "sha1-zxqPzjgrWigBCLupChSZPADkAQo=", - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.2.6.tgz?cache=0&sync_timestamp=1600502894812&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-3.2.6.tgz", - "integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=", - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npm.taobao.org/neo-async/download/neo-async-2.6.2.tgz", - "integrity": "sha1-tKr7k+OustgXTKU88WOrfXMIMF8=", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz", - "integrity": "sha1-ozeKdpbOfSI+iPybdkvX7xCJ42Y=", - "dev": true - }, - "node-addon-api": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/node-addon-api/download/node-addon-api-2.0.0.tgz?cache=0&sync_timestamp=1600445335907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-addon-api%2Fdownload%2Fnode-addon-api-2.0.0.tgz", - "integrity": "sha1-+a+413epFSUkSwF3XqDdvhElSDs=" - }, - "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npm.taobao.org/node-fetch/download/node-fetch-2.6.1.tgz?cache=0&sync_timestamp=1599309179354&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-fetch%2Fdownload%2Fnode-fetch-2.6.1.tgz", - "integrity": "sha1-BFvTI2Mfdu0uK1VXM5RBa2OaAFI=", - "dev": true - }, - "node-fetch-npm": { - "version": "2.0.4", - "resolved": "https://registry.npm.taobao.org/node-fetch-npm/download/node-fetch-npm-2.0.4.tgz", - "integrity": "sha1-ZQfQ4XqewL477FFpWKSXzsVL9aQ=", - "dev": true, - "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" - } - }, - "node-gyp": { - "version": "5.1.1", - "resolved": "https://registry.npm.taobao.org/node-gyp/download/node-gyp-5.1.1.tgz?cache=0&sync_timestamp=1602898495109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-gyp%2Fdownload%2Fnode-gyp-5.1.1.tgz", - "integrity": "sha1-65Ffe2Mck30oLjOu1Ey3oCX2Kj4=", - "dev": true, - "requires": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "mkdirp": "^0.5.1", - "nopt": "^4.0.1", - "npmlog": "^4.1.2", - "request": "^2.88.0", - "rimraf": "^2.6.3", - "semver": "^5.7.1", - "tar": "^4.4.12", - "which": "^1.3.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "node-pre-gyp": { - "version": "0.11.0", - "resolved": "https://registry.npm.taobao.org/node-pre-gyp/download/node-pre-gyp-0.11.0.tgz", - "integrity": "sha1-2x8zIVJy9pLNOPAyOOPptHxd0FQ=", - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=" - } - } - }, - "nopt": { - "version": "4.0.3", - "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-4.0.3.tgz?cache=0&sync_timestamp=1597649905420&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnopt%2Fdownload%2Fnopt-4.0.3.tgz", - "integrity": "sha1-o3XK2dAv2SEnjZVMIlTVqlfhXkg=", - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npm.taobao.org/normalize-package-data/download/normalize-package-data-2.5.0.tgz?cache=0&sync_timestamp=1602547447569&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnormalize-package-data%2Fdownload%2Fnormalize-package-data-2.5.0.tgz", - "integrity": "sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg=", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npm.taobao.org/normalize-url/download/normalize-url-3.3.0.tgz?cache=0&sync_timestamp=1602432435724&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnormalize-url%2Fdownload%2Fnormalize-url-3.3.0.tgz", - "integrity": "sha1-suHE3E98bVd0PfczpPWXjRhlBVk=", - "dev": true - }, - "npm-bundled": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/npm-bundled/download/npm-bundled-1.1.1.tgz", - "integrity": "sha1-Ht1XCGWpTNsbyCIHdeKUZsn7I0s=", - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-lifecycle": { - "version": "3.1.5", - "resolved": "https://registry.npm.taobao.org/npm-lifecycle/download/npm-lifecycle-3.1.5.tgz", - "integrity": "sha1-mILTZCuMgsgVeCoS5qG/7tACYwk=", - "dev": true, - "requires": { - "byline": "^5.0.0", - "graceful-fs": "^4.1.15", - "node-gyp": "^5.0.2", - "resolve-from": "^4.0.0", - "slide": "^1.1.6", - "uid-number": "0.0.6", - "umask": "^1.1.0", - "which": "^1.3.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/npm-normalize-package-bin/download/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha1-bnmkHyP9I1wGIyGCKNp9nCO49uI=" - }, - "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npm.taobao.org/npm-package-arg/download/npm-package-arg-6.1.1.tgz?cache=0&sync_timestamp=1602550130099&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnpm-package-arg%2Fdownload%2Fnpm-package-arg-6.1.1.tgz", - "integrity": "sha1-AhaMsKSaK3W/mIooaY3ntSnfXLc=", - "dev": true, - "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npm.taobao.org/npm-packlist/download/npm-packlist-1.4.8.tgz", - "integrity": "sha1-Vu5swTW5+YrT1Rwcldoiu7my7z4=", - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/npm-pick-manifest/download/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha1-9Nnl/UviFT5fTl+be+jcQZqZq7c=", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npm.taobao.org/npmlog/download/npmlog-4.1.2.tgz", - "integrity": "sha1-CKfyqL9zRgR3mp76StXMcXq7lUs=", - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/number-is-nan/download/number-is-nan-1.0.1.tgz?cache=0&sync_timestamp=1589682839339&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnumber-is-nan%2Fdownload%2Fnumber-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz?cache=0&sync_timestamp=1589682811909&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Foauth-sign%2Fdownload%2Foauth-sign-0.9.0.tgz", - "integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=" - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npm.taobao.org/object-copy/download/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-inspect": { - "version": "1.8.0", - "resolved": "https://registry.npm.taobao.org/object-inspect/download/object-inspect-1.8.0.tgz?cache=0&sync_timestamp=1592545231350&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-inspect%2Fdownload%2Fobject-inspect-1.8.0.tgz", - "integrity": "sha1-34B+Xs9TpgnMa/6T6sPMe+WzqdA=", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/object-keys/download/object-keys-1.1.1.tgz", - "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4=", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/object-visit/download/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.1", - "resolved": "https://registry.npm.taobao.org/object.assign/download/object.assign-4.1.1.tgz?cache=0&sync_timestamp=1599844927493&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject.assign%2Fdownload%2Fobject.assign-4.1.1.tgz", - "integrity": "sha1-MDhnpmbN1Bk27N7fsfjz4ypHjN0=", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.0", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.18.0-next.1.tgz?cache=0&sync_timestamp=1601502719982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.18.0-next.1.tgz", - "integrity": "sha1-bjoKS9pxflAjqzuOkL7DYQjSLGg=", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/object.getownpropertydescriptors/download/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha1-Npvx+VktiridcS3O1cuBx8U1Jkk=", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/object.pick/download/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "octokit-pagination-methods": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/octokit-pagination-methods/download/octokit-pagination-methods-1.1.0.tgz", - "integrity": "sha1-z0cu3J1VEFX573P25CtNu0yAvqQ=", - "dev": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/onetime/download/onetime-2.0.1.tgz?cache=0&sync_timestamp=1597005345612&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fonetime%2Fdownload%2Fonetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "^1.0.0" - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/os-homedir/download/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-name": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/os-name/download/os-name-3.1.0.tgz", - "integrity": "sha1-3sGdlmKW4c1i1wGlpm7h3ernCAE=", - "dev": true, - "requires": { - "macos-release": "^2.2.0", - "windows-release": "^3.1.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/os-tmpdir/download/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npm.taobao.org/osenv/download/osenv-0.1.5.tgz?cache=0&sync_timestamp=1589682762332&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fosenv%2Fdownload%2Fosenv-0.1.5.tgz", - "integrity": "sha1-hc36+uso6Gd/QW4odZK18/SepBA=", - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/p-finally/download/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz", - "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz", - "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/p-map/download/p-map-2.1.0.tgz", - "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU=", - "dev": true - }, - "p-map-series": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/p-map-series/download/p-map-series-1.0.0.tgz", - "integrity": "sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco=", - "dev": true, - "requires": { - "p-reduce": "^1.0.0" - } - }, - "p-pipe": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/p-pipe/download/p-pipe-1.2.0.tgz", - "integrity": "sha1-SxoROZoRUgpneQ7loMHViB1r7+k=", - "dev": true - }, - "p-queue": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/p-queue/download/p-queue-4.0.0.tgz?cache=0&sync_timestamp=1602444571842&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-queue%2Fdownload%2Fp-queue-4.0.0.tgz", - "integrity": "sha1-7Q7uh5iSftbywvX1t3/bIGGl00Y=", - "dev": true, - "requires": { - "eventemitter3": "^3.1.0" - } - }, - "p-reduce": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/p-reduce/download/p-reduce-1.0.0.tgz", - "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", - "dev": true - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz", - "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=", - "dev": true - }, - "p-waterfall": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/p-waterfall/download/p-waterfall-1.0.0.tgz", - "integrity": "sha1-ftlLPOszMngjU69qrhGqn8I1uwA=", - "dev": true, - "requires": { - "p-reduce": "^1.0.0" - } - }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/parallel-transform/download/parallel-transform-1.2.0.tgz", - "integrity": "sha1-kEnKN9bLIYLDsdLHIL6U0UpYFPw=", - "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "parse-github-repo-url": { - "version": "1.4.1", - "resolved": "https://registry.npm.taobao.org/parse-github-repo-url/download/parse-github-repo-url-1.4.1.tgz", - "integrity": "sha1-nn2LslKmy2ukJZUGC3v23z28H1A=", - "dev": true - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-4.0.0.tgz?cache=0&sync_timestamp=1598129182781&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse-json%2Fdownload%2Fparse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parse-path": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/parse-path/download/parse-path-4.0.2.tgz?cache=0&sync_timestamp=1596988064770&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fparse-path%2Fdownload%2Fparse-path-4.0.2.tgz", - "integrity": "sha1-7xTw09d7ro3UvGZWOkwVGqyeZao=", - "dev": true, - "requires": { - "is-ssh": "^1.3.0", - "protocols": "^1.4.0" - } - }, - "parse-url": { - "version": "5.0.2", - "resolved": "https://registry.npm.taobao.org/parse-url/download/parse-url-5.0.2.tgz", - "integrity": "sha1-hWo74fzfeNyT/Is3kfFpBy2Ji1k=", - "dev": true, - "requires": { - "is-ssh": "^1.3.0", - "normalize-url": "^3.3.0", - "parse-path": "^4.0.0", - "protocols": "^1.4.0" - } - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npm.taobao.org/pascalcase/download/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/path-dirname/download/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npm.taobao.org/path-parse/download/path-parse-1.0.6.tgz", - "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=", - "dev": true - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/path-type/download/path-type-3.0.0.tgz", - "integrity": "sha1-zvMdyOCho7sNEFwM2Xzzv0f0428=", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-4.0.1.tgz", - "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npm.taobao.org/pinkie/download/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-3.0.0.tgz?cache=0&sync_timestamp=1602859045787&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpkg-dir%2Fdownload%2Fpkg-dir-3.0.0.tgz", - "integrity": "sha1-J0kCDyOe2ZCIGx9xIQ1R62UjvqM=", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npm.taobao.org/posix-character-classes/download/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz", - "integrity": "sha1-eCDZsWEgzFXKmud5JoCufbptf+I=" - }, - "promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "promise-retry": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/promise-retry/download/promise-retry-1.1.1.tgz", - "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", - "dev": true, - "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" - } - }, - "promzard": { - "version": "0.3.0", - "resolved": "https://registry.npm.taobao.org/promzard/download/promzard-0.3.0.tgz", - "integrity": "sha1-JqXW7ox97kyxIggwWs+5O6OCqe4=", - "dev": true, - "requires": { - "read": "1" - } - }, - "proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npm.taobao.org/proto-list/download/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", - "dev": true - }, - "protocols": { - "version": "1.4.8", - "resolved": "https://registry.npm.taobao.org/protocols/download/protocols-1.4.8.tgz", - "integrity": "sha1-SO6i2PWNlkSkoyyq5dXbKQoHXOg=", - "dev": true - }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npm.taobao.org/protoduck/download/protoduck-5.0.1.tgz", - "integrity": "sha1-A8NlnKGAB7aaUP2Cp+vMUWJhFR8=", - "dev": true, - "requires": { - "genfun": "^5.0.0" - } - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npm.taobao.org/psl/download/psl-1.8.0.tgz", - "integrity": "sha1-kyb4vPsBOtzABf3/BWrM4CDlHCQ=" - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pump/download/pump-3.0.0.tgz", - "integrity": "sha1-tKIRaBW94vTh6mAjVOjHVWUQemQ=", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npm.taobao.org/pumpify/download/pumpify-1.5.1.tgz", - "integrity": "sha1-NlE74karJ1cLGjdKXOJ4v9dDcM4=", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/pump/download/pump-2.0.1.tgz", - "integrity": "sha1-Ejma3W5M91Jtlzy8i1zi4pCLOQk=", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz?cache=0&sync_timestamp=1589682803838&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpunycode%2Fdownload%2Fpunycode-2.1.1.tgz", - "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=" - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npm.taobao.org/q/download/q-1.5.1.tgz?cache=0&sync_timestamp=1589682817412&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fq%2Fdownload%2Fq-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npm.taobao.org/qs/download/qs-6.5.2.tgz", - "integrity": "sha1-yzroBuh0BERYTvFUzo7pjUA/PjY=" - }, - "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/quick-lru/download/quick-lru-4.0.1.tgz", - "integrity": "sha1-W4h48ROlgheEjGSCAmxz4bpXcn8=", - "dev": true - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npm.taobao.org/rc/download/rc-1.2.8.tgz", - "integrity": "sha1-zZJL9SAKB1uDwYjNa54hG3/A0+0=", - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "read": { - "version": "1.0.7", - "resolved": "https://registry.npm.taobao.org/read/download/read-1.0.7.tgz", - "integrity": "sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ=", - "dev": true, - "requires": { - "mute-stream": "~0.0.4" - } - }, - "read-cmd-shim": { - "version": "1.0.5", - "resolved": "https://registry.npm.taobao.org/read-cmd-shim/download/read-cmd-shim-1.0.5.tgz", - "integrity": "sha1-h+Q+ulAJi6WjLQzrWDq45DuWHBY=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2" - } - }, - "read-package-json": { - "version": "2.1.2", - "resolved": "https://registry.npm.taobao.org/read-package-json/download/read-package-json-2.1.2.tgz", - "integrity": "sha1-aZKytmxxdyWf646qxzw6zSi5Iio=", - "dev": true, - "requires": { - "glob": "^7.1.1", - "json-parse-even-better-errors": "^2.3.0", - "normalize-package-data": "^2.0.0", - "npm-normalize-package-bin": "^1.0.0" - } - }, - "read-package-tree": { - "version": "5.3.1", - "resolved": "https://registry.npm.taobao.org/read-package-tree/download/read-package-tree-5.3.1.tgz", - "integrity": "sha1-oyy2TH8x64pvMe8G+c7fdAaP5jY=", - "dev": true, - "requires": { - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "util-promisify": "^2.1.0" - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/read-pkg/download/read-pkg-3.0.0.tgz?cache=0&sync_timestamp=1589682810106&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fread-pkg%2Fdownload%2Fread-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/read-pkg-up/download/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "dev": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-2.1.0.tgz?cache=0&sync_timestamp=1597169842138&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffind-up%2Fdownload%2Ffind-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-1.3.0.tgz", - "integrity": "sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - } - } - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz?cache=0&sync_timestamp=1589682741447&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freadable-stream%2Fdownload%2Freadable-stream-2.3.7.tgz", - "integrity": "sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1589682795646&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz", - "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" - } - } - }, - "readdir-scoped-modules": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/readdir-scoped-modules/download/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha1-jUVAe0+HCg3K68DihnDRjnRRQwk=", - "dev": true, - "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" - } - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/redent/download/redent-3.0.0.tgz", - "integrity": "sha1-5Ve3mYMWu1PJ8fVvpiY1LGljBZ8=", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/regex-not/download/regex-not-1.0.2.tgz", - "integrity": "sha1-H07OJ+ALC2XgJHpoEOaoXYOldSw=", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npm.taobao.org/repeat-element/download/repeat-element-1.1.3.tgz", - "integrity": "sha1-eC4NglwMWjuzlzH4Tv7mt0Lmsc4=", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npm.taobao.org/repeat-string/download/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/repeating/download/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npm.taobao.org/request/download/request-2.88.2.tgz?cache=0&sync_timestamp=1589682741998&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frequest%2Fdownload%2Frequest-2.88.2.tgz", - "integrity": "sha1-1zyRhzHLWofaBH4gcjQUb2ZNErM=", - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-2.0.0.tgz", - "integrity": "sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs=", - "dev": true - }, - "resolve": { - "version": "1.18.1", - "resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.18.1.tgz?cache=0&sync_timestamp=1603313597183&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fresolve%2Fdownload%2Fresolve-1.18.1.tgz", - "integrity": "sha1-AY/LLFsgfSpkJK7jYcWiZtqPQTA=", - "dev": true, - "requires": { - "is-core-module": "^2.0.0", - "path-parse": "^1.0.6" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/resolve-cwd/download/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/resolve-from/download/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - } - } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/resolve-from/download/resolve-from-4.0.0.tgz", - "integrity": "sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, - "requires": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npm.taobao.org/ret/download/ret-0.1.15.tgz", - "integrity": "sha1-uKSCXVvbH8P29Twrwz+BOIaBx7w=", - "dev": true - }, - "retry": { - "version": "0.10.1", - "resolved": "https://registry.npm.taobao.org/retry/download/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", - "dev": true - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npm.taobao.org/rimraf/download/rimraf-2.7.1.tgz?cache=0&sync_timestamp=1589682814592&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frimraf%2Fdownload%2Frimraf-2.7.1.tgz", - "integrity": "sha1-NXl/E6f9rcVmFCwp1PB8ytSD4+w=", - "requires": { - "glob": "^7.1.3" - } - }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npm.taobao.org/run-async/download/run-async-2.4.1.tgz", - "integrity": "sha1-hEDsz5nqPnC9QJ1JqriOEMGJpFU=", - "dev": true - }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, - "rxjs": { - "version": "6.6.3", - "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.6.3.tgz?cache=0&sync_timestamp=1602770834162&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frxjs%2Fdownload%2Frxjs-6.6.3.tgz", - "integrity": "sha1-jKhGNcTaqQDA05Z6buesYCce5VI=", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1589682795646&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz", - "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=" - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/safe-regex/download/safe-regex-1.1.0.tgz?cache=0&sync_timestamp=1589682757445&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-regex%2Fdownload%2Fsafe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz?cache=0&sync_timestamp=1589682784154&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafer-buffer%2Fdownload%2Fsafer-buffer-2.1.2.tgz", - "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz", - "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=" - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", - "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", - "dev": true - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/set-value/download/set-value-2.0.1.tgz", - "integrity": "sha1-oY1AUw5vB95CKMfe/kInr4ytAFs=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/shallow-clone/download/shallow-clone-3.0.1.tgz", - "integrity": "sha1-jymBrZJTH1UDWwH7IwdppA4C76M=", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/shebang-command/download/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/shebang-regex/download/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.3.tgz", - "integrity": "sha1-oUEMLt2PB3sItOJTyOrPyvBXRhw=" - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/slash/download/slash-2.0.0.tgz?cache=0&sync_timestamp=1589682715547&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fslash%2Fdownload%2Fslash-2.0.0.tgz", - "integrity": "sha1-3lUoUaF1nfOo8gZTVEL17E3eq0Q=", - "dev": true - }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npm.taobao.org/slide/download/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, - "smart-buffer": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/smart-buffer/download/smart-buffer-4.1.0.tgz", - "integrity": "sha1-kWBcJdkWUvRmHqacz0XxszHKIbo=", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", - "integrity": "sha1-ZJIufFZbDhQgS6GqfWlkJ40lGC0=", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502894812&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/snapdragon-node/download/snapdragon-node-2.1.1.tgz", - "integrity": "sha1-bBdfhv8UvbByRWPo88GwIaKGhTs=", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-accessor-descriptor/download/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha1-FpwvbT3x+ZJhgHI2XJsOofaHhlY=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/is-data-descriptor/download/is-data-descriptor-1.0.0.tgz", - "integrity": "sha1-2Eh2Mh0Oet0DmQQGq7u9NrqSaMc=", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/is-descriptor/download/is-descriptor-1.0.2.tgz", - "integrity": "sha1-OxWXRqZmBLBPjIFSS6NlxfFNhuw=", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/snapdragon-util/download/snapdragon-util-3.0.1.tgz", - "integrity": "sha1-+VZHlIbyrNeXAGk/b3uAXkWrVuI=", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "socks": { - "version": "2.3.3", - "resolved": "https://registry.npm.taobao.org/socks/download/socks-2.3.3.tgz?cache=0&sync_timestamp=1603686517008&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsocks%2Fdownload%2Fsocks-2.3.3.tgz", - "integrity": "sha1-ARKfCl1TTSuJdxLtis6rfuZdeOM=", - "dev": true, - "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" - } - }, - "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/socks-proxy-agent/download/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha1-PImR8xRbJ5nnDhG9X7yLGWMRY4Y=", - "dev": true, - "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npm.taobao.org/agent-base/download/agent-base-4.2.1.tgz?cache=0&sync_timestamp=1603480100923&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fagent-base%2Fdownload%2Fagent-base-4.2.1.tgz", - "integrity": "sha1-2J5ZmfeXh1Z0wH2H8mD8Qeg+jKk=", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - } - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz?cache=0&sync_timestamp=1602621889278&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsort-keys%2Fdownload%2Fsort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz?cache=0&sync_timestamp=1589682764497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.3.tgz", - "integrity": "sha1-GQhmvs51U+H48mei7oLGBrVQmho=", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/spdx-correct/download/spdx-correct-3.1.1.tgz", - "integrity": "sha1-3s6BrJweZxPl99G28X1Gj6U9iak=", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/spdx-exceptions/download/spdx-exceptions-2.3.0.tgz", - "integrity": "sha1-PyjOGnegA3JoPq3kpDMYNSeiFj0=", - "dev": true - }, - "spdx-expression-parse": { - "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=1589682794533&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdx-expression-parse%2Fdownload%2Fspdx-expression-parse-3.0.1.tgz", - "integrity": "sha1-z3D1BILu/cmOPOCmgz5KU87rpnk=", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.6", - "resolved": "https://registry.npm.taobao.org/spdx-license-ids/download/spdx-license-ids-3.0.6.tgz?cache=0&sync_timestamp=1600284873714&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fspdx-license-ids%2Fdownload%2Fspdx-license-ids-3.0.6.tgz", - "integrity": "sha1-yAdXODwoq/cpZ0SZjLwQaui4VM4=", - "dev": true - }, - "split": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/split/download/split-1.0.1.tgz", - "integrity": "sha1-YFvZvjA6pZ+zX5Ip++oN3snqB9k=", - "dev": true, - "requires": { - "through": "2" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/split-string/download/split-string-3.1.0.tgz", - "integrity": "sha1-fLCd2jqGWFcFxks5pkZgOGguj+I=", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "split2": { - "version": "2.2.0", - "resolved": "https://registry.npm.taobao.org/split2/download/split2-2.2.0.tgz?cache=0&sync_timestamp=1598084396596&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsplit2%2Fdownload%2Fsplit2-2.2.0.tgz", - "integrity": "sha1-GGsldbz4PoW30YRldWI47k7kJJM=", - "dev": true, - "requires": { - "through2": "^2.0.2" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sqlite3": { - "version": "5.0.0", - "resolved": "https://registry.npm.taobao.org/sqlite3/download/sqlite3-5.0.0.tgz", - "integrity": "sha1-G/7yFRxrxIo6sabBJgiLuN0jNWY=", - "requires": { - "node-addon-api": "2.0.0", - "node-gyp": "3.x", - "node-pre-gyp": "^0.11.0" - }, - "dependencies": { - "node-gyp": { - "version": "3.8.0", - "resolved": "https://registry.npm.taobao.org/node-gyp/download/node-gyp-3.8.0.tgz?cache=0&sync_timestamp=1602898495109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-gyp%2Fdownload%2Fnode-gyp-3.8.0.tgz", - "integrity": "sha1-VAMEJhwzDoDQ1e3OJTpoyzlkIYw=", - "optional": true, - "requires": { - "fstream": "^1.0.0", - "glob": "^7.0.3", - "graceful-fs": "^4.1.2", - "mkdirp": "^0.5.0", - "nopt": "2 || 3", - "npmlog": "0 || 1 || 2 || 3 || 4", - "osenv": "0", - "request": "^2.87.0", - "rimraf": "2", - "semver": "~5.3.0", - "tar": "^2.0.0", - "which": "1" - } - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npm.taobao.org/nopt/download/nopt-3.0.6.tgz?cache=0&sync_timestamp=1597649905420&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnopt%2Fdownload%2Fnopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "optional": true, - "requires": { - "abbrev": "1" - } - }, - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.3.0.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", - "optional": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npm.taobao.org/tar/download/tar-2.2.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar%2Fdownload%2Ftar-2.2.2.tgz", - "integrity": "sha1-DKiEhWLHKZuLRG/2pNYM27I+3EA=", - "optional": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - } - } - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npm.taobao.org/sshpk/download/sshpk-1.16.1.tgz", - "integrity": "sha1-+2YcC+8ps520B2nuOfpwCT1vaHc=", - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npm.taobao.org/ssri/download/ssri-6.0.1.tgz", - "integrity": "sha1-KjxBso3UW2K2Nnbst0ABJlrp7dg=", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npm.taobao.org/static-extend/download/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npm.taobao.org/define-property/download/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npm.taobao.org/stream-each/download/stream-each-1.2.3.tgz", - "integrity": "sha1-6+J6DDibBPvMIzZClS4Qcxr6m64=", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz", - "integrity": "sha1-1wiCgVWasneEJCebCHfaPDktWj0=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string.prototype.trimend": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/string.prototype.trimend/download/string.prototype.trimend-1.0.2.tgz?cache=0&sync_timestamp=1603219618123&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimend%2Fdownload%2Fstring.prototype.trimend-1.0.2.tgz", - "integrity": "sha1-bd2ah5a8cUtImjriIkaiCPN7+kY=", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.18.0-next.1.tgz?cache=0&sync_timestamp=1601502719982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.18.0-next.1.tgz", - "integrity": "sha1-bjoKS9pxflAjqzuOkL7DYQjSLGg=", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - }, - "string.prototype.trimstart": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/string.prototype.trimstart/download/string.prototype.trimstart-1.0.2.tgz?cache=0&sync_timestamp=1603219618047&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimstart%2Fdownload%2Fstring.prototype.trimstart-1.0.2.tgz", - "integrity": "sha1-ItRdqBAVMJzQzdeXh+iRn8XGE+c=", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npm.taobao.org/es-abstract/download/es-abstract-1.18.0-next.1.tgz?cache=0&sync_timestamp=1601502719982&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fes-abstract%2Fdownload%2Fes-abstract-1.18.0-next.1.tgz", - "integrity": "sha1-bjoKS9pxflAjqzuOkL7DYQjSLGg=", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz", - "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=", - "requires": { - "safe-buffer": "~5.1.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1589682795646&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz", - "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-3.0.1.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/strip-eof/download/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/strip-indent/download/strip-indent-3.0.0.tgz", - "integrity": "sha1-wy4c7pQLazQyx3G8LFS8znPNMAE=", - "dev": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "strip-json-comments": { - "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=1594567532500&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-json-comments%2Fdownload%2Fstrip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" - }, - "strong-log-transformer": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/strong-log-transformer/download/strong-log-transformer-2.1.0.tgz", - "integrity": "sha1-D17XjTJeBCGsb5D38Q5pHWrjrhA=", - "dev": true, - "requires": { - "duplexer": "^0.1.1", - "minimist": "^1.2.0", - "through": "^2.3.4" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-5.5.0.tgz?cache=0&sync_timestamp=1598611709087&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8=", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "tar": { - "version": "4.4.13", - "resolved": "https://registry.npm.taobao.org/tar/download/tar-4.4.13.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar%2Fdownload%2Ftar-4.4.13.tgz", - "integrity": "sha1-Q7NkvFKIjVVSmGN7ENYHkCVKtSU=", - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "temp-dir": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/temp-dir/download/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", - "dev": true - }, - "temp-write": { - "version": "3.4.0", - "resolved": "https://registry.npm.taobao.org/temp-write/download/temp-write-3.4.0.tgz", - "integrity": "sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "is-stream": "^1.1.0", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "temp-dir": "^1.0.0", - "uuid": "^3.0.1" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "text-extensions": { - "version": "1.9.0", - "resolved": "https://registry.npm.taobao.org/text-extensions/download/text-extensions-1.9.0.tgz", - "integrity": "sha1-GFPkX+45yUXOb2w2stZZtaq8KiY=", - "dev": true - }, - "thenify": { - "version": "3.3.1", - "resolved": "https://registry.npm.taobao.org/thenify/download/thenify-3.3.1.tgz", - "integrity": "sha1-iTLmhqQGYDigFt2eLKRq3Zg4qV8=", - "dev": true, - "requires": { - "any-promise": "^1.0.0" - } - }, - "thenify-all": { - "version": "1.6.0", - "resolved": "https://registry.npm.taobao.org/thenify-all/download/thenify-all-1.6.0.tgz", - "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", - "dev": true, - "requires": { - "thenify": ">= 3.1.0 < 4" - } - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz", - "integrity": "sha1-AcHjnrMdB8t9A6lqcIIyYLIxMs0=", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npm.taobao.org/tmp/download/tmp-0.0.33.tgz?cache=0&sync_timestamp=1589684134816&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftmp%2Fdownload%2Ftmp-0.0.33.tgz", - "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npm.taobao.org/to-object-path/download/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npm.taobao.org/kind-of/download/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npm.taobao.org/to-regex/download/to-regex-3.0.2.tgz", - "integrity": "sha1-E8/dmzNlUvMLUfM6iuG0Knp1mc4=", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.5.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftough-cookie%2Fdownload%2Ftough-cookie-2.5.0.tgz", - "integrity": "sha1-zZ+yoKodWhK0c72fuW+j3P9lreI=", - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/tr46/download/tr46-1.0.1.tgz", - "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/trim-newlines/download/trim-newlines-3.0.0.tgz", - "integrity": "sha1-eXJjBKaomKqDc0JymNVMLuixyzA=", - "dev": true - }, - "trim-off-newlines": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/trim-off-newlines/download/trim-off-newlines-1.0.1.tgz", - "integrity": "sha1-n5up2e+odkw4dpi8v+sshI8RrbM=", - "dev": true - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npm.taobao.org/tslib/download/tslib-1.14.1.tgz", - "integrity": "sha1-zy04vcNKE0vK8QkcQfZhni9nLQA=", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npm.taobao.org/tweetnacl/download/tweetnacl-0.14.5.tgz?cache=0&sync_timestamp=1589682745749&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftweetnacl%2Fdownload%2Ftweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.3.1.tgz?cache=0&sync_timestamp=1602623859603&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.3.1.tgz", - "integrity": "sha1-Y9ANIE4FlHT+Xht8ARESu9HcKeE=", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "uglify-js": { - "version": "3.11.4", - "resolved": "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.11.4.tgz?cache=0&sync_timestamp=1603670355885&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuglify-js%2Fdownload%2Fuglify-js-3.11.4.tgz", - "integrity": "sha1-tHt66Z1L0dymW1OqppyqCQnm+t8=", - "dev": true, - "optional": true - }, - "uid-number": { - "version": "0.0.6", - "resolved": "https://registry.npm.taobao.org/uid-number/download/uid-number-0.0.6.tgz", - "integrity": "sha1-DqEOgDXo61uOREnwbaHHMGY7qoE=", - "dev": true - }, - "umask": { - "version": "1.1.0", - "resolved": "https://registry.npm.taobao.org/umask/download/umask-1.1.0.tgz", - "integrity": "sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0=", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/union-value/download/union-value-1.0.1.tgz", - "integrity": "sha1-C2/nuDWuzaYcbqTU8CwUIh4QmEc=", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npm.taobao.org/unique-filename/download/unique-filename-1.1.1.tgz", - "integrity": "sha1-HWl2k2mtoFgxA6HmrodoG1ZXMjA=", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npm.taobao.org/unique-slug/download/unique-slug-2.0.2.tgz", - "integrity": "sha1-uqvOkQg/xk6UWw861hPiZPfNTmw=", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "universal-user-agent": { - "version": "4.0.1", - "resolved": "https://registry.npm.taobao.org/universal-user-agent/download/universal-user-agent-4.0.1.tgz", - "integrity": "sha1-/Y1st3OmeacJ6WfvgoijH8wD5Vc=", - "dev": true, - "requires": { - "os-name": "^3.1.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz?cache=0&sync_timestamp=1603179967633&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-0.1.2.tgz", - "integrity": "sha1-tkb2m+OULavOzJ1mOcgNwQXvqmY=", - "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/unset-value/download/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npm.taobao.org/has-value/download/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/isobject/download/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npm.taobao.org/has-values/download/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npm.taobao.org/upath/download/upath-1.2.0.tgz?cache=0&sync_timestamp=1602008334498&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fupath%2Fdownload%2Fupath-1.2.0.tgz", - "integrity": "sha1-j2bbzVWog6za5ECK+LA1pQRMGJQ=", - "dev": true - }, - "uri-js": { - "version": "4.4.0", - "resolved": "https://registry.npm.taobao.org/uri-js/download/uri-js-4.4.0.tgz", - "integrity": "sha1-qnFCYd55PoqCNHp7zJznTobyhgI=", - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/use/download/use-3.1.1.tgz", - "integrity": "sha1-1QyMrHmhn7wg8pEfVuuXP04QBw8=", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "util-promisify": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/util-promisify/download/util-promisify-2.1.0.tgz", - "integrity": "sha1-PCI2R2xNMsX/PEcAKt18E7moKlM=", - "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz", - "integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4=" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo=", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/validate-npm-package-name/download/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npm.taobao.org/verror/download/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npm.taobao.org/wcwidth/download/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", - "dev": true, - "requires": { - "defaults": "^1.0.3" - } - }, - "webidl-conversions": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/webidl-conversions/download/webidl-conversions-4.0.2.tgz", - "integrity": "sha1-qFWYCx8LazWbodXZ+zmulB+qY60=", - "dev": true - }, - "whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npm.taobao.org/whatwg-url/download/whatwg-url-7.1.0.tgz?cache=0&sync_timestamp=1602173918177&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwhatwg-url%2Fdownload%2Fwhatwg-url-7.1.0.tgz", - "integrity": "sha1-wsSS8eymEpiO/T0iZr4bn8YXDQY=", - "dev": true, - "requires": { - "lodash.sortby": "^4.7.0", - "tr46": "^1.0.1", - "webidl-conversions": "^4.0.2" - } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npm.taobao.org/which/download/which-1.3.1.tgz?cache=0&sync_timestamp=1589682812246&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwhich%2Fdownload%2Fwhich-1.3.1.tgz", - "integrity": "sha1-pFBD1U9YBTFtqNYvn1CRjT2nCwo=", - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npm.taobao.org/wide-align/download/wide-align-1.1.3.tgz", - "integrity": "sha1-rgdOa9wMFKQx6ATmJFScYzsABFc=", - "requires": { - "string-width": "^1.0.2 || 2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-4.0.0.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "windows-release": { - "version": "3.3.3", - "resolved": "https://registry.npm.taobao.org/windows-release/download/windows-release-3.3.3.tgz?cache=0&sync_timestamp=1597085018437&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwindows-release%2Fdownload%2Fwindows-release-3.3.3.tgz", - "integrity": "sha1-HBACfHIldD7sa4nfFg1kwuApOZk=", - "dev": true, - "requires": { - "execa": "^1.0.0" - } - }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npm.taobao.org/wordwrap/download/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-5.1.0.tgz", - "integrity": "sha1-H9H2cjXVttD+54EFYAG/tpTAOwk=", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", - "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", - "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-5.2.0.tgz", - "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npm.taobao.org/write-file-atomic/download/write-file-atomic-2.4.3.tgz", - "integrity": "sha1-H9Lprh3z51uNjDZ0Q8aS1MqB9IE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "write-json-file": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/write-json-file/download/write-json-file-3.2.0.tgz", - "integrity": "sha1-Zbvcns2KFFjhWVJ3DMut/P9f5io=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.15", - "make-dir": "^2.1.0", - "pify": "^4.0.1", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.4.2" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npm.taobao.org/make-dir/download/make-dir-2.1.0.tgz", - "integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npm.taobao.org/semver/download/semver-5.7.1.tgz?cache=0&sync_timestamp=1589682805026&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-5.7.1.tgz", - "integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=", - "dev": true - } - } - }, - "write-pkg": { - "version": "3.2.0", - "resolved": "https://registry.npm.taobao.org/write-pkg/download/write-pkg-3.2.0.tgz", - "integrity": "sha1-DheP6Xgg04mokovHlTXb5ows/yE=", - "dev": true, - "requires": { - "sort-keys": "^2.0.0", - "write-json-file": "^2.2.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "write-json-file": { - "version": "2.3.0", - "resolved": "https://registry.npm.taobao.org/write-json-file/download/write-json-file-2.3.0.tgz", - "integrity": "sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8=", - "dev": true, - "requires": { - "detect-indent": "^5.0.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "pify": "^3.0.0", - "sort-keys": "^2.0.0", - "write-file-atomic": "^2.0.0" - } - } - } - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz?cache=0&sync_timestamp=1589682817913&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fxtend%2Fdownload%2Fxtend-4.0.2.tgz", - "integrity": "sha1-u3J3n1+kZRhrH0OPZ0+jR/2121Q=", - "dev": true - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-4.0.0.tgz?cache=0&sync_timestamp=1603637417853&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fy18n%2Fdownload%2Fy18n-4.0.0.tgz", - "integrity": "sha1-le+U+F7MgdAHwmThkKEg8KPIVms=", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npm.taobao.org/yallist/download/yallist-3.1.1.tgz", - "integrity": "sha1-27fa+b/YusmrRev2ArjLrQ1dCP0=" - }, - "yargs": { - "version": "14.2.3", - "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-14.2.3.tgz?cache=0&sync_timestamp=1602805561021&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-14.2.3.tgz", - "integrity": "sha1-Ghw+3O0a+yov6jNgS8bR2NaIpBQ=", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^15.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", - "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", - "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz?cache=0&sync_timestamp=1589682795383&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-ansi%2Fdownload%2Fstrip-ansi-5.2.0.tgz", - "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "yargs-parser": { - "version": "15.0.1", - "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-15.0.1.tgz?cache=0&sync_timestamp=1602861397132&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-15.0.1.tgz", - "integrity": "sha1-VHhq9AuCDcsvuAJbEbTWWddjI7M=", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } -} diff --git a/package.json b/package.json index 5b93967..29e44cc 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,5 @@ "devDependencies": { "lerna": "^3.22.1" }, - "dependencies": { - } + "dependencies": {} } diff --git a/packages/gui/package.json b/packages/gui/package.json index 13c7636..a988089 100644 --- a/packages/gui/package.json +++ b/packages/gui/package.json @@ -40,22 +40,23 @@ "vue-router": "^3.4.8" }, "devDependencies": { - "@vue/cli-plugin-babel": "~4.5.0", - "@vue/cli-plugin-eslint": "~4.5.0", - "@vue/cli-service": "~4.5.0", "@vue/eslint-config-standard": "^5.1.2", - "babel-eslint": "^10.1.0", - "electron": "10.4.2", - "electron-devtools-installer": "^3.1.0", "electron-icon-builder": "^1.0.2", - "eslint": "^6.7.2", "eslint-plugin-import": "^2.20.2", "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.0", - "eslint-plugin-vue": "^6.2.2", "json5-loader": "^4.0.1", - "vue-cli-plugin-electron-builder": "^2.0.0-rc.4", + + "@vue/cli-plugin-babel": "~4.5.0", + "@vue/cli-plugin-eslint": "~4.5.0", + "@vue/cli-service": "~4.5.0", + "babel-eslint": "^10.1.0", + "electron": "^13.0.0", + "electron-devtools-installer": "^3.1.0", + "eslint": "^6.7.2", + "eslint-plugin-vue": "^6.2.2", + "vue-cli-plugin-electron-builder": "~2.1.1", "vue-template-compiler": "^2.6.11" }, "eslintConfig": { diff --git a/packages/gui/src/background.js b/packages/gui/src/background.js index 00b5d4f..71ae4ac 100644 --- a/packages/gui/src/background.js +++ b/packages/gui/src/background.js @@ -107,6 +107,7 @@ function createWindow () { title: 'DevSidecar', webPreferences: { enableRemoteModule: true, + contextIsolation: false, // preload: path.join(__dirname, 'preload.js'), // Use pluginOptions.nodeIntegration, leave this alone // See nklayman.github.io/vue-cli-plugin-electron-builder/guide/security.html#node-integration for more info diff --git a/packages/gui/yarn.lock b/packages/gui/yarn.lock index 67400b4..be10bff 100644 --- a/packages/gui/yarn.lock +++ b/packages/gui/yarn.lock @@ -1509,7 +1509,7 @@ "@types/node@^14.6.2": version "14.17.9" - resolved "https://registry.nlark.com/@types/node/download/@types/node-14.17.9.tgz?cache=0&sync_timestamp=1628719497956&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.17.9.tgz#b97c057e6138adb7b720df2bd0264b03c9f504fd" + resolved "https://registry.nlark.com/@types/node/download/@types/node-14.17.9.tgz#b97c057e6138adb7b720df2bd0264b03c9f504fd" integrity sha1-uXwFfmE4rbe3IN8r0CZLA8n1BP0= "@types/normalize-package-data@^2.4.0": @@ -1823,6 +1823,24 @@ optionalDependencies: vue-loader-v16 "npm:vue-loader@^16.0.0-beta.7" +"@vue/cli-shared-utils@^4.5.6": + version "4.5.13" + resolved "https://registry.nlark.com/@vue/cli-shared-utils/download/@vue/cli-shared-utils-4.5.13.tgz?cache=0&sync_timestamp=1628579241293&other_urls=https%3A%2F%2Fregistry.nlark.com%2F%40vue%2Fcli-shared-utils%2Fdownload%2F%40vue%2Fcli-shared-utils-4.5.13.tgz#acd40f31b4790f1634292bdaa5fca95dc1e0ff50" + integrity sha1-rNQPMbR5DxY0KSvapfypXcHg/1A= + dependencies: + "@hapi/joi" "^15.0.1" + chalk "^2.4.2" + execa "^1.0.0" + launch-editor "^2.2.1" + lru-cache "^5.1.1" + node-ipc "^9.1.1" + open "^6.3.0" + ora "^3.4.0" + read-pkg "^5.1.1" + request "^2.88.2" + semver "^6.1.0" + strip-ansi "^6.0.0" + "@vue/cli-shared-utils@^4.5.7": version "4.5.7" resolved "https://registry.npm.taobao.org/@vue/cli-shared-utils/download/@vue/cli-shared-utils-4.5.7.tgz?cache=0&sync_timestamp=1602060136132&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40vue%2Fcli-shared-utils%2Fdownload%2F%40vue%2Fcli-shared-utils-4.5.7.tgz" @@ -3876,7 +3894,7 @@ cross-spawn@^6.0.0, cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.0: +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" integrity sha1-9zqFudXUHQRVUcF34ogtSshXKKY= @@ -4651,7 +4669,7 @@ electron-updater@^4.3.5: lodash.isequal "^4.5.0" semver "^7.3.2" -electron@^13.1.9: +electron@^13.0.0: version "13.1.9" resolved "https://registry.nlark.com/electron/download/electron-13.1.9.tgz#668e2632b81e9fa21edfd32876282d3e2ff7fd76" integrity sha1-Zo4mMrgen6Ie39ModigtPi/3/XY= @@ -5160,19 +5178,19 @@ execa@^3.3.0: signal-exit "^3.0.2" strip-final-newline "^2.0.0" -execa@^4.0.0: - version "4.0.3" - resolved "https://registry.npm.taobao.org/execa/download/execa-4.0.3.tgz" - integrity sha1-CjTau61tZhAL1vLFdshmlAPzF/I= +execa@^5.0.0: + version "5.1.1" + resolved "https://registry.nlark.com/execa/download/execa-5.1.1.tgz?cache=0&sync_timestamp=1622825396605&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fexeca%2Fdownload%2Fexeca-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha1-+ArZy/Qpj3vR1MlVXCHpN0HEEd0= dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" + cross-spawn "^7.0.3" + get-stream "^6.0.0" + human-signals "^2.1.0" is-stream "^2.0.0" merge-stream "^2.0.0" - npm-run-path "^4.0.0" - onetime "^5.1.0" - signal-exit "^3.0.2" + npm-run-path "^4.0.1" + onetime "^5.1.2" + signal-exit "^3.0.3" strip-final-newline "^2.0.0" exif-parser@^0.1.12: @@ -5752,6 +5770,11 @@ get-stream@^5.0.0, get-stream@^5.1.0: dependencies: pump "^3.0.0" +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha1-omLY7vZ6ztV8KFKtYWdSakPL97c= + 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" @@ -6252,6 +6275,11 @@ human-signals@^1.1.1: resolved "https://registry.npm.taobao.org/human-signals/download/human-signals-1.1.1.tgz" integrity sha1-xbHNFPUK6uCatsWf5jujOV/k36M= +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.nlark.com/human-signals/download/human-signals-2.1.0.tgz?cache=0&sync_timestamp=1624364695595&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhuman-signals%2Fdownload%2Fhuman-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha1-3JH8ukLk0G5Kuu0zs+ejwC9RTqA= + icon-gen@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/icon-gen/-/icon-gen-2.0.0.tgz" @@ -8028,7 +8056,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0: +npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.npm.taobao.org/npm-run-path/download/npm-run-path-4.0.1.tgz" integrity sha1-t+zR5e1T2o43pV4cImnguX7XSOo= @@ -8179,7 +8207,7 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" -onetime@^5.1.0: +onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" resolved "https://registry.npm.taobao.org/onetime/download/onetime-5.1.2.tgz?cache=0&sync_timestamp=1597005345612&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fonetime%2Fdownload%2Fonetime-5.1.2.tgz" integrity sha1-0Oluu1awdHbfHdnEgG5SN5hcpF4= @@ -10001,7 +10029,7 @@ shortid@^2.2.14: dependencies: nanoid "^2.1.0" -signal-exit@^3.0.0, signal-exit@^3.0.2: +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" integrity sha1-oUEMLt2PB3sItOJTyOrPyvBXRhw= @@ -11267,14 +11295,15 @@ vm-browserify@^1.0.1: resolved "https://registry.npm.taobao.org/vm-browserify/download/vm-browserify-1.1.2.tgz?cache=0&sync_timestamp=1589682787766&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvm-browserify%2Fdownload%2Fvm-browserify-1.1.2.tgz" integrity sha1-eGQcSIuObKkadfUR56OzKobl3aA= -vue-cli-plugin-electron-builder@^2.0.0-rc.4: - version "2.0.0-rc.4" - resolved "https://registry.npm.taobao.org/vue-cli-plugin-electron-builder/download/vue-cli-plugin-electron-builder-2.0.0-rc.4.tgz" - integrity sha1-yBknngD+Z3GRL18EaO4m8nl1Cls= +vue-cli-plugin-electron-builder@~2.1.1: + version "2.1.1" + resolved "https://registry.nlark.com/vue-cli-plugin-electron-builder/download/vue-cli-plugin-electron-builder-2.1.1.tgz#de8bed25b32e73e28dd08061dd2a3c6bfff73227" + integrity sha1-3ovtJbMuc+KN0IBh3So8a//3Mic= dependencies: + "@vue/cli-shared-utils" "^4.5.6" chokidar "^3.0.2" electron-builder "^22.2.0" - execa "^4.0.0" + execa "^5.0.0" friendly-errors-webpack-plugin "^1.7.0" fs-extra "^9.0.1" lodash.merge "^4.6.1" diff --git a/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js b/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js index 671eb12..f062e28 100644 --- a/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js +++ b/packages/mitmproxy/src/lib/proxy/mitmproxy/createConnectHandler.js @@ -54,7 +54,6 @@ function connect (req, cltSocket, head, hostname, port, dnsConfig, sniRegexpMap) const start = new Date().getTime() let isDnsIntercept = null const replaceSni = matchUtil.matchHostname(sniRegexpMap, hostname) - console.log('replaceSni', replaceSni, sniRegexpMap) try { const options = { port, diff --git a/packages/mitmproxy/yarn-error.log b/packages/mitmproxy/yarn-error.log index d543be8..7d21ab4 100644 --- a/packages/mitmproxy/yarn-error.log +++ b/packages/mitmproxy/yarn-error.log @@ -1,33 +1,25 @@ Arguments: - /usr/local/bin/node /usr/local/bin/yarn install + /usr/bin/node /usr/local/bin/yarn install PATH: - /usr/local/lib/ruby/gems/3.0.0/bin:/usr/local/opt/ruby/bin:/usr/local/opt/openssl@1.1/bin:/usr/local/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/Users/daiboning/.npm-global/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Users/daiboning/Desktop/codes/dev-sidecar/node_modules/.bin + /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin Yarn version: - 1.22.10 + 1.22.11 Node version: - 14.15.4 + 14.17.5 Platform: - darwin x64 + linux x64 Trace: - Error: https://registry.npm.taobao.org/string.prototype.trimend/download/string.prototype.trimend-1.0.2.tgz?cache=0&sync_timestamp=1603219618123&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring.prototype.trimend%2Fdownload%2Fstring.prototype.trimend-1.0.2.tgz: tunneling socket could not be established, cause=connect ECONNREFUSED 127.0.0.1:1181 - at ClientRequest.onError (/usr/local/lib/node_modules/yarn/lib/cli.js:152235:17) - at Object.onceWrapper (events.js:422:26) - at ClientRequest.emit (events.js:315:20) - at Socket.socketErrorListener (_http_client.js:469:9) - at Socket.emit (events.js:315:20) - at emitErrorNT (internal/streams/destroy.js:106:8) - at emitErrorCloseNT (internal/streams/destroy.js:74:3) - at processTicksAndRejections (internal/process/task_queues.js:80:21) + Error: ENOENT: no such file or directory, copyfile '/home/xiaojunnuo/.cache/yarn/v6/npm-webpack-4.44.2-6bfe2b0af055c8b2d1e90ed2cd9363f841266b72-integrity/node_modules/webpack/declarations/plugins/BannerPlugin.d.ts' -> '/home/xiaojunnuo/Codes/dev-sidecar/packages/mitmproxy/node_modules/webpack/declarations/plugins/BannerPlugin.d.ts' npm manifest: { "name": "@docmirror/mitmproxy", - "version": "1.4.0", + "version": "1.5.1", "description": "", "main": "src/index.js", "keywords": [ @@ -56,6 +48,7 @@ npm manifest: "node-cmd": "^3.0.0", "node-forge": "^0.8.2", "require-context": "^1.1.0", + "stream-throttle": "^0.1.3", "through2": "^2.0.1", "tunnel-agent": "^0.4.3", "util": "^0.12.3", @@ -92,7 +85,7 @@ npm manifest: "last 2 versions", "not dead" ], - "gitHead": "660c77e4279c1499f771270941526614f927bdf1" + "gitHead": "3566cd6d33cbe782d91e408d6f174dd826b2790f" } yarn manifest: @@ -2104,7 +2097,7 @@ Lockfile: dependencies: delayed-stream "~1.0.0" - commander@^2.20.0, commander@^2.9.0: + commander@^2.2.0, commander@^2.20.0, commander@^2.9.0: version "2.20.3" resolved "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz?cache=0&sync_timestamp=1603599636161&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha1-/UhehMA+tIgcIHIrpIA16FMa6zM= @@ -3898,6 +3891,11 @@ Lockfile: prelude-ls "~1.1.2" type-check "~0.3.2" + limiter@^1.0.5: + version "1.1.5" + resolved "https://registry.npm.taobao.org/limiter/download/limiter-1.1.5.tgz#8f92a25b3b16c6131293a0cc834b4a838a2aa7c2" + integrity sha1-j5KiWzsWxhMSk6DMg0tKg4oqp8I= + lines-and-columns@^1.1.6: version "1.1.6" resolved "https://registry.npm.taobao.org/lines-and-columns/download/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" @@ -5387,6 +5385,14 @@ Lockfile: resolved "https://registry.npm.taobao.org/stream-shift/download/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha1-1wiCgVWasneEJCebCHfaPDktWj0= + stream-throttle@^0.1.3: + version "0.1.3" + resolved "https://registry.npm.taobao.org/stream-throttle/download/stream-throttle-0.1.3.tgz#add57c8d7cc73a81630d31cd55d3961cfafba9c3" + integrity sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM= + dependencies: + commander "^2.2.0" + limiter "^1.0.5" + streamroller@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/streamroller/-/streamroller-2.2.4.tgz#c198ced42db94086a6193608187ce80a5f2b0e53"