From 0fd69879fa27bbb4f1a6097b39aa695ea8df4d76 Mon Sep 17 00:00:00 2001 From: Daniel Lautzenheiser Date: Fri, 30 Sep 2022 08:20:36 -0400 Subject: [PATCH] Fix types and login logo, remove unneeded files --- CONTRIBUTING.md | 35 +- README.md | 4 + cypress.json | 9 - functions/publish.js | 84 - img/browserstack.png | Bin 98942 -> 0 bytes img/cypressio.png | Bin 13940 -> 0 bytes img/travis.png | Bin 92906 -> 0 bytes index.d.ts | 2 +- jest.config.js | 12 - package.json | 17 +- .../__tests__/MediaLibraryButtons.spec.js | 45 - .../__tests__/MediaLibraryCard.spec.js | 49 - .../MediaLibraryCard.spec.js.snap | 214 -- src/constants/__tests__/configSchema.spec.js | 511 --- src/formats/__tests__/frontmatter.spec.js | 429 --- src/formats/__tests__/toml.spec.js | 9 - src/formats/__tests__/yaml.spec.js | 162 - src/reducers/__tests__/auth.spec.ts | 38 - src/reducers/__tests__/collections.spec.js | 571 --- src/reducers/__tests__/config.spec.js | 38 - src/reducers/__tests__/entries.spec.js | 694 ---- src/reducers/__tests__/entryDraft.spec.js | 198 - src/reducers/__tests__/globalUI.js | 43 - src/reducers/__tests__/integrations.spec.ts | 76 - src/reducers/__tests__/mediaLibrary.spec.js | 154 - src/reducers/__tests__/medias.spec.ts | 49 - src/routing/__tests__/history.spec.ts | 49 - webpack.config-old.js | 129 - yarn.lock | 3423 +---------------- 29 files changed, 83 insertions(+), 6961 deletions(-) delete mode 100644 cypress.json delete mode 100644 functions/publish.js delete mode 100644 img/browserstack.png delete mode 100644 img/cypressio.png delete mode 100644 img/travis.png delete mode 100644 jest.config.js delete mode 100644 src/components/MediaLibrary/__tests__/MediaLibraryButtons.spec.js delete mode 100644 src/components/MediaLibrary/__tests__/MediaLibraryCard.spec.js delete mode 100644 src/components/MediaLibrary/__tests__/__snapshots__/MediaLibraryCard.spec.js.snap delete mode 100644 src/constants/__tests__/configSchema.spec.js delete mode 100644 src/formats/__tests__/frontmatter.spec.js delete mode 100644 src/formats/__tests__/toml.spec.js delete mode 100644 src/formats/__tests__/yaml.spec.js delete mode 100644 src/reducers/__tests__/auth.spec.ts delete mode 100644 src/reducers/__tests__/collections.spec.js delete mode 100644 src/reducers/__tests__/config.spec.js delete mode 100644 src/reducers/__tests__/entries.spec.js delete mode 100644 src/reducers/__tests__/entryDraft.spec.js delete mode 100644 src/reducers/__tests__/globalUI.js delete mode 100644 src/reducers/__tests__/integrations.spec.ts delete mode 100644 src/reducers/__tests__/mediaLibrary.spec.js delete mode 100644 src/reducers/__tests__/medias.spec.ts delete mode 100644 src/routing/__tests__/history.spec.ts delete mode 100644 webpack.config-old.js diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f05adf1d..479a26b6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -71,10 +71,9 @@ Simple CMS uses the [Forking Workflow](https://www.atlassian.com/git/tutorials/c 2. Create a branch from `main`. If you're addressing a specific issue, prefix your branch name with the issue number. 3. If you've added code that should be tested, add tests. 4. If you've changed APIs, update the documentation. -5. Run `yarn test` and ensure the test suite passes. -6. Use `yarn format` to format and lint your code. -7. PR's must be rebased before merge (feel free to ask for help). -8. PR should be reviewed by two maintainers prior to merging. +5. Use `yarn format` to format and lint your code. +6. PR's must be rebased before merge (feel free to ask for help). +7. PR should be reviewed by two maintainers prior to merging. ## Debugging @@ -105,34 +104,6 @@ When debugging the CMS with Git Gateway you must: 4. Refresh the page 5. You should be able to log in via your Netlify Identity email/password -### Fine tune the way you run unit tests - -There are situations where you would want to run a specific test file, or tests that match a certain pattern. - -To run all the tests for a specific file, use this command: - -``` -yarn jest -``` - -The first part of the command, `yarn jest` means running the locally installed version of `jest`. It is equivalent to running `node_modules/.bin/jest`. - -Example for running all the tests for the file `gitlab.spec.js`: `yarn jest gitlab.spec.js` - -Example for running all the tests for the file `API.spec.js` in the `gitlab` package: - -`yarn jest ".+backend-gitlab/.+/API.spec.js` - -To run a specific test in a file, add the flag `--testNamePattern`, or `-t` for short followed by a regexp to match your test name. - -Example for running the test "should return true on project access_level >= 30" in the API.spec.js in `gitlab` package: - -``` -yarn jest -t "true on p" ".+backend-gitlab/.+/API.spec.js" -``` - -For more information about running tests exactly the way you want, check out the official documentation for [Jest CLI](https://jestjs.io/docs/cli). - ## License By contributing to Simple CMS, you agree that your contributions will be licensed under its [MIT license](LICENSE). diff --git a/README.md b/README.md index 5109f480..1c59f2a5 100644 --- a/README.md +++ b/README.md @@ -125,4 +125,8 @@ Every release is documented on the Github [Releases](https://github.com/SimpleCM Simple CMS is released under the [MIT License](LICENSE). Please make sure you understand its [implications and guarantees](https://writing.kemitchell.com/2016/09/21/MIT-License-Line-by-Line.html). +# Netlify CMS + +Simple CMS is a fork of Netlify CMS focusing on the core product over adding massive new features. + # Thanks diff --git a/cypress.json b/cypress.json deleted file mode 100644 index 0252cdd2..00000000 --- a/cypress.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "baseUrl": "http://localhost:8080", - "projectId": "dzqjxb", - "testFiles": "*spec*.js", - "retries": { - "runMode": 2, - "openMode": 0 - } -} diff --git a/functions/publish.js b/functions/publish.js deleted file mode 100644 index 81da375e..00000000 --- a/functions/publish.js +++ /dev/null @@ -1,84 +0,0 @@ -const crypto = require('crypto'); -const axios = require('axios'); - -const verifySignature = event => { - const timestamp = Number(event.headers['x-slack-request-timestamp']); - const time = Math.floor(Date.now() / 1000); - if (time - timestamp > 60 * 5) { - throw new Error(`Failed verifying signature. Timestamp too old '${timestamp}'`); - } - const body = event.body; - const sigString = `v0:${timestamp}:${body}`; - const actualSignature = event.headers['x-slack-signature']; - const secret = process.env.SLACK_SIGNING_SECRET; - - const hash = crypto - .createHmac('sha256', secret) - .update(sigString, 'utf8') - .digest('hex'); - - const expectedSignature = `v0=${hash}`; - - const signaturesMatch = crypto.timingSafeEqual( - Buffer.from(actualSignature, 'utf8'), - Buffer.from(expectedSignature, 'utf8'), - ); - - if (!signaturesMatch) { - throw new Error( - `Signatures don't match. Expected: '${expectedSignature}', actual: '${actualSignature}'`, - ); - } -}; - -exports.handler = async function(event) { - try { - console.info( - JSON.stringify( - { - event, - env: { - PUBLISH_COMMAND: process.env.PUBLISH_COMMAND, - ALLOWED_USERS: process.env.ALLOWED_USERS, - GITHUB_REPO: process.env.GITHUB_REPO, - }, - }, - null, - 2, - ), - ); - verifySignature(event); - - const params = new URLSearchParams(event.body); - const command = params.get('command'); - const userId = params.get('user_id'); - - const allowedUsers = (process.env.ALLOWED_USERS || '').split(','); - if (!allowedUsers.includes(userId)) { - throw new Error(`User '${params.get('user_name')}' is not allowed to run command`); - } - - const expectedCommand = process.env.PUBLISH_COMMAND; - if (expectedCommand && expectedCommand == command) { - const githubToken = process.env.GITHUB_TOKEN; - const repo = process.env.GITHUB_REPO; - await axios({ - headers: { Authorization: `token ${githubToken}` }, - method: 'post', - url: `https://api.github.com/repos/${repo}/dispatches`, - data: { event_type: 'on-demand-github-action' }, - }); - const message = 'Dispatched event to GitHub'; - return { status: 200, body: message }; - } else { - throw new Error(`Command is not allowed. Expected: ${expectedCommand}. Actual: ${command}`); - } - } catch (e) { - console.info(e); - const response = { - body: 'Unauthorized', - status: 401, - }; - return response; - } -}; diff --git a/img/browserstack.png b/img/browserstack.png deleted file mode 100644 index fcf90b2f162e34a3c392c2467e035d8efc2ce25a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98942 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�Q^c@To`Ov1h#`A=~Is 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 diff --git a/img/cypressio.png b/img/cypressio.png deleted file mode 100644 index 10a0146482a05db7d23b781f809f2fed977e40bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13940 zcmaKTWmp`|wl3~6xWfPm65L$|clY4#OmHW-ySoPhf#B{g0fIwthu{Q)!yUf8_c`}I z&pDSLLr?eewYsLN)?1M(O48^k#3)cuQ0THU5^7LTFi4Q=a3loCr%Py|G~^$VtE7&r zx|5}=hl#TV6v*7k)B-5$U}9yVW?^FP^=Z^X5DE&G&PGGWRYy^Q-^|H@+2oCe+0y|G z;f8_|6!8R`nAusl0!=NfY#fEC&fB}GfHvkrRN7pMtcqZ93u_x0Z)Xd2ZzT;gZ#y$S zb1D&Gpr9u|M1X^Zs|nE4!QRn@-&2U{AG!RH>$lr1RKR~oTU15>aT@iYOmuraf~x%3}GMaBO= zse{9RQM{BypD1Z>qrj;?5Q(u1?MxPEPj!iK2?N zldF@9wG$X9F8)u{fOLu`W;Tv*H|hW3QdH!Zb#!qxaWu1#l@OwW$YHjzG3V!$;t}VS zlwy@)<>6&xljP!MXXTaRU}KeH=MrbwkF7|C^WXf8~8E2nR4k zvxJ4Sjk|@pl(Ulq@E^zdZT<&aSa~JHI3=W{{#SYb<~9ExZ25;*lJ$T0g9Ty?%UgQ? zuXO+C7NmyWF8`}|Az%Kh{4E?IHSY{5ZWQc0A}A>KZCMGBhUc#nKSWQ>!G*s`Csmq}q@<*3jcFlu5X_(?6IqQ{Dj3p_f5{jwi<#xQ(kd8Jb>(XH2i1Z~ zf%2*p-}6lGbKfhDg3^Q-=@|udnriIjWis3n;a~zqfg>g@RN;w%bx+oV&SdiHX<`2O z0qP^h%OiDB?-MQPal*`xwBG0dK>!1>&ugzYj6C(LeQN#C%ltj;@$aFPY0zwDCjJox z*Xyqa7>@s_+g9glOuxB#VrZ({!;Vg64gvy@;KTqwaDwrl4yR^9->-+d`2||wk6Wkl znYO<@grP)QkOlesUz>Zyl!7oSZZ*JXB_t?sqLIX`2MP#9$W_(&5f@*H(mpXd zv8gUGt*QP?urE%qSQIXrDLuLPDL8M>ENwB9?j+rj9wJz3F^%E=k|*uT)`4%-Ib%;d z&&5Lqoi76j-r3uiHcHbTInD=aL3g7%)uQbv`AD^uL0q-2Vsf~<6daF*UTD8zq}HLi z=S(4TD*-Cj}446NqEj zK`QPDPW7v_6PpAgb=L%V84%GS9ZkF2!`h4yz;lVi-Y1 zWa9|c-)VKK6MjSF1{DyRCz3+V>waNKqJ*RD8vy3*slQx)99wS2QGkgnEU?L(a?>`f z5QoI!shSPk{90tm&ZPSw;~l2s%kX|;1n9~NPXl>Mh}_#`xpApyT2aAi$V5}#iBr2qi?CBpx{WEmmR(k;MT zqUz|mB3pDY`HBH4iaXeOv@e>}3k*NC58s%2RQpX$THmA~Dm+ZnQ^WO= zJAana8*vW5*8T{+fi<4$7Y+%<0RJSB0>ggpJP|FDt@I<#c;k#VHH@;KOD9iy1;lwa zjAW%a3=|NnJjMsQ36S4W85aCg%ntGHM#%>_7!aCSYN2aE#jt_NgWN+nTj!{+{MnNe<$WEyiYfE`Dq`-IubyJV*h97!%Q=|kg@&AUZB>$i7k#tA6tJZzWU(YV>nXNxPRn3xB`j+H=&sc@UCuvMj!V3idog3w zygwh7uX-j*6GP(QvzA$3LiwZ?S}m%5_GBc-1u;S=EXoAd?94R}XG%7fkOoP=H*~~j zvEhqGz8zG&ajci9ee#=2Fd(`b=K)r=k-%fX)D?Vkdxsj{+sn-Ojiz`_v~_u( zRog)~|Mp@9sQ|99V3UKBb{mnH-p}vr^+3z~2?^1ye2Z_OC;(~88nBMmSTP1g8!xYB2W$aW7CZl7LOTkBn4p5XbtuHKOe`-bcRPS-obo9vh6%9L`G zw9s=&F-%(fnTRa=P!zS~@jb7;4XMR+2$KVv$tDXh>fhDdTk4MOTBWa$M2@35l{)BV zCG+HXW8E;M5bTLte_WMYw*D0^7|;&o^?kUg%dS4fqE&7W`qywhBN5}Uu9~iz&Ss1q z(ZSy5{^Q1i4<8lh(}75i_+@#76lJ>1<^GNF7V*E0DqDTq$@Hp;cimWWbidS92*PVD zgOibych7g-gmRW0Npu!IwX&Pr#@IfZbV^?I^H(@gU96|>&Ohvr&iEfy7@hr?@we09 zlz-$x%9%F(-QOe)*RdVNP;SzX;JW6<^i{Xs?yLQBUE1ugb`Odwo!TJ(dkdl}qwYXv zqb}0x6?jzqxs|9tJTtSi4pr2@ZbxD*jc|Nrj*V?VMin%P|TW znq34y)PKR+ppQQFVXhzTMH}a?eZC z1)tgbKXa`v1pFS81e_gA_~W-}#IN6{=_9v z`d@uMyOLb&xTRs3vsub$VGLi9jRRlywZvf`N&KJ2`zj}RF&Tob(F`rUayk~(#0MFb zZna{s^e5u2Mo5-u@{bB-)>+#qz~u4LAlTXX4vcl;Uw2)N|oH*q1a-4v8CB-o-yvsI-!GgPb5Nw%=BVGJ%6fgX8M~%rA5g#8fQ#>#@sQTSd$ol$Fx!miI zWx(1P^Rwh52|DqT$8@o5@{rzn*_SUfc|uX=t)Z+9FTsK;2h zoU%pTt7PEZzAtuP{!gl&U%uts_IBaR+l@jSHz-N6A%83H^w_ zG@m$}`tWlYN8|3Q91G6E{BJG|UrT{IO`(F8P78KQ8ckM@F;QHkI+1N=Mnqv7nc`p4 zWS#w6U{_AFm5#G69nOdu)wmnR2b`fJj&~vBE-^3$mRncNEOO`E77o`>7@h77;_u z`Kn3fg_9Un>it=XicZj`9iMpxs%c^3C{OD*H6RiaCZYYs6L z1H-cn-_b7bIKjl=)AL|V;isJqSy_g|ZOP7TotxwAX7QdIWwHIbGiYWSD^F(!yLxl}A_$!aI?x2X%;$@lA`^NW#Vbb>};8=y3D=a8;UwC>snK z#7x575Qc9U^Q2D_hDHcVgRqSK{nNnBERCEt=Uq04zb3iy%@q)yt1A->Genq*&A^^byR@;0B=DL#M> zEq_;b`rNv%){4=9b1onQ*5gwE*(PsKNh~}Xy<4?1xsZ1Xx6?ZIB!fpbKc+j8G1sHQ zyGA7asT!2m?855>#LOD7U+s6)UnVhXmEo{UWGU{RtzlPUZ8S0PUj#++Ts$*3>3&mU z-@*9$H@K?$Z|n$rD2fIZ#FYNZzSAp~LO(id7Z9kU+0619i16_9)|q>c6pDgZ^g;87 zfnAmM_bzE1GrY)1`C#v)9|$^2+%8~gVLP*5@k?$VYXl%D7oLpu2Vit8GD*Cd94d4G zHmgGaBw1EMn5`MK5lS0I5V+XXoDh{hqW3v$1%Wv=;Qe_OG*TP_hFwYcZ9jSpf=^UX z*zknZRbF_pLdM~yg~o9GinxL|Ml#SRKP0%+pLv`+j$-)!3N!g;OhJI%_!+hGahQU_ z_^GL{+Mu2O{rk{3G6AKdBP+pAL{Yf(3KnB2g}>)3RbQTZomTbRTqD;#%`!GT(QRyO z8rqm*O>lO)2_-vw4SHfarYgLd@se`^!^HL_h- zQQ6iK;RiZ5TC|R;=#{k?!npA=w(y_L^s;`!We@4zvD+lofU~Gz#~m;&H@op5N z06u_!{%sQp0!K$;yB%FQeK7bHGju)>iE}-{voZ5@FXD~w6wq_i*XDMta=cI_s7?4h zsFlHLg6*(Mc*niO(*0B<2{10dTl3(EO)(l4#i}k{tg7GD$9&!_rHki+8|}?K$E-u7 zP-PZRPL0_EMLxy7=fL=Mc5uDUNp?Mgc*c>j5C(;VkIzP?NsixircW^|esA{DPF;af zt4=1pkZZ8D1jG$0sQfZegq+V(9MsrKB^{m8(Q6Sx-5S84b~L3rTDe8aWWHQ}G}Il4 zup4K5NvV;^F+8IoN%&G7q3vD*Wf^$)ClGEYReo{}zlh zHo$d5z}tEGwDz3&n&<{)N5PUpry9iX#=g_%z11f<*L?oW>GoS2dNj}~#i&Dug!@UV zSjtaK$osk|5=W#gCPoDD{l`XIF2!to-@K1)8s{0kbBYN1nDedNt@g|8@k0YJSzjYe zr(p}`BUJ(Li!D&uZZHAgrKm1&h!!iSPHW{*PFp*M8&FyeVdC(T_94n0- z{pRBgZx<#wau(yi0mKq0Z`8~>m^RMk8xHtEq$)-B5j7o@4Ymt|7D7vu^UvCt`$S#yZc;a&>?!t&dWE)Lk=#a zU#Kv?Wop$c}F-2yUYIhoE1L0pQzjsMdOU0C!^sg7~42xq@g_|L)4H^*epQU1X z6Q31x0nmeLv`&4MbaH+c*aplGSoT0CqtooL*#@%wu&5lL2`hz16+G@OAQaGU!OJ_Q zMPDx*%H zkVfqq^~B=BhnW6Dh~F=1Bb4oGG3y>`^eFK@UhoS(T+XvqtdlW3($v$mba4##dWV-t z$TNl`hwGVd`kqst3LB+KwN{rK3@4LO-tH%gsz5C)a4 zH!EEXo1|^J0(YX;pPtE}X<$wi7U?g!Ot!)TC-0w>pJL|`@Co2KH%(TlLT3bX#_CUpKZlAdKMWrA*y@v8(yoNod5P#RPA+4t&yMlavnxDA? zU>dGvQU9Vn6>EerHJ~$qir+>FfPByj2J@uU93Ul-kt}j(_-ZQ?BvV|r|H#Tu zY85fki*J{7wzPS_F&pnpKd#9%&M#pFncjtI#bJ>0ilX8(x=PsfYnec%<7pc#niVP1 zjPc;u6;w!x7vnK#{nmo64wM)hJhnfZ+aOe!8X&TnrE?XiX*&y>TZfFtpEy}(ja&Ea zI##$vTXxN|?kgs3HY6s49b3sGRIRL31Fr@PD+4JUrVR%vgxORZ6z~ltwS{JiLc4r! z`CRtHj^~E84$u1B8j$#3FhwyY^SHK^>C^)@|{p%?HMMjppxE3n5%_=N(s)^PzstI^V&c6u=gxH~pL@pPrD({iJVW?7NyH z3uq7*;BlxB$!CTvE>x>9s6}#jFmhYa_=(|Qhfy=jkB6o!GVV|&%zsOJ68zNzSV?a| zbz!>ZATsf+l3Q^S2n7uB^5QI_V~2R2%dRd2>ui(Ggz^x}z#jZWeQKS;BMfykpA!<4 z^5+oT7acjUr3tPa@&W-Wj!Iy(d$f(Jn$u1;x;LnmU}B!MsvD{+nkzspS7QuJM#&N( za)flmVq656dIqopIxA_>Du#t1uSH|;HsQ_1B^4<$3Ow{Dg`l5pPqsj(pDjH;`$~C$ z@E%dFF+Y#mLRVw!Cx&z@Zh2a~33X%gwqaEF(-<7C4e5YZ{y!1D?8XXZ$B)L(4;!S* zSNyd^H6sKp!S+^QKja4T;M^GE|vty0t zl@FusaOlWjHa*I|5%z=&tW2Us|AMGo%<8{3ya!UrJEpS#oMTpK+I%>PQ|U04hg`Hl zNLHGpgfd@oG*!IP?BrpNC?lu0bva{=7jZ_&3^*KP$1_N>uDeUs7j*Y%D|u3Z_qXI# zG|NpiKK*EkMs2!~&XX8x5lGH%=)3qitYDS@+ES-8SI&8Jn6 zqP~G(A_!k$HDuXZeZ59@=H{D@2!TzQ9M={XATT2b>12p$h@<8kdW~%X66}=4cnmp3 z`lrjDH7j7O8rH~xSc@E2OK~7Ys+ODT1g}gZDvG=n{FWmY&Ya`wd%o zPR4L!A=y+O^sPM`gN<{Sj2jt$IWu8R#41y4&0a(c#%(){gyYX7%3U@@aKbSKc>W?H z^@(E&86T}xXjXa#G2f%IILP@x9U^32!Jg3lZ3k~=u?|GQf$n}m%z=Xjm3Rx(2yKo1 zEzck1OeNrwFek;?5(KFSf7S@Tf2<)9J&EK)pbqR)nkb z9l9fFIkDQWwWZF?#Qjpe_9VbGG{|4`a+ut}>sls%O1G_2)AzRpHZPX2{;nw71bgnrKM@&RVVi z^G`>1jc+=Ea%l}xGr9ZbW0XG|b8E6mnd&GfG8$zL261taPc{elGDZ76ej^)P z{HDuMLYMBnj+4Huc^$+|-f@I6l~2~*Cz!&4m1G2!^I9*;guyUwouA$BXo|w}<@@nj zTdP7u1akUpGU-ozFjGg+xJEkM^!mV3T)DuHk=zwB=Kd;MtWBFb$F)tfub<59c;0V{ z_ers&95Ivow(ahF5TxD1>?wro@kS8LEkAw!edbp;tSrV$`0c8&QkJ)OMxN;zZhK&9%uj@lf3jA z36j^JeK$$vr3M=uG7-m98Co5EgqBKXwUUU^1_BnPhWaHdeL+t*#0_MKI7vx`?fAgv&@?(xyl`1r%f4+u zlW^Z*$XVQY_JU8~1rS6VjQhqOB2dSxj#JS~4xz(SN9klW<6`_(uimjZa*g^NL(PPp za9wwhJ7)1=4pl{^mdUQN-zkJvhdG7CRp{e6I8uA2=}Xii8ti5cyU@_3$Bq}@jm#1aHWJ!H&{@?u>7+)I?+ri<`_ zP{u4Cb-Yvik6*c98A%-Tk#$cMo0l0=%;qTZf$tJ@&*??C%xq*1#kHBPrAubb<`1sTs#4`JYGh>7h9UTm0I12p#8=^ zWnJU%V4-nhaoO~Oks<97!|Hcw;iGoOyeZe6rxx37geNp4r0m-FFb^4LOoQk$KuOwA zGJ)%2&4sFuD_lZU^fsaI&*OR1$_+bz8CjV{Luc7Xbtd4^Gn2P0T6YB`&`xuvr};JR zKTd>@KUt_6^u*hZ<|LYkBc?#+(Nrefw9my~Gv1}?2V_vYaj_}dkL5-F)qxEvXzV+O zbR}kHZ=Q}eeGL~aTuQ+EKZx|29Xt1&E#Wy)daFer`lgGeZDwg!{7O&2I|UAquE-oG z6Ib$m>ME*15I9%`CO^7YG7b7^#}#%|(@mvyA!#u~b+J$*mGG3fEvvM9CFQ$T);Yy? zS1lf#NwU(1mY0Jmei4lxgFlUn+-{2TJq`#ABT5M1`rfEs>Nq}?b8fR_c|=BpFh^WD z9-n-@@_T;+8eKP;O-vRdnSRw;G+f!A=t6n%kBVD_Czv93T}HXb6BzCJe`)p;e^4V- zwMQ{%edDb8)4t3lBo+?ru`{Ll_8=mopidlWTJ3W5`P3d53(uTalO!V|0cP2P_9sw3 z33Kgt6;L&JNDky=Y#rQ#ufxre>2<3|?U$S4N*FSb$^<>e@nXz&_OgzP1Liu7naogm z0W)jUP1e&nwsYWc=$k}pX*xc>r%l_IDwWo&SE4FCHkA;w50%oSCQw#VD{I_de|kip zLi4gld)TI&o#{0+`n|G7uMgT7C13)U(qYFNMEcC|%r|lH6PWZv`%9XzW*J_MK8(wx z*)o?m;~^mN4P}qE$h37SY*Jo5Dxkv@xa~*5&khvbESbf((Re1$FQK86c>9s})ED8s zV*NDKZ!>Qnf9ATF!7r?^9|`VH>2}buI)0$YpRf>7J{vNhxUG%$;TA)cBoDUXGNT6s z+7H`w1qjBl4;Jb()8Xt#&r+t)@{HR>0eb!vf8R;FVywAc8VGpI*&3Y15EGW*x$G7S5XldnzFo?tF@mOq1v2>EI|e<6Ylzos z4TZjwiRJPKuCYAQ(qQqC8)5gdAuz0Kqoc)Kh2b}{xb!#zp#5B*bKYitEN@Xea*EjyZb#8Oeby!~#D3Yb*L`p!e^pOa(e_`TUwyN6J%2Mrty_ zb>om`IS!&6q4?=fMT6(UBk@XE_dUz^-$bzBn1O;~rH3U^<#DrRuTwIi8~%?~oW6Ig z@#(!_00o6|F8>;6XE?raz0*fcKgYwrhbgiw&wJ+XGBnjJY2nFh{EupiAQfn6cUtBx%PWolrGqReW zI>U>h$^)9OHiQRF@4YFzebV*d+#K{R!wRBaG4H#TB4q*13fzA-{7PjO@$kn(fPU(_ z55$MG8}RqfD&dTM?$DIYik>SH9~qHuGSHfZb%fQQ^%u2ZwO2%@)|c5uT-!gC;OjL$ z2ngM-ax^tSHQ)}%Q`{0B_13D@nhpx~#)-kN`)o&+S&!p$7`lRVz9`)1MB$@5O+rPs z{jRv!uW&h-R841I6Y4Fp9|Gj{7^0XZ^-gZu^?QBBH{eUC6lp#O=@H z1^YAO%I+08U?-4u>>1q)_CaUxW=uTaLB%SoJ27)pGqZPd>$#ga9K+bq@+*=d57HG=*EtWB#}Hh3z+<2W zVaT|RS;I#AOTW(yKCc6@Cy+(>-+tI*1>Pmpo!%`N*D2Cv`{=w3y@zclfC>xawF?j) zk;t*>AgFHU{o!$%;@KdTqlMzt8CHZT`fQ|Nqi9P^qt#Of+=aSC>uOL*A330wOPIvc z{PJ9(Psr2Kq!-sA{IG+T&XD2WW1fT1aIX~}*9>pVvoRIwvRQJn`?=0t;^qA$1CD~P z4WxA-boMzHiB$Ib_?E)#NY^cE_viTu+sO4P5ZxX6!0~GeZ0}y5qgT>IKARW%DN!EM z3j94uPG)vZ^hjj{R7Zo!@X|*cwCd(SQe$Td!q230rLPn9l+cC#bGgi=-_a$@&N+OX>=~r;yEWPS-<{JZfm#BJuE#@_Z0c+V6g0n?+V$1VOeRn^ghyypwh=+Qn;FspdHjU zt}17;qch33d{Y1eaK}1blbJK3`CG*RaM2yZ`Q7a$=v%nw%+@60lt>(-l}R&0Z*8Kx z3lAzRjvj0T3{pVT>1UQ6ZsR>UAG61A2JMqL?>@lXQ4NhileW7~K*uEpDeBSDPBN@* zLjyjY(BA3Dd|L31N6m&hn3;mV6XGPqGti4Dj5+|j${#iA*#gs|Vq zoU<_>xa9pe(mdG&lIMoiC~|6}g%q z-OGg$S1a_3Bvd*z^9b|gWcWQDtPcALuD`SDyjg7v2LO3*BUW{Qw%@{xc8(Wr160E6BZ%bzbf10LP=bm0>yXo3Km*_E zi;HqQ78~{u>a#ga@yc?#(!7Dyn4FX(28$r5^ylE!_+960neyzz4T=3IgQ@xbqNTigyNJ||RB!$w z=x$171jG%qsE|lOOYXD9TZn$}XPots^w(^NrMD^X%~8T-Sevc9AuN~{3c5BcwBq^F z%I_)fNdI)Hw%?`mqW#=b>U0EJFXqz@&ClX^jO!LTZsba(WHCx@te%n|o206JW{lsZ zHw9>MU0yOw32h1DT+WAOH&%)w$>{NC`E$NUZV`@NZB(nG+8Q-_@tTZO^g3BQ_kZ|ZY16b?T{DhB2|*BJ2fv=uVHS)t zA~nFd2y4&+`E+p;Ov>%^hTrJ^pDM4SSuSocO= zjnmq4@^uk@S&^U)!FFi-6G_IxxMwl(vb?I|KWL2ySGwL-+z*XyF9gpnoo`>dr|bz| zd1J>mR1w&_SMQyROeT>}Mz=oUA`G#gucWS2eN48w*t9zOT9((u<$F1rTxR`nO{9QE zUU0kdnt(yZZ~qasN5Itiio4jRZ^uk8>y*SNJpb36Zr!$FP!pTFOC6eYhh!Fy;pfuC@p_5r-Bk&Y{M#}TikUsyG0Zx za%onqxKMqGfbQ^|sEMpI!3F^P>FO<~W-DEjaz>U2F%$P{!{_dcgEYZ^#!-Ejmd`7R3OO&bD(u|bf)flB9jUK!&YmYTx z0Co|R8nAkZ>3Y17>V5Ougt2qFc=%@wQPava*WRQVA9g0R_BhVnqn~d{v@s_pLzNgk zYA|dbsBk8m{KswQpfj~HJXaEL&%N`ifejuJPF&QP*3?**Y|$ATpGnZG78$BU1>*&I zL@{nlV)&;okx zfL?G_u^&TMtWrqM*!dkue_#w58>Fb4Rn^;$KM{|b)CQwdk~%8xu^)!{VxDA1a$pV- zPrKxIc>VD%;$8Tr+rM*Dqmap-mw|er3#C1Jc?mBh3~j9Z`JgvA{P1U?c!SxnQoN<< zMwg#z{ikxZQg%p<7A7{Rgyji65+WCpL8bY|Ne2PVWhorpwxFx4W|)nWq!WldL;58? zyC|0Hf)UW=RZrag7gWPhUNl}W^uv+KthQ5sPR#F;l+keT_VP)tGk9BR2pF5yiYs1J zDxOzxjj1JdkR#YJY{Pyn7*o{{Vquu*mz6|NOTkBhq3WE(==-YrWwpW~tD@;^$(ZJh zG)ZYC+5HQn16=GtoeWci?p3b5jrW<_Jxk@tE=ZCND|oX^$9eS&)$FzmGI5w~g%CqU zERu{dCD&vPH2=4E_2|<)0bD{0L0BPuw#F$bU)ech$R0CkuS%G~45mK|dfhGYV80`K zls9JO{?ZEi2XJ@@EWmWjYw6`TO0Y#ClTXiL)5;O>$UD`SN+*SY3j={t$U!iqhxQ2- zDCjiR0)26&(?x^smN*0Fd^SvPAY~mIq~9G51sa;xOD&(0tpXQ&bNG35_OyK35$Yndhk1fUOI*PI z7e;ft4uBBtpkq7ay$6A5CAYbsiZOkBQ50ah6Uq>Im2R&?S(p}5QSg3q8L0sYhK0Rs zrTHAGIicl(g1`<>t6E>zcHtY*8o2+4JjmGmM%X1R3^QOw2{Qqyp-!=_{f+Hp4*2=q zH?yRl`2jg8$qcj*@SNs1ox}=_uVN5*jAASaPmx-w9MS7!`+1j>74R$8){qmyTM~Ml zHQpJz3R@*Xy>9SLN{b~@g$i-QyC(#mWUyO&V1hJzs&}#WT@qYf-pmV$*3UYBP4A$5 z?}Dq8%YTXtu;B53@q$*&;#{uY<*9W|Vu*c%phob5HU|-Jf43*{*nW(Iwuc7b%_#Mx zUR`XRFIjj%u|zh5A9E6znconi*46+~Y=Bq;>|Tv0y3g$|X#gPNXo4qvwp2d-MCOHX zT%^^&UG^6LEtqpiK~%^!HSM7mK9iJ4KCxxU4!t4BI5xW@w}+6`m%I66$qebY^y;@% z29@K$Nn)$rPjiVEU(hQF{c&2O-`4mRJW_E$T|!8J3I?y^ zQnOPxTUGCm%=$yfLblND*nVY+g7Un!kNs%oA8c));1`@-Nn0lfKHq7R!m3{Xcp+-J zo>o&Jc5ggcuo<_>saf+YjAl3~!#~koh65#r^ebQ&$o7zR39Ra{(JJK>Twl8?-|d6J zXRCbiMzA6FO__vHcDnpQDYDvcUIy+UL%cj1d;ce!QMsko**ILK-V*FFb}*G+23dEh znQpV>9Y+K4v3eNO9QCKl^w$xUM_F+p9ura_MZN3Mc$K9=xkzTsDlN$VK+84H0~#3_ zDR}!K`m@i}@M%Yi2J!gtWVt?Z44;&?qmMo0_%^A(@&ZtyI!gY&z5Z##kh!0aDC`Xs zYz9Y(s+!UF4mvD)R@b(*)Hx|hOU2t8flSDIj{5PI!g!`89MS-gVvxTBvs6#%VpPzO zI{D@}Y~3b6PafzJnL>nYD(Pd5#u{dAk-h#$X>Ume1Z`&1;i^kOCncj36}~4#tb)b~UYj9aj!)Vv z6OtbYJ5ms3(f@O*q7Uy1Cd~#w18+04_wRwlzwYxA#$x^I4`)<)bVT!GsBytGIKj|= z3lO_T7T5J}Fl~)1rI!~^E8_OYHpJkm`(`R@t~(Y2)NMg(q({;R5^p98p=fQ-PGFSRi+ zuLclbzVLsM5Ef8&13Byb=A?b-OzO5-?p-a2dhbmj07?vnxQ4HQOrsIMzg}m|Rm&v{ zB&$tuT9J^A&mJGWb@E^=NjY}%Xj>;EV@fzqqs|IDr;g@wIdhBKGcO=fM3JyZ7yq&3 znk#?mY1{SELy6J@s;&+_;NW{)tJ}G+*YyGN*zJ1xRwbwi?oR^6%*@R0-8Dn0qf)Ls z7J0z5Ks;bnd`$0Th6Nb|X0>GL%Cw>)y`$%mkh z))EcLcf%#o;nt5J+ySJDV#-37az!%=Dk|U0EORgc?K~Tciz)oRX;6~?=d&oFf=e!Q zPU!))ez_XO#l_UJC9?SfWCZ64rX%Q%7itJX&~9TvfsxBbs9IB%D1 z;_lzkTJYp8tLWmy2lA)Q+p6huk#xk3fP!01tKd?;5Pz-jLVzD?l_wT>3U<cyaQXoI!Imrs6pVIv z9ywp|;Gf8<654FvUAS0IioehDN6)?J=SS|d`5NnQ68S0%HL1gO^8iD-L5K;WmZ+qx zpb;y$OKF6m%)4&&D(L0&$RVc&E0zi@&115(AyLW^mg;sj72}tV>=ofk?~zxZ^(tCj3G-Ko!o3VD65?JpfmB_}0m% zE)K9AS3?LK_cG!CylbDct*JyL_iF5{3~nsoDtB>mYKb2$oZY!{1BO?k2_G^@8w0$) z$oc20`1hi4R!es|p+Xa)MFe5PzedQ-gBBrWNV=3*uNc&mYRhWn6K^R<3F<cw9vDhs;bsNH5KYg`Xh6%^Lk`-713E0BToN#Q%tVOqRdN5r*pR+iOwnoSM;#@0F-cWJf$ zKO3$plKVU8P4)c4<`kXUGV8s;z!SR4H^%5sjJ}l?5!BZa)wN4U8OXPbxs4&{&d$oR zrhLYqiOC-3n_UwK_7M|BN0V6;C#M;?8ymID<%=PvA)>{KovuUNH9f5}7S=L`2m0R~v4rujUKo8WZE*RH%;MXTe9;3vNm3I4vi;9}&*FyyXaw5y@>TfrW zb7n}%4jZ@vzF#dbw;*6&`b^zngG<@?;bucb9>S_%25B8*{*=+}u-gU=lrH>#K>45D z)&lc?p#e6F(z(jf&84SfiP5W{tDRe-Q;X5a*ZI=z%xoY)B{votAYTq8FQde)R)K?7 zNwjblXPk^tli^u@V`dhf3y0o}7D8HJYmt+k8H@lM?c&-UZQg8U@-Ff1;6{@wy(%06 zkD+mbs$+7NxsJwLx+CPaQCGX|mS@?`xO%+Bm?0RL%;G|y@C?94`5*ZF516tdfe-*Q zpzhz&El)1s!Ic-Ml{xQ3=ILd(o)Li}tbgEEC1rh8+nrfa{+JJQ0*;SMR=}d*4Ep!$ z;#5>58a44@LDNS18U-#ECn_CrxnUQWC4~wDM*;0}veM%eDYOVh8=S6OcROP#W@1Cd zL^p-jX*Pghcq)Km8xpmZB;Ck5fCMJ=@qCLCD`22<|T<^a)VK0-Zpi_P z&xiWZe;6Sa23?Hn8h;Iyo~tT%75j?vs3o(xh7jwvv12#d}s*!*0LyBTjZe zt*(7ou>r-8?+dirk)$x|{{p3+05ScvpwocMCE6o@=gW;w5@#BkJ9$2C(XuN8#z-)X z2LT|qcGDbbF%exl+Mo8QpS{F;M;qYabcq*B?wgV0hL=xA({25My|%xN<- z$=B%~^QU!Wq@<+mI6c?zNnCK!m@$9P6--RuHQfN0{)~o(20o^QIbW-Bm>)J4 z%sEUWW6;zD85!YGJ8V}+=5|yL_bw&b12r~w-zH&q4F6B(rH-U_2Xm~)ThwXoyML)T zVG`>)MILV2hnYa07P~WM)1)uD)X;|F!9j7APWwT-hK|<;=nlv(r)Zn{sHmviJYv`5dF9Xg+=_QL78GC^ScLD? ztR5K67~fy_HtjGF?~1N`2|$*ZaC_Q6{k7?HS{b(LZM1UqC{6qkm1~uW%%6wR)ZORR zxr6^Uwc)l4x95^T_`j*ke@7$=I*7(KI{K#c`AKg98GyVf3tz<-wkk%hCqIClWiVL1 zRHQ0~n}D^%`CeSCps2NU&Eb06RLWwh0H0Up%Hy0-4^w#YX_RBLxY&r9lQkndO$LMS z-M;#~ov($RgOl|VkD`m5b5jP9?kpD&lRHUWBv1e3!jZ29;eb*`7nqWQf2u@hg`Dha_{WzX;8<sKQNQ5+O{$Dgp;CK{Jr#F$o}TT^Wo7S(%9Olt=pzq(3-f_(f>NXD!~3C)m(|5$ zxGP5PdwaSo-PLPov{&S`&EE6IQ7_?v)3?vZx|SByBwQ7aR<*R1&f{9=T^Ve{$ItUf zWo7WlQjgU`D>`^Vy(FCO4hRGrG$o_!&7OC^ z=yf`n#Z^=YuAi~3NUKeXcpJNDD=sW(m4=4$r_+{Oa3q>l$YuJTm{Wcb`2r{^?Zhkj z>#X&tF@41-Xrj)`OY{8wLG0t!ykl}B)&If&{%}J2uGMF3u%e1wTwHI)O1^+d*kqPx z4&@19>o`3^X)}xJ;k3sdrL1SZk2^E&_4PZ}?#4R^Nz$p3@f-`R z3B5^uJlFV`Cr0q|*U_S^SeQouJ;z;#g1=$6O6+q_Ir03HtEy&Ju1{!%8s9Esy?psp z|Iqw&P!P4kn2!`+;(PKhfv3#*I4h_k%ULqJ56fGeo66tBGvh-VP#uh{PseH zZ&(*fcF<~Mh6nvsXAhy}sQXoqFINn2W9%X-^jPbo0GB^YCJJdxDdy5qR)*9}Y}l+a zOxTiQX-ys@c}|S}e7O9Vl__L7l}*naX>wE6+tTRKKcy5oH0Y_`AX<^uYQaqOZi%Jx z1Up1ddrbat%n!e$9u?XQa4m(ThT-$M`^!>h-fMr^qW1FMg*EJ2aL`FO0xM2remUuZ zqYPi)=wegD+s9JXGIE59We7XZT%QkJMuQ+>KJP<3T164!9yCViptXnYD_%9b&NCb6 z6xG4=TCB&0Nw&d@iQe)DNo)j(p#b$6@2oK zj?Rla9!$uM)tOG5;=kuZUX1buw|J4mx1K#ZiZ3Bubzc6r^sR#eR*aHqolmZFIJF!a z1y$uB zD@$n@5)#emRzh*W$**6V8WJ^#2&yeH%7Oz|A7onuNbKT(GZGdQbXM#<%uZa<2SE+i z1K8p?|3v09eQ>n6C>-v|D2#NEqu;fi>DfL|XpJEP3z`bYgfJx9*S9Mt$ZzJZV2#ac zD}+eZJHcBb48LxjGB04Ir*DCgud!7Ky=|sd??IrccJ*yW&P6%YBjv21hMt&;ADl0t zHg+I-Usk~abLweqZQG>EqQdUFF^&k%WN;G=DP_@zQU(AMo)2Uhw$ZEm`EaO~8-S_u{8^!#XNen3N&j0NeYx(~|XWO-s?B>KOk<-lr`{3?zQ3`P6 zK`P}dR3A}sxUrZR+*`!vbLdTu&#^=V-&VG!@CwSKndP&O*Q=RM?Z@b+Gr~I1NFxbW zOMnwE`LFE+2i=Kx&aoKy@l4hmh})O`A=EMlXN0w|c_X4SKX64Pb3%l0?wslMGwoF% z#jq!ki376;@9n6qRP!jHeMdCqw5IBA1G~V!A)tlAVa3|+jVjVJWp|~&EehUZHH9eC zzVH~W=s3&G(8QbpecyoZuGiVgfm4*O%Ppv{#;Z;HJ?T=be_5;ZJ2NY%m?NSG!=N~p z)KBJ}+Q&}#OSShukhA?nvm45q8O_E1l>!P4SnDted2c0&hHr=GJUnW&9oON+%er9q z4iWz(7cR_C#WprYJ6zFN$nr)oK!F1xMKvbRasWgtPq(okFNnU!D%#~w($wUnqu}Gp z$j^vfIb5Q6)k}0}w~ha#-$H=}z9ZLaN{R-sui4Opk}qh7_q39H5h}-DT8{S!<@#S~ z7~J7QwD$ylfx#^d13C*(B1mrZIwlKrtFzP_Z`L>L%gSLA`VDs772q3GG&qW{?(n+H zW&HGqcS_r7W5aQTY6R}P0cgu1=CnnwPEOkFt{2))Svqm6f9G>9h@e4fCN97IV6Y`w zP2t=Zveib|lUrlfS1Zs|%Bf+-UuWrf3|>Y;;5C->`+{!r;oxPb**-3?vp5@V6?ALH z-vC!nE60F2Ppib=2$mJ_{e7ezo)lHs?4~^|jitQONb2*kcu|vjZBgL6SNVHIp0~9; z#`Wd5C*^Fp8yr#xXa+!Lq%j|J)HhuFj&)9Zh6F;ug7Pls54PaVk|!ARTA6HUIiUC{l)=SyAV>syqb z@p3l4yy|qd^Tj|xmIV>So-2u0Y1``yrT<*EcE+Oeyf_4E;LcoDs z%#l~Uc2?=mng-N@IRfjRckd)q8}6p2{bV`clhnfqJ@$Qbi?U49nPgAd>5-C?p_eVW z7pvhIyoYV=IADEi<*%-P-kTpiF8rTKNxTN46U=U z;T3AU7yXpZV$MQF0wafH3bV~N8P{jB>kj`!ag9j7DWed@!U-n@V};~TdIc&)(5>X!jk$x zK^KhcI&WnFCs#n50k>7`yF#ilJYg4k1j0^SL)%IGp3DE6m49l6}6SY_oNZeSmz(?p4#}< zOR@32#BFT}8bV~QFaBjz1bxo|W&31<_HS=|&ZFaHVOHoN_@z-w^5z6dWH_Oeo zY2R|w0)-_Hk|@~nIau$s9glCDugKw!f(|KRG^w2i_6r|G&l4{V!U?obJugr?v4Q}H zl-jHatJqF!Cxr)(h8=1ws^A0;R{`Q`Nf1XT?fuNWEK>bOv&<~0MBTo-VJuo)a@oLQ zTb~!22BZ+E(RQaj@i!i{#VPN5g3CW6k?-vv2U-b>Hn7hIJQFxaxHVF_rf(C$!NHry z=jTz?mTL~Re_yp|0sKuY&tcfASbryH9>p@uun_$92L^4tkysWc(+P`+&WGu@w=eIN>jtbxUI?>2=}{)SC`MwJg>9$Borh`)+7 z*N;K+Mz|!lE$wJxyK6uH@X-t9a9F$qqe*ZK)>3*O@lfz`Om}z>5jK-12DdruSD)@| zkcu28N)#ypH=``%N_lLy0Z){%*4RZ&M#Zd2k%#!p)FkoIZARzZyoM)&!EP#R@|*Ab zvdwVL+hBQ^e=miV6K$MCbch_uj})lOtCYm9B}CY+70-L1{VRJtPYTXI4;|dUGL-*9 z>#cIB+weg`MyU#tj{=N6Wa*KZcvoNzJNDX)DkE_pi9WR^kKQ06kY^-%@)MWhIiw>8p&#l+nuwgrZtSA1GRh+~&CIl#LH+=-4kbR#N{tiB@zFyo2g|ShS}0 zK)7V;Hn*qfG^+EBa<+pJrm2S6un??LU%MZ=KKsGPxUJd~-Opo}cfQv~>!Q{sZndZ~ z3fPDZPw{yaInksuF*L5-*#ClpR;V-0z9v^&*D%qh&5&VjnqoGpys9$G{3_PW_vIXp zee()Bf){9xNnNk)GKG+6hCsTTcrdHn#sp3ln>0L0!URW;=Z=4IJ!s za$V%&`&drU%^7BZGi-GuMcp@Q%X{DZ^vE*gN2}h_bddNtDE_g@J@6v>YP9e0cel!` zuaZ>KvUB3x* zSuJ`-Rtg&J!nk*)Vtd3IQ7au3j3md9jA=Ko$jRdLw2s5OE~IIhi0C(}>~->jetZ2& zoPP0{RiA`sYCE`B>+TEG*vTelQA8$9Sq*DzN>c$!gi|x49o)1OB4#a0+OYOaPVtyT zWaGp32etbQs@tj?`xcfJLIO`&;ppJ&`~%(CPq*?`s|uBL&b)#pbwt(u zVBzTbF^dCWT*$t_dOjmVn7#bSkejZbIwK>sYbA-w9=N%UdzpCKyBR|zwF*w&=Q=Ps zgFlA6G6wzibjGfy%UDE!+UL+%@!^Jej3ax?JQKBn)b@S>1;?Lj+S+##uc9Kb@B4W7 z@N#%Scc#yVUo)mmD5rsdm*L5s#K;R* zKIp&p&878hXjaaNc;n+eV3NNluCZlbH(}Y#{p|+**+O4G9`|BdC??BtB9n6EaNrhu z9XEAkK~L+vq(6kRelx8bW1Kg2xZ?NAyYP=L=wCN#?zA)c^5NS4P&CY{ubpg4-#9~P zauO^&;6Y=pj(%(&=Ea3^B-GeDSS7Dra!f*2E`*=W!4z~6&Xb*kq*#nc7_4!m5bBbec0Co z(HuD%GZ@VeZEP@{a4Rb@_YFli!4tFDiej%;zS}#r+)PhpcI|p}l~i`dzk-mhySYj~ z^-7^j|KRXVG8}&8slrGOt193rFq7@R7MxtKqxwfkepXAtkVbT_E_=53;YTlJjy1`m z8;q{9Yc+e$6=YPBAnyXsS(Lrm7Bw$)p6)dayB`+FuX8!Z3&*LS^eXx;yc53L8&Y`e z?K5WB3(jnYyH$8f1_zk%UbgC|VCyH3X~`N8?g>g`9;|ZzYLS&0-kNDc)6$V0d{{Oy z)KU9hEX){$F+e_n&$b$0wXOuFbs#DACP{Yv0Rfhc^32VL@px{CK~jiOsY&Tvk(cN1 zD83bo@;B#Xh4)n91A#h3R%Ie$u(5)o;N?%$tKWjW>gBk*^q$Cac(V)Qx?i2FYQ_if zaqahq@aK&PCR-Q7HCj5y)I!X`DdW-mD$30XYjYZ!{o&H|^W8GPfF-MI}_A(f;&K^v_bmQaKI zu@p!PW8>mnPA4eKJxb#AdvsDEt2Hk>BI=M;vs&nO%CDffbu08VR%b@{U8tO+DqQPL z*f44V{+=dJ=R3R6eY7!viVUvB8cSR}HD8TuEn#gMyK3~cfUtg8Jb9?+gyDsv! zZTyL!K@)eb#ZEk_9JD$A#62ibE(HIqcNbj_yH~fgrlq#!1BBnJw*79-DU3@f{Wc-xb@b}FetNQpo zGG3oVQ?u_uur!w}1c+oq9b;v~%oH2le zm2cuN^@hd_Fk0jsmHbeKghByK#Z=Zqjdwohlt-5MTdH`T=G7CYE*P6{y@M#v*8NQ5 z^PE@q1C{D>PS|`t2WwW9CUvN${XU+ao|KgF-@gitS1!Ano!y?2*<2WDAy^+ zO5vwdkJ3bls;Qp+HnUGa{Ys;(rzV(3;&2KC!N4UsCXLyK>pXn|IuVj$_ zhXS#wQk#8BhbffF7NDA1yB_s0HaEIQhJEXIGzn10Ts&UJSoOso_O`!hJ5W&1kRc&H+JLgS+v=04_*HB3Yb{O9vmj-%)!+6; z6E`RXEoSp8`?U*Vt(B}|!)8x@6T!m|`5va(HFeIX)|?Cbir@-+oX%#k<8`h6P`!xQ zyQ)Ug=8LEeGs9^R%=RRq6^E(wbZ=Zf>Rc*RQl89_HhHT> zNoQ1tswz%t6;y)s%*=v}W>RuoJ^9y;%{NqW>WvLm3At>}-0O%RYxxP+9Iy|iyTfuS zd$=jy|B7t?o@f$aNHq4bBF@GXq0PC$BdRHcNN!8Y;|{v4yYG$KW^>sRp6=3SpI}DP zyP-Pp(wY*|K&!)zc8I8VEnxo@MwMyp+&GHNpFuqyDdT&Ar#H-Jw70hTcn5B{heRn2 zepWb(1^`pLd|h5qq$PFkwJ??~pR&Z~o@w}OUWMd4ZZnT(eSQMM)I*5jXzNF9ZulPI z-;=Zs>WL->{#T_`Ms20m()X*BE8Xzxp9;H;IwBo74=G1sit0brmS?6LRT;Y@A<4ul zD%S}KE$x&c)BOBSxTT#2Qn;3j!?(OTqMw~B>St%H1u z^sMc1r$L&eB#@m6;&*SO^12%PsikxPY}@=p=YyY-tyB@H$%OlN9KKa(6@!NL^DHqg z8IidicoEBg0u4Xnk}$Zch$d^T-l-)e;!kolr~TZ#-$XUMslB=#WsR$q&qfHB1$Byi z9604;S;hWPcY=1rXi{krhrz)$PpwtaXm(7q(aYwrfz|}vqx*)_af1T^N-Yt_EvLV80*->*Eyrgi~A&>@5b=0x%+*0g_|sk7s;%bWP{hKA&IQ3{iQsJ$1kiI^(P(-) z^6m}aT`1mwHKtx)Qu|O9u)v6^71v$+Y#V-ef zKE>zqo`HCHC4pQ@m#b|WTs~3IT>TLi8n$t5XlYt1Cf88>StexE`dPTf3`G_x*-kkj ze)~G!46#)?J`g+Or@?Au-&FSEDSe5#7k9AnQN>XA^Ue)NQhIvq%8FtwbM(v)We~AH zHrw(-LP7>5Tc8fp zqKU15b-&6YnAx^L|K|BKf310ilJ(AGmIl##J!JVw(%ilwCo^b}P0LH0=0-{dy!wZczQ9Ch>WAl-Eln8*p>54T(gtobW2&X z;A)zjK-9w7+l=bFZF>#9282FDj29Xq+g7A3O!xpRGaLiUn;cO=Q(z@op=4B>=3kkC7N$Rrz*1WqE`^G? zt)Gy(<5wVcxO2#C_KA6Q)8jU4Q}R-yw2tZPiqm+*T8p;J4=&9EWd*)je7t)6@8$be z2XN(Gr9Xw1JAMf)s2Uka^^-6{q%2O5tA<8{3n7;KOBpkxm0%WHsoR!Tep@c13Xtr% z95*={(a2MdkH4@>9$Exy=-O`X`TULDcSJQrP+BXYd=P3aL?a?eNozNrI<>*+@uMX< zHuWL>HuurmjuJ()b{QEAG&=hxyk%w36|GhCYa_LeyP;WHa3I^y91tM3?R7m34Oqcr z2t#eS(JFptcIxAM%N3qX{^(zf60E-Cj9SltAtfXiJG`lzDN(v&FS+_*_)Mp(p4fRW zoMd`dpZ&AMhYtnx26q8B2;f>e+%j_^M8AjzYs@~(;X%_VkMyGV&pbc4qv+yu;_$f8D7WcQ{j%w>RpBle3s6*`!rf5&-QA9K)f$DoeDGS1AUeY|C@ zJhTPCW(|WxcC#jX2OK0au+!;h<-!kil;yJ2hTeshEav$2<$yY(ztNx)acLotCQcmR zZkXNVND>o!wa(up$;98yNQiy@xBQPF`>KMam4o1Uf?%9uysS83q*jk~sSkRI`{=tc{#sZUjj_2f4U*p}lwBO29|egoqQ z;EglZFp3CYwD+mUO04JKl?Pl{(AD&s)^!^`ij$OO^EjAIG2Y*(HmhpKqdZO7-e@1G zrqf8upX4L?@}O2x(zde+V>r6!z=fC!2L_g4}?auY1=)F9A<;9@aUV8EyXejxMc30aqck)zqepjP1RkX4L{3+m0cF!TUTc2KYX^ z4HT-&sg`5Yva)0lZ8H>1%@Ujrr188Dxh{Xx5Uc2_wM#GM`n6a|nsz*DTe)usmEXQy z>J`uOb+s-~sygd2rWH4DUJ$*n{k+~If;>mSv(P!KkLUnOND|O#$t*y3Dx6F3{0n46 z^jF&?j>BDk(Y3a(31(XutCmKy!ff`$%qugv{e>z9j z+pj=AuO~yz#i(|^P026Y-Z6pw+sNhfoC~X~?Hpl;7w6g7f3vqb3FvBkP3;mCsPhUz z=%R=Rsi+Ktwk#KqQ~vU)9dNB?Xvi#X&&?&NhPEp+iZ>HHLxl8^DNS;EKsd5W4^S+X z5^}T>MbP$qfq%7=HRWh<1*N-`A_Dq=$l4`3Ht>_i#&VjCDeN|%i0c8yXdF%CU0a4> zUB}GuHp(`;2qxuH-v+Hh=d*&Otbtp2&B%wtw;t=JN8amZdVXR>iN$hAw zCoIMuT#50tnXV;i?HE>g;k5F-wl&Zh7rr0nd<1@dyY%LThk}p*Sne*mr}@7(2oW5Y z7!)uJWVJ;>n?JT?aXKfL76TeE!BFFc@h_!uyVtoZaBCgB2D}2&@AxAvRV zIV;GUriiWDH>yfalqoV~4q9q0+Ml^YDife>IT-pqqqKbaHBby?FUANoA+KRMfy*Yu z;@h5?YL8L+e8c?j(ucF6nVI<@$vR16 z_B{p(JqDg4(Yr2?>S|{lpf<% zoi?y5tm`(Mk!CX%l85i9DZ+#nn!?MJ>EeavUeGt;RrOXx-&wOieud-1!9!AnA3|Iu zrfN|cZei~|2o2#eBtdCuDZAO^JKh`#MDw`DaECBr3D|FH_yjD0w%suGi&%5=9N*2{2^{)fi+ zY+$q^h|MViR`Qy9&aSUpM*&1j4Kd_)^cU`?ZR&|vRw*lDc-n^Jg7;zFXSZMi zWP7-{8AZNsPj$#`9yxCaezVgB@*kOZeVy)XY6h zYk3Fvs0DLbb33j~@pRbv_%~nP2Z7cs^8_9jMq)p2MsOWIO)gER@o%lgS{ki(k(#U7l9m-T3_6M-Nd0a%lk5&xBr<(wnw9b?!KdyY@K7AK+Un8+myU|w zGNs4QZa)i>qp?d%=&6leUcBngo_s2}eS32wWV3;JH~0-7k1>l%mmAnDw7TbNYqGQaTB)U>&V%CESb2zZA>>JZHxz^ljh-?1T#xf&In~Dq`2j|A%XgVRs=wqY%sJr?r z;(w;5a?)^;eg6dp%%H2`H4`Tur814a;DHm#?Q83snmEaw@f$*leQ) zFJU7~K3j8?ix)- ziU4oSkS1cJb{0^&H5t2|x0bxY<6k4BIFupF2@I!K)FsJc43J`in#M-^P${!`XXTmz zFmHcaG$iEn*ekdw$R!V=A7Un8{t(i@u9X1f-ko8m#LQA%)rw%A$dKc7c< zPtW4d``!*ymTQU{j7G4sC2HaF){-eJY^$xVmM4b_fdTsbnIiy&USa3eI4Iu)(! z7~p#P9mdnuwt{RWC1ufb=uEX;v)Z>1omBY2F?4rGom%nEngJ<1b`NFbON`FnJ~K(9g2GodprwhC~amifRZ|bqw9?K5*eP24SRQW1W)XWVnYsW0) z)OdnkZN^Q~N$q8&CYz@mLB?pb0q8ZSOKP&7fPSa^_MwI*IQXdWc@;sFDd8jd8HM&(yMxV#>>%7e$Ve8$ZqsIj}MMgQTT&$1Tv`g%;$v1C4~4;yN5 zRfF+!7%IevNR|?6qZ->SpiHOJ{(fG~lj(3@=@V6(&_Q9!r)f4Wv$Jv4nDc^Q2hD|L zDOh!l$E2BUaQwNpf!rXA>^d+(Yx0*jS_0{b2hZXa?d8#BP%Duifh=F!d6Wu*B`c$pIH^TT46|CS`erZ&p>hA;x@Bnx zs-gJ-zvMt$SOHix>eM0C__H!pxvB@RpW2{*OdgD?i2R+G72nL-n$tkJ*%cSAO!JkL zTOc2uR$Kjb*dQWCqm2ye%muuO)4)ixcy4Zvy?FPkv&_(fNQY*M#ERShvk{Fqdc9Ul zr5|u5&3Bg#_8ixLH@UFjpw@HfLMi1govmSJh4MX*@2P(Ah;=}aRvV{f7&XpzSA_MW zq;4OK${awgl}T6GSPQ$5qDUFzc5H5j3ZXAx#Mqp@6WngRnho_PX@cN=Saf<@iC&cs zN?PGIa;1!|cIWwV7;&rB{mAZoRt;{k+xQs&!@m|k1U}3+;=Ietd2}M8yRUX;Trr!A znk%~U7V)alD?8w)6ELlBh@n{HR0dF48$l$eo88Cmy&t1jVAWZGzjc$$lFdg&U1$*d zOy_gL-Uz1GbjDzyWgV92muggAeK+fgXT@kM=a<_F|FFQec@f|z9clC94?_QZ{3y$f zq;b7zw}j&vurt$tXK&N%CDOebC;2yze8y{%o)2>CrWZywPgHXoCqLfDqXAQO z&zg34*F&e&Edrf3HXb0O79L(ENj7qdT^~gE3y)G-o*VzMkD`jyrnN=hbbFz-NzTl8 z=k3?z&x9(zW+^q_x+1&QRZ!Er zo!KQE9&La92>T8PLhS`NrsLZ0saF0JGFWTA`8dS!jI?%8oEJNiPw2iH{y2JQFV9qg zKip>dGmlgpRb4xP?#F;YB|>12lPz___Urm6uE`8K|9f=|Z)*&$f6oBkYct!?U9*iM zcUTK6^*}C?4_Q2b&lGWp|hl}!1|Blas>-gh}URE}{>vj`Z zAA@R#!o*c0vsbvO*T%NY3ku1#!{PJ^UJlP&-!Up6HsL>-8Ue+Ba&pqo)c%!p2h|75 z_Dla!WTXB!^C0XpgWDdN>uwH|XRZE&C#j0s_va|KjTW|=7yoEQtWQJV-wO)J(HGpz z>yk0CUaV1JZ838y&QgZ7=!DTxgp^F9XNoA$%{64{F4hL%j)Fs?L-~3>pCr&yk#;(x zGE1V%9g{|gjED%Lu?x*^8aj$B)uERBTv|2*xs8YrD0o(5+FIJg=qLP3wxz#Pzg18q z9Q22g=F^2sM5V52#ljARrzud1FRh`roTT~AO^#^oBHsxR;oF2|4@ccUwdydK*kLxz zHj6xnqj~WwDaO;FjCxk3Y!*#AS$aLw+@qCJ#fd(&2?yV$6^#`FE&u27uNH@lv8??( z416!__GAELN^5qxY58}pDj99U_gMKqJBsGSi=i zl=9}yG%Qw6uS3j&E_&)YSY)+`$3Dcte|8KOG%)vRM@v5hh=luCNU$5K1 zVIok`aG$h>bBJC?Rk?!)kAAoTNMKi=K3m9KJv}}5AH01=_I~2mm>^1d;eY(ke*r8} zel{W<9oa1dS=A_u0%xIl@-S9jYF*Z03N4o)kOuV$pi0(F@pZ*5Y^Y_FRe~GjxIG7y zl)m4Zpp96GB-2=aN4(jRqwQd)qq>qelEH9qdbN|GE)jYeBS*ALWw3f$8666}I!S|Z zi*k<)h{+XAjTAz!6`2oTNImE`WcylSAsQ?;>DpwvKZ4e z?m`2zPZ*;Qh8S4M-N?Um;YvlcJ)iqKjHX%GzyP3|e6X+EI?g*(P!Bc6xWrJb zfY=1v6zSb_nm;VZJpFz!!k9$si}CFXLx>yl(|1CApajd+o|aRgtiIuh_jc*{ZP>$h z2=X=8cof}4B20={t|VsAHSrw#%kcIIr-)F&%~c$5dm_qtY)$Ei?9hY?jDUt}_4FdU zvV_aEnE7>WpyE))$da=7^Zi3I269Wmu=SB4plzfRuV-p;vsd=@en5E6+~OFk%LQ&c z&g1EvYS#OIo?Rn+1)(a6>1=E`K@mog= z+t%bylI^n4!trtn$On~FP+~RP$wS_YfG-lnhQW+9dT=YVxt11pEvX{3zU!7R}3wgW#cjt*L=L|c3)25WOb!(ewfuQ20XRCghX8rA*ytO-_b?^qX3>fU}JDvM|#$|4%ac z1#~zjrz}-!lE;Mn*CFd!b+bXspZ0gX*4baEPWC+rn+J`h)V6T} z)M4u{3^BL3Nsg8a72V8kCI3}G;p@RD=6B|V%=I^waL-G%7N0?oQTUeXA_AyB$^e@I z0@U)<1-w`xI91N1N^c;=O0kF>iA2cDR!5@mfrSP)hO8woHx^4m#tmjus7lh)L<4k0 zwe}O>6-HuzqK!O3_&tMt6K7422JLoqKhyWn4>J5^OgNgxVTe&xfbM_~G=lcfWtTC+ z3FL6H??90M|o zy0>3==WZSlF+qUcN`Ro07KAwHfT6?X%uIslk#fzBB`-uEy zZqd>)FRr*9cC{HJFBIalbFLbe^fES!JEi{jtoBI~#N+}^BQsMGJ}4MCpAAMYQhive zM&DS}+UkLCKG}ZT`{7Bd4h_JI6{dAt#!?!Ernt z?b>I!bnn`E_xELBZqU_sY`&S4df?bpRkev1ztF6fI@U<(gYbBg)5v`d-uE}6^#0N-kxM%5}F+9 z(he4Lnx47WWGqU74Qqa-5^Ga%-3XO`e#AO@KOf%UL1^}h_Y`xOU=~-1o9wHh z<%!MGm`fx?Q@DMukN{ zWgI<5Ix`J&Ms!Qj@bJ1-kcAQ3mmx@O?fzO+?zgDuut!-{%(rjY<<;Ygxy>k`Dh-nh zDP)I4^np0!8+K8GYVyG2`Q7TZq=oOWg}ED`5xdI&53oWA1*KcWg~*G9c&*Fd7k*m* z9nj=gZ-`*F-n)bq!3|#GkwP}T=`(6o(;pBw;t%y#4UBu;4MZlcfG+MQCG9mUVD=Q! z1PNWB=@zh{7*Dg3sx)g~o?rnqASdLXws%68IT3JEjTXiCG_m=;|0=ItL|={^`NgdH zbis?MNFa4tOj}fq{cc(=ZgoQk79dXj9J=+?Z93tXknK@j!Fh8`=1CxlxWx1BlX7v1 z+icOnPO+F*1N>Mggj24zB7Z_)OfxYMwssbo4;s-TX#vzWRJ8Z0WwJK2hsbPKx;2%H z^^W%1+>#JsU$bJ}dod)U>FsYV-3~7j#$oPNs!jtZGyP=8wD0d2Ihey^EOp1Oey5)B z4?)TM`hLY3eyw~pRbZZ~zO!=)Sl%J$ZoPRzujlBWMYaE zYQRyy-P2kg?^>+)nh(KL}(&4KY3oI;_S(yU+(I}yI<_j-O=NXYdJPnz9@%+VuTdmcI{<~56_ z!Ry_s`rPH0NTHGyBPRG(2m39KN1O`)C{Xcox^=yctVyL~y)EOKY7rfM{-?IJ)$a)s zZ3&exT%7~{+>E=c8Ro{3J&zHBbNsXI=P4Tn0s@6FT|Zi*h?0bB37hp)G8 zzwJ+qmi2p$9gH{O#pU4Hm^bb#EG+qHFHeJz)3Oiu3aK=C+-t!D4NkE9pN} z%{P}MI=F@!s(e18Pl(=+jfewv5%s91kMeL=KEsEKKI9Y5nfBHTGVj)YFL4t1B0k;@ zIn{pLH=aJLotF=|C@Uva{jRLay{nnRTpo<2O~0rlsE__MH&W18#K4jB}cSo(ef56l3Dyu~tI~!y`9c#VrJj zHNnDxdqv0Es3}=r9wA5G-IW^h)+kwTws~w6r(Z43Z92D47-1s~MDH^htia6ij_2?| zz*$aQR*MO~jvHz}?Lcb3eZm$^9kq59P#48KTyC~<$eT|+n3mah2Uirbnhf&SOb6lg z?Sp8xy?L23t>+Lt$7OKXXJWK@6>c{U%MGC6I=D{!GEF-oL>(-FB&E=6Wn;G7e=VfTlxgZo6?dJJkZr3oT$Y{FV>w!rhNVP+9LIB(}CdTt|7{ z_a{a2$(pJQ!q*md?PoFh1dfcmxUE6Qp0~2g(wgPuDTsftA~5y8NE@TN)aL7UChP|^BY+E0b3z&E=9@EaG0XZVbQ~o6K90q{ zp|Jh*z5VL=;r+0RJS!u@r`n z_J8mLe}YgU8FlrNrE2~Xno%lrT`M;9NFpVAn{phTFvO95EbGueC7%(LSk zpQajjpU`^BOHEeoW=b%4M+mw3jYOo6z|V59vEXWd93o?RZ2I4p*;6G8ODV;kk1Es+ z93&JfyEK(NBvX04l|kXp?FA7EY_2=0q+Z)_jpN2Nto4hpGnGl-ko*)+G<)4E?R|!?)I|l+Q9rmcn&9V`Ya~sHRE!8yz z)|NY5{4g$c?3S$4-5m7Xc@E>GVX7>V(tl>an?^2E(u@+807Drq<{jDVSnYhdaT9s- zi-jfMw!Ys@bWSg))rcj&gNZ!`>e7_fhVOptA{BLHxtfTgClB&2okwxQ=p(IMkHO@AH^4 zxP&3!c^CcrVknhMjg;mc%jXcq_N)8PXG2xCw9i*TXl$DJg+cpSm zafoE;Mil~yFM8OtKK)+nfOT%&3~qyTc0EkO%EbP*Tov*UNY#(85()|mUvyRNy`;aj zeJ+0K^hyx_&Sz)3p_tc|_uQote2Kfc-+SvYJrGDzJxkVBaOmHkC3W^@89UG&Ty5xvk zlBI!ZE`foWzSCTK#-)^ymOrt3g6w1jr;vw>j5b*iVQs+JK|28n5N29X39d~lVt&dq zu5&*U@SLGMSNZd{ko~dVH~Az`lihjOaaYszcDYuQc7pvrT{jTY1b(3w*|76`LuJ$X zxcYRsMQoxl_CMae?p9>Qc)I90LX@P6vMevIGWLLCA{4mM&}e*ZO#jKeSZAD*=Q<58 zZ)mt<$Yy;KiWE@u*73J>Q(Nz8Dtw96!v7CR#($I3V00(MUb8LF@4JjP(9QA=A!r;U^v{g zwakzO;ZE{UWk!HUZxj@3s5Xo!xz>;kn>w1i?nast_{2G8Z%v?e;x&$k`9zP*!h%s$ zb`|q&sb_A{vC7thqZjZYLKP2e2AZ*~9e^*K0aGeWmuwi`KVU-F3&Vzg!C}T;tWHQH zZ;YHPluYgA-_C-dW`lLfy$X1t%P4s03To{Gh3q0z@= zKR=@k&0Io`b$xwYMIpt?L+z0A*g^)IlnS5l-`txBdXNWIJkOCbe79fSHX=f~ch6)4 zm;upLKuFylB3|G(`!5N_?epd6!rR-sU?%91f`Pyjf69b_z6+&UCtSs_uq}7Px1mfbEZu9i(Ob(foWwpy8h^kkk#px6R0`Aatc#6 z#K7u;USg5I1Phm}Y8|T47C=Lg?9Aua5heb;%13if|NApl(?|X-Drn+ zrl_18Xj4|E_J;mbq!>O`iQnLyKO*Dmu$R$XSF%dFss_426Nt6Hlu+^m-)O0EWlRld zUd?gJwGIwIn;|PV2pl{pg%iULGP3?E%ou2m`6=s~`aF!+++g=hAJ!W0=~xILn^P)f zus`67Ku<}zgzI2)4V@Lll`)Kw*YU5v6Zqi&MHVk9g)c^ytWi@Bx@VaScIpWP>3aWp zEz@Rl=Sjr?`yW|gbsdVI}HHWPq= zfFKKx%Vz$x^#KG^GS<-A0XzF{_9UZGL+gq^W>~BpNE@XK5?S^S5hOfd(0!(yi+AnbNsF z`4@F_4tMivC)pJN|Le4#qxMAy((7vzBm7KT6BYIEhz4Zl1|?(buo!~U(X|GWW`a$e z^vNt^qu#wH14hoVUNcI=Df5Z3Ymz%8tHwwqry;XC+Ks;mSu#sdf5`QaO<<#d1;kmT z2!BDv1pa$8K@8rGxaFHIBVpw%Dj0=jjCb#uytn&DZ(>@%`Fd|j-d0h)Ae|r##35pZ zBeZE^`j;R~!WZALmhji=Z2YrS_Jbr3 zW}sKROtDcX%_cIjamjW9uH=Ybr`J zqb<+FG;?|1GwrQaRJFK&$eaqSC8Y5lCX&)ZI}!lOlRvI&b&!+1^sola-jm=1x<5TwFnD8+Mb%+b8oIwnJJ3OR90Sg4BGW@0kC+hB z-4|G;|E=UDT#0I(dWNv@W{}3bwXQU6qk2q<%OEmK<7Gt5K7$(_O?QdFM&|qh-{_Bs z4#uQ(r?0wtBFnOa$=#{S`O>6$=iWtr3(cDk72BPwv#*1p#8?PRx);jIo^sqdiq*$8 z0hdaxjy9%GLk)QM)%8}RqH=65&ZgvI|I%ECFSHi806??ehS3YW_;s?leEN}1MPiZp z>A@O$3f+-Td?&i@Nr~;=lezDS%+OK0&nsS#bahf5s_(9wy{3jN-j}dpZJ{EOgGmSY z$5~gG$jI6JTARE7sTtOOwzZ#Mt?gC~s@zgm5S$6rA`#IFr1xej<85z3F}_Ttf}=;p z&dv^~moL^@2i$SAWzDu$gvhcJ0nETNLY%)}f2OmUrX@2n;|p@Cy0x0`JnGtgAGoQ(s(lc1)pc zgA}xEsFO#th1ewBW1o%_K>X8B)JPE?pRFx zNIF%1x>f1BT+telPaaI)&SNM`dSF458Kb#stGLlg9Ke=gn9z zbFk#|i;jcMO;W~Vw5l!=LFwRKqf@lOpej%iI8cZniHrK5AJ<@w*zRK0>b&dgjUbfB zC+U8_2wwaJTW9|FT?^knjtamRUO!lQ<|?kQ+3oTE3_p)d9Jv|FzqHgQWkd7})(~-O zcZIg=C_vW^+f>buyEZ0$ z{~FgG)KKj5Hq1tM0DIOR;z{7{;Y-uoG1AwyIBd!@^{>+c4U3j`|s_D39c^p;@5SG8i|me#U$9U z)Q2~6Y$(~O8=uAo8*HCW5aZKlLZ@62pWkzdTRLK%<89vgbt3s2gh@w1Gi@$}0k9+; z!(+m#0XUeeWvwca8nLOcqB*}!rD7Z}kJwv=hX~M%^hsZw{W)`0GeJ2=VL_2ssd5il z@ZZ?rZ%o5drS4uT?j|K7zF^EV%vrwCvGDs2l4$p6jG#9$FamLsvw|iWCA1QL1=zE* z#OO7qviy3g-qpHBoOpxjCuDv!Bd@F8db743aP);!D zSBZckfhz*{1NMDIb+Kzg5a%vx3Ew=Ql9h?K*&%qI3xa6y`?86h)S8i4YqW3dM~_h5 zo6rs;Aq1vk2FJIXj;GLDA!*C*m|hrG``Y|QL;uS#!wUww_ij~%U`YKX=xGbUUrN%2 z>Fhe{G=PFh*d|RN9l*$!D$P&$$yioiyW!&WXQOe;$*X{I`yBfxWhBc%k5pXFm}Tmw=PHm;{hPlaXlw z-gusX8Mz^EhR_xC0j>!cX&;)b(5(H%2 zv=!gS%T;j?Q4llH`<-+`WxbV-Xe)u&$)|_dxytFv=E04}#U2GQ&SP1Woa4uM0J2b^ zr*sGLzS>8wh+4f~954rL3c1|;)Y4>3$6|>!VXKceyFk zw^;Uq2Pu=y(w=%}P-Am^XL32b-J}(>KQ^%z8JaH6oHZYBS}R$V%y2z|m+vj!E;Hzq zhAuV`x@odZeJ*^>1q5KTt43@>_swTYs#Hjd-RK8T@XBptX^VnD2;pt*-5#-?T=XztPEBj6x5 z;cZ5;Ptz;BxSkM)Fmlg|g`Ht=7S1xITXY0{OpXoGOet`e2-TeduE5l1TdF~-+!51w z%ZZbo;ay%}`e86TaJz+gRIJY`O)wl6fk6GMRGvI8{=`zdtjmIE=Ap%67_-_zh~f{? z3)XLDTZ-<4_dl`Z(o==Anis%JLfXj5M16vhQ1JJJ?EF-Nj9<8^K2k!mMzRnFA~azu z&1SJE=e&aLATXY=4-d1Oxh`>}5VhwW9xXcu~ zvDS#lX&Js9c&J3wz&2`iW@bW5HkBt;nfo(x!zC8;=A|@Ei14`S7gEvclv8BhGX!oy z-)yyAz3n+@02m+;Qy!kJTF1a7<_E6VHfv9BB1Fd$LFzMaVjHO}jSoIot7@hU3QFWl z#%iR=sC$gb*cNS^ji{L)|fce$(NmYpJe*iqx z)NoKF?TJmb`zc`2FBNzDR;v~7w`EF(=y6dD1rHshr)~F-c&SAUH!TwDX)Qf%o#)8$ zjv6_fd<7nm6dPO7UqFVivC+0Smi_~m4XjW3ad~9n{N@>dP)SXS&Hk?!4vX-LayG-f zv0DLi2qda9FfOYgQsx9FRbe)D6iNyO^oFRrnb~QdY_58MN|sET7k-~Gb2z3(hj7yT z0KM7a0P4;yA|`$`yYd5uo>iEL%AkIp>IO4oN4&G^DKXaLEHN)J@;_1WpKQceg3j%9 z90wTaP3i9Z7iHQ3g!AEI}qP8{_C@M~Op00ZD<0c4&enQK}-)^bx~gZQgny*V?cGuFy~!jsVCyp z=f2Q2U^clXx-|k64Ud#vo&u}=Jw3}b_}QhXkU7%F=Dplt!HL>L`_;6wg@kMElrTCMpOaNQ5)eiNi?tS zoYyzo;7ZTEJHUr)t&MkFkGm<``SP3490P)eZk~y8AAi^P|JR8dec2CC6*e?w)@rEv zxQ09*V=&ZAlFkuk!m|IaUJd{1>n?-;v%uV(xSV5^DGFRTud0g4=l!|hiHCx1*m3rW zgy<7ahdaco%(YE&`twU!#$+>QXaJhO4fLk*{I(Dlh;AMgGa-+jnf{$!!Ay*{cgXSF z*lqjHV&#cHao`i)4MMa*dr<<+OdGl-hJEs#NtRuxc+i)_049n;#)bG|Qmn3-nOZuS z%TgBFVFfGeI^&2TozCGx%xgf1VOccx&II_b;Y?iD zJlG#g1pl|q`-%D&B?H<#j93+$mp4nj239 zCcVAY4|6Re=?F;@cAlTA9T6Guumb!fZj44+tx?UKo*;yuPXeKu3hfG!+q*k0-`-bL z{25qN>i^xjfFG-#M!up2y+;kpPWXkdZt(7bAg37$b}UYP)8)(2w(;}jcpugYUCx&o zg(|s(tx&4vc24!ts3b!H12jUNF>S6;7kSGBmZdj(9D}L3r&>Hn|C`AFDZ6GVp0v{4AEYuAbL(e?)PFxnt)@d?A9heFW5s@*?do4_=WL9+XwfK+gxQ2S>_)fbLWW)p?;G^%LYVU4-ZU2 zLRRJpL1v;R;6D+_$R)XjS#26%bRfi>Y@Dg5p<$u16Nh52%!aZq>VwHW!2rF#Oaw*> zDUHwBg3_MLy55I5dkUCAyFMS_qKhSjv%sg>Zn1^8ZcfPmJ5m03*=BI0m{W8#z!=Sz zJv4bm5gDMc#Dz0#KRZ9*%PDBCLxjgRoDE#df05qNcklHmqIM7j6?)^@Q27EJ%4XYU zz}hIr%V8|b_SLHeasU;(N*T4Uu}JkML{kfkHc?4=B0;|p*O0#^fY{ZNko=tE672ffnK;cYm@@o(h1Pw#Whu9t zQh7T`UGHYVh$Y2PO58ZrBAxEyt|jsNrU?Skh2bm1HH!Kk4z|P_sf30dv0~~)FJ)!r z!;7Y^O*hsp7Y1kAeZ`zOz{W;ZbNlA)puoQaiErJXdd}bPS-sDJl2Bcg@pivH)g;EV%9w$>OW!8(GRKvbc-ddR<$?;9SJ`O`2?(SKamVSxXUS?YoL&T2{3sVr|RP;y*df5`o8jw|qwNq#tZXQOz{r#q{O>6S)KkgRK=ZX*ylj|c>xk3o&#E?vt z7QYn3TXaMAd-)d3>_ocvHLYrZ?yepz1w}`(g#7#z&{|q^?79j0>^x;yZC%1g7Nq-Y zYYMcRjMDr6(svzbQtMd%K@LT0Hdotd{KZSEI(=0Hdhvapr?J`VVX)Pf<3Tf* zO-+oX-PrSjly`^$|HL|Oe1GO&e#vy8J`#-Wo<@9=(gE2h{a7N4gMcXYQQWs=ni!+? z*jw6w3}!uXK2_Z(HU|D4_NWi`QR;0B&KmEvQtE&kF4+rmPG|k5iSbh{UPi?12Fc^; zt`4S?yz|FL)I|q5-SjQN0oxxgD!;?JL%0Hi8rry_<4rX!GSYSTi_CDVNDjoqgSC&B zmAsW|YiBGXyx-o~y}Hhtne{+OV%Siksk?A^QpNqW@{;t*eAS5x zv-?|8t0PvOH|gpiCldnBCB3abYz@w{kXdlzs1J3UMKCsGK+1ZuY0uPHnvt1nMf15qxgF2vM$ALT?M#%8IN4$?o0$iPM}2>YRk%B z)yVE(!$I?hwS*;&Ed;}q!7Y*kRJ$_euzPwb(YxwV3aZOOC=fILvCpp$R)+K)RW&wx z>^($y&fE2JL-1jsA75UorKkUBQxWYdzFQ}8jUyOzqw2iD7NF=iptU+zerDbbsHS8y zV!ooSz3w)xhT7zGSvooc&FPO`DGJEJW1mH{5H!|YWf_mevjMS=TSy;ces>3(6u)}d zY=1pWkDLr|Rm}NrhKnO8mtV!(?aV&cl9f2vL={~XEJ@|0fGmBNg2c?YgJy@QX)7xl zr~&GvX`^8$Q8xc+4{_^Mv>d@!b^YT^%ao|G+1O1ux54?_@(s~cRImPRwU|JG3=t}G z(rP@?&u^i-zJyCpV~^r2{CTkG&9M4IaD%8bF@G;|`R9XX9e;nM99bmmBV!x_Mk!v_ zj7B&S3rkG+u5};$1Myi$jd{DKoiLa%zRiWpop&|Rg{Pvz2eK#D8RXZOrCk2Z#hVup zuopx54&a~|?rLV{dWD&^waPCjYPiB(xJ=~7@|mh_7ELvY_+86Mi*GM7wY^-6;m=1XR;a7;r5_#9NvoV1)4#9mAeSn|NT^sX+#bTZnNcy=TJNV>E z9g4qjmL;Fvc^x(4DCs`=15g&uG|51o<-fWWTU-GP4`soxRxJ~a6A_+T3%6MnL2F#Y zmNOu2B6hXQ{^w)K>=IC(!<>I^Sf;IACS?~sXC~+26M2O*Mm3zp@-fHJ**L#~ZD91~7 zCY*elj+xJ59!y}%{M?G&YF0`bkX_(7K8csd+f_%%`aq4wnqWsX=x+moBr#&liC$P& z(nPsu)aDEu)Z}wRb+>%3pb;SPzCFJ~UM{EebM+llG$z_;aWr?YYpNA-dELOS%5+9? z6y3lL$b^rmgEaC@glo24WH6@6<3P6v>mIbH8Ai(@AD@El52`P1OFWr9BfeNqG;qAw zBN0lo!u9&Aat==mnyr2PViIGdXze`90m2kj-hPFgP(C6pwmP^g^)O}eBi2o;T9!Qj zXQDzOJC`huIBaRA1oMGq|JpxrxnK}%SBgY69yu=VQLbd!HFmJ#z#wyRuPUbP~xko;@86e&KEFO6Ej|AqyoIe!iEOs)r7A@%E0zA+zy?y?cG}!mc z?n++#tm5}?x+`0H6o`&8+TAY3o`h4HtbCd@92_qI=C*x@!jy>#JwCcsANNND?fXzK z%$mHZ-5U7slc2CZDwJD#Cc&q5o6dp(sI6uWa)x4>LGoaNZb>DKjBso^6QAAuqA)2fYVtB`3?HVYTQ z!gl()HvWhXxIste&`i3k7S_vFyB!hYN=xf@it|JIv#3EFs9cz1X8KA3v`Nt8NvYwa z5fxrR4EoF$tkJJZ`a6@Bb_RhUity*<4Z>{ay%uG2DD?QZ?ZId~^5zAVd`s+9aR|bf zK+VHsuG!J5%T->43BD)2iQ^zi{8E!M`$CXof>dnpkHXAD>T-sH(3wBE`)v;SmvML%I_?N2s#| zyjP+8zj&gSTGO%o8*w>XKPBdu^VU+Bj6a=zc7xmJ|f-nvf zjY0k$W*~R3Ae&H>SXimxB?B563Coes?|*(&czKp(+gjhP?R+qE)8Fck^2?VZYh7~! zYKQ5}Ce-17+(KzP5=PN*`VS)k2fiY~NAb8Mldpm?$6K9`>`{A@e(r#y(#WNz#vISf zLp%N=O^e^wR*PD6iis%~tIo{3Gp(cc6HqQ*%AKfxBTk~dU-GS=ov}`rR7ga<8z5_WQWQg*Nt#l|1J_(rdv73+S+Kp$Q0tvre0GyCGwMELniqtTFeN zfckCzlgLd6q(`X2Wl^9q5JT57W|c6Ahnm;@MD^j zdB|A`pSM&qYFz2{EKXauZo8Q{2zW-%_5!v{UR_~O%GkY28pTGI`b*}L(FknDG+hF% zeq}>7CFzNHa6jNsM!mKn{>f=Ye?Yg*W#n2$r~}lAWLY>}f5=nYm-}T_wfEJAVCbI* ze%TJ40gmJi;B)#2?qtZ*W0371_C=RVbWk)PtHCLm_vmyak;;%Y{~SW56^TuOV6RdW zhk1+bAB`_la%SoZ5Bf?P2Lq+p{5mRuL@jd8rIDc8GK=Ul#e63=w0S7tVE7@)?@qh*RrX*FM4T3vu< z!Z?nIaGKCLRlipykNIL_gPyk5#9il?Y806lPKz5USya@7@mx2#A2Lb2nzx@S^e%*E zGFV%iR=)n{0Nbp(9xvkzue$s{xv;bs?pocuQUsE{T!&k`OM7ZX1_(a?7dFhI_Lz+q z!OF21FGFzyik^*(?Ch#=%f$Tcnn#ztVhRnxP`Sjao#?y6&EyK?IoOQm`>}vnWW zPE41V&yK76lP|ZbCfDNQ4%5t_DgD>`lgKOV@%OzXoWdw5nT=k}qc|+NazR?>H8q{Y zgZd23$|d6R7DsPwZ~k)f%<8SEp=`d8r{j}IUDgM(y3aqH&O&scg|Y5siVrGfpVAf$ z42uyI=TQ_9Upm#x7*)SJz!2uS{MlP1W)!`7){dk_(Rp`r?-9BiUd|qU%raatA`*PV z#svw3oaJ_Go*pef(UcQIpn>&kW>UAu2_IgdHK^h6Z||4n+mCH14VCwYlP`{MfA)rW z5A>f;r5`(*Jo1p%9`Z z<*{o{p>3;E6?G8^RL0|2rnzcr!p%8WuA0r6D@}%fv4VG0E+mCQmeD_DEKD8vpn(Yw z{YJo>w1>8hKem7?^nE#+V(+rE^rgnXb*Q9ZFt~jAmF-psQF@2#s1ifbBV=32Bvumf zW61>(!r*6#<8=#dd}~{qu77gO*9>cgI!XD%pXP>F8RnSo%fSx=W{aqp7_~oBxuRHr z%WAKXIkqik`VYW4OL}fkj&7W_4S!EO&GFUG%=hz>tfQ+Iu}gjZHkWANqa|z!`AJ8I zx}-u@%Qa8XFIF;*&GAz5#COkJ`ya7dz&4(P@w5~z=VXC&G@;uwofB8L=<#mTo4e!j z<>TSuVYGqkEFRY#ylR6NTF6IfOqehQ zp9#w1QryLLuYhrgx<(@kTB$>m2vU2`$8VgRx$6yKe>yD4z2R?Kv;JKgxbbf+BA9fs z80FeMD#RJ)&7)AUZsNAL-aJI04F#GtY37Aoqyk2n7NoW~x=v@ZnEUr^Ab@%$_Lg^= ze;KE*RyRMO0JitSBrHX!&*1&H=VhWKSx+}s;4xE@Dt~1#$VpX>oMyV|S>vXibY50j ziPY1qKWN*bR`f$1Oq;~DaA8QR9s(T`%Blr{S;qL0eO+=gh!t$hi|${;9S~V|ZEZk% zyZ@AyPk5_@Kx%qL&6uFV)(kfB#fsT<852(z0qmcA5EpOpsO<77>3Ck(i_;tMz;zU% zH6kdDA-(lkWJxnw=T-~Nc;3od1`anr>u2#KXIj#&Nz1gOnm%WAral{HzlO9Cj9gJs z`5AhX8shOcM1xl}R!HB*hK7g4v@{&lKeT_thJOT)leWcMP5|(dk&(ua0pJ#_8c>3~ z^A(IRkYaj~Sm~fi+I1iS4`wL3%!IJPD$u~PloGi4FOZfzms9lo?P3Lfn*72F^jFFuoB`L11M$f5bunkZtrL8smpiW4 z`6HVjbaoD3tN%uI1Qu4&LmD6S(6rU|_j&)2%v%8U2*nD@{)d!Z9X%>6F|1^SfR(PS(r9&W{KQo<)EwKP% zuvG}Mz-fv@|L+7yI4;m?(ee9_r@&eZGBwSN{ywz+XT!@Z$L}ScCcH@w()M(B%wP~) z2qckSn;P~2kIK$MiStEeLK=sd!P(W-5Xe;*>|NOSDQJM3 z!C_vFW`26{I7$G#(Qo^%J8dkmt{1!`m}#&uSDMGogHYi1jI4u!#gBzAi(1pZ zsM2Qt=5R)=lizBydd&R^44fuY!MQg@*1HCTS33dXrbUx%NQHY|F+qK^qFr}W2M&j< zD|NWA8Nucse!yxRXn{Gqs*DiL9ei+hgfdMvWa100hZ8>;Gf%hpzk#6ppXiqVBCMVk z>HPOwl?F__0|p_HYe@h*?t~7lpv;P;`fAJN6)`HD^!v87A z6e1IIF_H-YL20B7PJWp@CXw$}3cD&`)!qMFkD!9x6?xh(TE8+1sfpELz6k>LVnq40 z#1+};pIw(vA5eOhh$%#AqIaF6^y>YZSf5+S_jx(kt5nzXp%gogy-wL9*DN0ax*746 zZk&3{>b4G+2bdo+6J$*D6@^hn0a6(;)|&oFwFNMYY(Z4_Vbx$g-MNL|7Oj!GE_u<~ zpS^}Y#mS7&Jj@oT^X~mVHD$gKG%r2JVy*)j4|J(?^$KW+aK~Rh^(Ccz_=;M5_f2Y) zs%Nz|m)!v`+{&)HUva)f%8>PKXlr|e9j|N*?uKmK!&bXoS}L(ED1y>yzv&tB_FnsE zouuaT@NwU{tIHorajkAwF>`fxx_fqum$@K3F6qf5{`^Z@@~P|mobMZ@68&^FPjOc< z9K@zSi2vZ=&55ms+igF%7D2qO%d_WY#SVc>TFsz}ix$TbB%Yj!pW%Qo!!9ZYav{Xg zX~^tr0@EFjggE683u%s(H0p?nX%U8?c+w*4^*GHgrI#031f!h!UU9-ve;(%w1&lxyQ%TgeN zCO2+L4T)05X&P2|Jmx^Gb}$MXO=YlJEkU#ez9au0RcZr442$+Bj+H~`4I2az?D0dN zLYXoj$lMmheIWCM$+7w7jMojeV57Z?Xlv_ z8j+zLNI<-tXme#}(ISmo;G9tVzT^T~Ht6Z>26VVpuwVd(4v z#xF!dpl*z0lW_8*>2sxNNQn8b=NbtEHU`6f)`NJ5Tl@diqC%jN9L5pnjNFnn>D)JE ztu`OV?MXw|xLoNkXOcW0#eJ>3C+MDIct8OnnIRvdC&EEb1Tis0<#E(~D`7B~VIy+A8{q002Q z(zW4f;+WACpxFNc?YEYhDy5X%xJVTJN07StZjkHg8K(0HKz*lU6j%kx9ff(5)?Fty zR5qzbd@S3=^W#ajO3+~hp827D4Dqw)kUe)(`>?w2m&j(|_k#u1*}iop@+NP@gZScO z+xBhrag~grK`6f-3rM0Ul25sVTcdMh$hZd$audV|8dxV-gpI~=G9kzn3G9Jx&=$}e zWYDC?jKc{GVbWp#hYl^N^gW@7xVf3#A+7P_R%0FPHy{mYp=JqY)(z4oAayX72v0qg z{{N;pXw*6)}8JL1V;oymr$EY#~a1$Bgs z$Uq-7u6T!a{rh}qZ|rPnP*c?%3W^M}TRFw!$6uQRT~IP`Jn+zmV9#IWHzSS$h*YphGY6RSkJ;w6 z_!2w=ISUw&*V7d$e3#scw`7U|L&O&`ixAhJN1Q4KqT|t^#8G|mb1vvpGeKZ=73*zW zrtbW#Sm0q&j3{~1xznuISg+@GFq{Io9D`I?^K0H@@$upA>Z}E{t))kqEn^XDiDRA} z3bSb~)uiCv^I4%*Q)e(ZS(6&Ir$8n7GJ=}R`qj9qC3e{piQEcY|EeYA@k7X2%R-V6 z?GBcjVsG+tcjEp`Kk1{XQ^rN3>+vS}cZX8r$}AQs-n@X35V63GK+cIuG9ITSVZ2>q zV(2|HuRK`4LDVTc^ax>B>Hh}-I9@oLw3a^flJNNoizmSvVG#iRcqodu#2?6R*k zD#fobor*KpyJ&}Uqi1ZBD@XIa9yJ&6@i>gyOqY85B~1WLZoFlcvagOv#N$Bj^7Z)< z@o{>p2*nErT@^6OTEvWV^-pdy9c}6ZJGq{B^9l>PL{A-h&(v{iDSbqr6%3m#H`4Yl z;6XyU+p%uHW9^BQ2>Se@zI@!L+Ni!qB?a6QaEx7^J?s#|9xJ~p2FtEuFsFJ+=|Tm~ z0mqv_2XpxWDQ$XeGWSG@We z!r`?BAxL$*^#h80_t6bgt~%sALf|Lg6*6+(U1Wtbs0YAsVkNnYJLiFRXb_YxGx9a4=ftqKmSO!tV!`aY{pn@W zFz>+h3NOg`H6hd z?%W+oB~mBhHnpNCYijbcy?dJ&%q3wLR>1Psb=8)@loAT#8O6oEpu$%T3JgDZ-euFr z{K{7Gomv~UwJj!_g-&e{+No(U+$m_MQfNsWTbGsip+OT81L%eh=H7s2CKz8#N+$AH zFHu0|FfXukvP(RxN9v66y%Ag}V?lMqp+*pEhkXP4Y)eqKtCD?5T5n zE?ISZ-KL}{i0kE26t{vZ+jfsKY#xyWm_LI3$_i&y^(TZDYixXGaUr_shDORZkIXg6 zg`I&82tPlQky(c!WNjyN7aR2X0RDzEFc0>UzD1(FzV0eZhr8fi|F`a@7AgM<$cJMkt}_jFrl0aZQCG zF=7y?8I{b5+mKgDTGLp?`^lNm?&gBi6Y47ZP$H96s*47on;SQV=v#<1j`sroz@!K%Lk1c)Z(8*~}K=>)9sq@IA zV3TLV4A$O2CbM6W4dDm4G`9BgrkoMlO;-qTUoT)%#MrDUkr~-gGLsnzH8<~QGjfcJ zLzXHe=7npnL-^W0KY$oV}OIf2MGoxDoQ!oIFj&6&sGuJpAb9%6Joi&9!rMVB|t-% z3+AqraC==QQuM8*>bjALB~57A(BE)STS_32Er55xH?IxCnm4b#xqIsMNu<%x&neJu z95kEY4ImY04B-WFrg(z1YD$s}e=)`M`Mo?eYf_dp#qVEz7LwhP_a3ewG@-omD%rO} zIAa(iOb}HwBk@EZ_>^G`ElGp)zJYv@%J7Q7Mwxyit=lj3T*&X{36*szSrb!>`eHo2 zO!M3Yd;*@+8V8&=K_5HGp+I#Mz^n!{IvvVO3LONv_xxNyVIM$3dm4nZ< zeswS%gS1l;3>nkd|Rm7zC znxNi)$wF){yvwbL`mA%r{*qbT6~OOLK|uRVgUKV9Xjm0inoJ02X=tkE!@)qn4G!P$ zcPo-x2`(@l+z3PQsirt%~piY+bKZ@?Sf9Zm)|rPbiVL`~Jg;GZWiC8tLjBqN*8hOQJfEgF>SD)pZN_0 zi@t`ke!8k2>;9C|>9i$z-a#E-!%elBWD(y0{y~<6mRDYR#j_Q0pES)CfI-eV^miTB zIW7sY^Nmb~-$XC#b-Svj3)otJ9T~h__hpx3H?i+}4Q7cSiJbOM@6BE^xnGx2Iez|p zhneBK5ozfngtxDOM>vT4f#OGAkAeld zS?P1m{q>JV!C}BJ0S<~b44=4kL%ZmR1=W(UwZY(vJfIc8aVmfUN2DW zI5N%3C1}wS5X{(~y`5e~kpq~+{m`kgL?XqFJ|5SAJSoBytmtG)CXh{Fl+P<}_9aLx zWd2wWw)u_+K52-JHUdPz!3Ve&|Ul1bH2&IE?tj|`l;QvRUV421(B#L414fZBuR zs?*l6fqI~UHTZBOnnS~1I@gY{83i4UcY6lv@z25Nj-m}KFKZ(k zuYtJHZX#vP zX0T&?8>;7ud@xPTx(d68v?b~<;FW4ejjLKxFe4119>Z9YehlM=UQX5fp$o@W8xP}V z-AF4gLzGf$7*($(!4KGyU~3RWXv(tyto;Vsat8U;jX7KH1>}ng7$kPk;sBOlhOsU0z(@L z3ZNfeXkSi1`?4D%%n?npgD4kpofR}Zj;)1B_})3iUM;&7c?Y<7AVUyRa=1dAE9NMkw`QRrdok|TUs5v4(+he zzRYP$67~Xv@u(&Ov4RW)VMBn6V-z#ZM6hktaSF~M;}9+>05=Jhr4n*5p$t-GNM@)P z>Ll@QAUYx_8b`4E61K6B3TRy_ziO|Mxhw>7JvtwgQ^~Xd0jZ$tV8G5U3J}%|iFM#o zy(>iieN&(p(d+@}Hw?4ZMf7#7h=r0(5RSqXh(@>xAS=Mgmtpzn^0*MXV#T(wT3S^5 z99cEl1A=UU*Shw>veTkXj^%j(f~DCM^kxuJ0k+1Bi^Vh6?a#*4WKvaD3#c%U7>BHW z3(q^|5!H5(^IVn!*!RH~GT*5tX&B`9FsnVlc%FuUHVk2gKIgDIk;V(CS!%`)KQ#}) zSFzD#A`Yn4ifOJHL)>S;+)6OHihPL@32!tMN)6~HcMbE-D|pQa3V-9oS&L+aj-_l2 z^Xy$r#g90XpT@4+1Jz8Aik3PHVW(`{jBYTh?xxN(>^V$0w7vi#wF`8BR*Ou->Xs1L z+-fnIaTY?@V43x^a9{ky*$c3)p{dzAR%>mr)$|O!cE^#=PioDp;^$2r`@F&_w4+A4 z!laBdCjrPZ4qv~WyvYR~h2IBygh0z0X_D&=?hd4~pYWXU!EH$$Ww$>jA*!tO-S2*v zXo;hr_MsQMyI+ZVTiHBsCBKE0uMcCe8yhxfDKI?diUK|Y_tW|nfr;gJ5t{ZtvebtswfaIZLa5T@vQisBEHdoU|nrSZ353Rk}}-rZr7`pmSOh(mC1tFAp6A zyf(vOH%q5<+kcH-Bk;D|p@S`MXxgyu*ph{PKL(v_11;dJ1{1Hy{DPWDB+Y0fMkZQo z+5smaJ4ntR_;I~}4Zc0tObwCaR)vZDmFR6If3FD$Yki{5X0hVl1&~n8Mo^?`uA8v& zX=|WJ7{kHqvLdAeKEDwR2OteeKnWDr)Sa{+5KydGB56!c&SbQVPLpCm<*9vctj>FR zQGJr>ZI3E2SIPaiqD2%v zi7C$Z@uU9kC(}^~x&08-#>vFB=o9uyi-c`KM9^T}fr{yMZ-qu}{VJ}#0uYxJ z%pGa*S~hdU9)h*IBMjsB?EQ&&+W7R-p|qOO$?U6Op~K|;7&Q5GZO+aahXR{I0b}Pe6Y79_Ik&T|ozdkf{8NeDBrhEbJ z$Cz4AKu|;g?ZP>F`F<$l@jAi(*w*$9;4QiZ!+>6im;NCVnH;MGGJiSGr7uH6LunlS z_}PE@{0sLHJM9n}a~Q_~)TVBxny7mK>c|W83xWT#x(=m&Lo3yXw$p4VJbN-?i}98x|~=8u~7zw(IE>n}<268ZRkKE*B5X7K3~OTiaU1P*XsGb_KXELj6r^ zmP_3DODd7pA(R`Vk0%PuXmd}tz{K@+kB=RUXG0a_&e!@m0k1Rr> zERqI1qUZf0=bcjy1sYEQ__=_EcoUlj-|M?^mCTsR)>wS_;fJ(~PJ-Qr!rgie>F>W5 z@9F9JzjaRdMKIy;ms!V`j7&5UBpE{8pBY->4bnWVmuD^Kd#`_V9m2&eCV4)GY4f*H zUN@NFx@@#T!v<4Q{!55ONApG5rhM4ie;;dF3e)H>)zY@5XU~HlAd|>VO_CHm2JPYr zSbPM){MM9E|C{KO@6?pZHh8#uZcbp$?ME=iYBqI6b2Nw)ZvvU|9SCcnPkqw|AG}Q< z8FYMds^`V;7-r`8@xGqI??ZM;mh~Qff2;52wW{X=JD+Xzr~CBjfLHLGvkaJB<#u0d ztRIY+D3;RV(%e~NZqDP?P@v%g8&yiz7Zb7+`W|-aj$pnE=2vubdO`cvcdkayob76c zz_z>-(7mSxep{L+5{)l2l$msfjXa*@EZqnL4|4h5Tz)i{%GkR6WyQyy(M8sos2r-F zKsgowKzSRQv>S*EI0qk|G)&+~PAj2d$yR}U(x7Dth5VUtQ#j=Hy1az&2f@=ecid>M z&uI?F#-?0A{*xiB6(o8de6;p;*(V(^M6or=3*?{nF~WI{Koj&3hB2@bg;Pf9x{{v~ zBr*-Cj8@VJTAqT)v!UuR-&R52hGql2KNf^C#x!0P}|Z!;Hw9XRB^YD`Ppb@ zelE&KqKieDjThY>Y#~eR`9$r)S{iRa68-(D1R+g@po@0JfL==dt(RyY32DvEVF|!6 zd{av>08>a?J6XEb+v6%VOM}m)t{MK-X12kgo4@dUw;QI(*l2v9-nco!w6q4_!Bx9- zaLxwu)2G~S>`+x8tktoiCd}Gmr_WyeHiVK1 zSaAPNUf!hr1CwZd6Eo^ZyrtbyHFXif8g}6tm&jZZLfc(V_WcRU{tdjhzgU;jI0$~G z)#Y#Q>;jiNP_9;RZi@fFAJ$Dl<`w~}TeHA}wuH|<|H7;D)8ikJcCjvP+aMEz*UsaX z^W>6IYr^6>0Jq`~YRzY>pAQ5A0w7G!gCh0V*abVmeT!w(z6Q5TUzi*HBoqq$fzHHd z5Nqw%Ig=tDS>I!N`t1gnz2mcoePutan@R9>(iTx*Qv|j|BB6T%;XwqKt zvI%NxZhCG}xc_iU+mj4Sz((W|Oq(@@Jc0+Ipdz^&@rm6jX284;X^pTZLdx*q*aIy$ z%mY~yic3$c>T5!CM_@1r+PqqxTy!@9s{>l_5Dp7yKt5{(9@B+B?tqDFwc!{jR}#{&T?Co|xCZ@8G$enuIF8IZ z{S6aGod8x~$4dRnLz{*m(=yC?ZNJ0P4c<;y(LTgzLk9u|IWIx0rjxrJ$RiFun$_TA zYCRq!__n#2#>=!aG8|SM-fre24<8GF>xIrNJ+|u;eIN~HVL|aus158ff z9$C7z2P+gok&Ad+z|?Rvc#rM^oav5kY6E>YZ*H0?9|>(Rj~vi-YZNatKv(L*RMUJf z0VJ#mKG-9m4+*3jrqR(Wsbft&G0qg{u#E^b%QgN(8|G1P0{~2570^Wpcm?Mh_ygLP zHmt{OwH5*Tft}%^!C+vk$84=l0dlax@uKa!R(uh!tOUF@`~;`D8tywrLjJG(%CAff zjE;(G+PI1L!;Kh9!+p1JH*_PVGIG>@x11D2&aXo`0;aJ}32Z|OW4NfPO`VExve|$F zn=k3g`ziMkF5I_pbTvB}7BD&)OHM$KqrV{imCEd!dC217$Hx4N7! z1vH=sNSdU8E3bLH>^wjX5e&SXeC&Iu!{{K%f&f?I=~r+D?ccY7sVn-M zz-|)Is3G`ulPla7^3l1SnBX61LUSEMr(;525yo7y7!$D>FftYm{pJ7lQS{!!u~0Il zE^D}RZAGiGNg=)~nf!y?Ip@=%Ktm}&FEG#25Y~Q-uYcY9>D4zIT3!X2-@Jb1z2m3P zCm}@s2IEbDnh0-#$-mlr0mCPfbJ9FVE7MJ75_>1+(9Mc_uCeo(?I@gc< z$`(2x(MAN`d>^yMuj9Gp&DyH!l=VS+Nprd0s-zB8m6d%6s|7m=#urCz36jkfOuhHt zdFP!cN;s&EDz->rrY#kFFE?mIzu^f0C8Uw3G5o(bys#}QfcF^S=fo4(BmwJGA3g=+ zHwIp@3Wjrwi0}j!yD0)&j&3kxe9s;`7GmwJN^_BT^E>Z;#=ZB!=Vs?$hi4CUxBCHQ zU)D%_-sfiLG?_gI@QHF)1LF5*VNUo%F%7gw&5o%Bd=BVaNQ7EHLBo=OhnEp<3A2`_ zAY!v90r;g60vQxAWmR`Mb7+wOxRSQu%a@rLom8N?T9W~7Umf?lfO07aVd(4rla^q^ zN!11x+0aCDxun7`2tw_};UNKLr=+8b!p=!oYz z{ox;fmrG}~7TmUGJmTfZAb{=lbTodozyJ28X$>};MoxL#ivpNh3ETc(;l=xrnU3Au zUbRDQG;x4ejNeZuIBa4>W?^YjmIkVk?cfFDCJaQr3-5ut2yB=ycwQ2YB9wu*l6p&~ zJOhwu2(iZ3@Lah|^m;{vF)O_)XZZ3qMc2!vyz|`o^IzPZ)>6=(vbI{471%8N0CVp^ zc||*SITYAl6aWDELmZAtG&2noLQ^$# z&H%C{t|88(DZ!+JkcxmXYvQmtnEuIR8cLeB{6tu+K9~)r;2iNe&`wf-BO_S(H0~=c zR_5oj?)SCK_`0`l?FI5#I|+Q5BWc05!PuzcixAM}pfSA%r->0A0vZDN#M3Z=gl3YU zO362EqtFJq7Q@jTIaxfwZdiOFz7%&31DEH>Uoj3bUB|G4iKGjm%8>+4f`6Xfzc4Wb zkWNv|lw9^(@`-WBCz8n^edbqy#wLx)C47$|depr_~R;Qbo}ia`rk;bgwq6+(HEWeuh?Jb?E& zM4|yWMBaK^O?9x$Vg0fWaav_@o$lQEY3$&0=Rfhv+&HG*eJHyYp-sXf+r+uqf#b(7 zB|!K2YT8oHGXRtkQ%33qEW-f)%C7O{Jh$FGvdFHesywvb^{4ebUKGwRxZ95(f5qtQ zyIi*B_GzWpR<#=ps=;9b*sAiKa+hIEH-{8`*RM~WIMLH@i9#>WSua9HD}ec@T96(Ob)bM!};1eAX)}$iJfZX#b7&W9}$REXOaSvcZfgc_PX&Y8;Dh93ub9V6(&KGb{=tv8GwFRV0g*LE0xgz>Y$UY zH-u0P=#qy0Oje*<)3yS}IloTycEphf9k5}`zqD<>+kGO5gowW;QGY@RC$!IEm)G2% ze}a70$kg>P*7q*>tOeI9AYo+#$TIY;N}nhzjroN7b_OEZJscx&nIs=I75!3eq6GyY zFpQ4ngz_jNgDtCLEzh98p?M|Yp1?fp+sH>xUD|YjD5pZ&v&aBZBsUJkHpjh`0LYoO zTBw*n%atkri#`4fL`O6XGCM6O5@ag)y((8~R1`elL$tCN)XXEssym&Z4h8B&0lZq| zH!+C~lAmJ3Wpwb?miw%&*D`(Z#^#uGtyh87=K+Y4JaqEHEVhj1Fwa0Eg-Nuw1l$4E zj(jQ=xOA75j39P4Y2-U`RQmktT1(jH+{cv67%ntSV4DLHVxXntSvU+-q)}X5S^U;9 zh8K8KoFd%aBG;epQ&<%dj$*GMXtdek(C6tM4NmJzP+(IvY*Y`9(+1)H@+bKA?=kTo z#^D7M2%X5rpclkV(u&h1N$fR*m)MQyFE|QR+z5P$n7>{Ithya@ZBO}8`Q_zAH zxqtO3lx2GSzDRp(I1EjiWSB;n5EAERBU2D4A)BeZmeEWEv{oRbxuHlaFfT)X1n*8q z)rr7P7E$IR1dsI+(FBVzH8+>=(>|B`z5EHGVO@@#9wK3*nncgGh5ZRIRcjtM5PfJq zmT&>wM7Ar5KO{7OhW2NE#q%E~VU2v&2)dupAaejCL<#CYdXCIjV;I4MKzN)+{|-WP z`WPmU%Q*OL}Ze)-)=3(~x9>mMH;2+bw z?laB>hXVDafW@$0aPQsz;^*@oz_g8EqHI4*qANB> zB;YZ>%lAGseFu{CSU73_|cL~q#FXqA;rah&2X`nG?tOCpIG|~vD{V*tjjmS z%x+ntq*!{7CnD_c-~Ut{otz`hRMFkmqllq*PIj>u;j@+-q!h&bp~qyyFm;^6N;(R} z&{3G7!m`!w3lh;b@Qc+j<`bS9HtSXdMfMTql z$JW!HN}peKzX)4}mw@hfebxDT{uGp8Fof7(&teCyHVqq$K460Xj-nxMjFXB`03jm` zw?xNazY=N!heh1w_Uhglq=l}0c1ZAlYdrKATjYwfV8wq?yxm41TgU~mu8Ov zb3dCxpl$N`f|(pK^5rHnZ!|O=cI&{>hu_(%=T;ZH>T=_L5`zzojC%U$e(6A0E9-0z zaj@8QlK_Tmb_2ou^Ed}-ps>3`?J2oG{gQ>&7(l zCPA;ks>_X9;9P$iD1etmxBb?5cHJXM15ZPn8_`B}8bLbStQ*K%U9(_TQy@A9*4#~( zE`6ox%9S5fVvdM-#qs;R>={L|-8gE{T9IwJ)d?$%-7mfLdh1eP8?lVV^9u098 ze+lJ)AF-$Ib?@Ei0<@b^g%^JEX(8jo5 zV3x7_^ywG=7foBZyB&R1OSWShT?D@%VxbOzSy|pJ-$vDQs!}Bdwn|{LtLt*9u}mfd z{62Ra5ur#Q4mP%Ma-?4bF47JLe)m$0wbgB<2gw^P1zvIrwh{x-rH#Wpj?e(BOeClk zs;DZ+2rM={wm1tA>9*nv{5Cc@5%C%tA$3VOs31FH-YrQKI0Zs$DB!jBbhfYqdpp>k zPLe4%HYKg3tVY}mb5RId88$t;z(yu!+2hGs`1utAUQoH9lYNjTmFxluU}YMZ9;4{X zD70z`vXm&JONm}&-YFv{9to+?I$A-$+uGgU%=UM+v2f7Kf&n+1izHZNAz_iYL*wnnRm`JXx2Eqc#G7x$$Cu$2*<8!;TmatztcCgER>gZm+ zIqVmGUPLutm0Fs72+dI7PC?|R`_|l>|0uQT?!z$%N#H6Wtc}k^%~V>|7UD@`A(k`~ zskBahd$=aRhp%eEKflbS@0_k_EjXZE%%+*?x!i3QcGc1V#fbt8#qj&Qrq}P;lCut4Lgpnr^01P}%DI;} zgeHU@{u1`)YMQ^X`9)@%SFc^WwpdQNJLMi&NExSkUc7E`>LM+g^+?D^0Uvk(qvP8W zCw)^jjPGB#aN*r2jdt~*m6ONQNr94#X#+{Z!&dn)vu78B4M)pw(eMg%$_)zReV5F?H6-rX)A z+}p+iKDPujNXX8-O*3dW>q<7t@5rG}TOUj#?wG!t3Xlo$)`V(+EFRHTduNt3T8}5@ zSt_NnBup+xXCp=?r5ZEQMJ4*D6<41z7B=8Z^Q zLv_#kFi$b}5-FA9?^zjL;~}_lwm?Th9YRCI z5=lgaFjzXHT5vft5~&P?!L=r&D-~G&w&Zh3CYw07Vt_+i2QGjGV2{Mit2jN!MR|)G ze(>PN>~b#77l#5{OMwVyahIpMB$WXO-APP1e*SzbpEg^u4dq4r5Kl(ayRak#fCT3P zT4KO3l3k#gi!?%jcxuHuq(Ip4Bhn`XH)t*__+l;3N?S+KCJ#Rojay?d`<_Dm3SzNV zS}W|M0{PN<=9O1oab3QAnf!8VTV$3h(9`qcUftBXp#^l;N;4RxKY*t0L8Wcm3HJj? zCVjH0?Q_(%4daebNb8w=u;zDT{S3e?`j;7J?i-(-pE-H<{2h~%?#AcF$Ef^z7WgFP zg%?4C;sDreV7yk?>nEv+Pi0$HF>j5f0c?^b_^gEmQ|SS$$3KM_2IRba=^wxfm?4{i zkav-Hu|0;sLQB!TbZoiM)_)8$!!2mlu4hs#0)b5>^ocSPtyh5RwS^zjJRr_mR^TE4 z2SwKX9+$bNy;*=T#{2y)KIHYV&bA;lX9{zv8EFEdj2py@hWI`?$Rw&8#`>mGb2MZ9s{_Dp1{; z;4_y?dpetQl4Jo*B8y3k75LOGCLr)G8W{*{3os2`h^N)LXj~#e*nsaDDJkvPe&BdW zs4Fw^q)GW#s%aHY8>M`Sl~%ue{|Ahd+JR?T%zT zo+RQQQv5dRd)m);5-0#(Q|ATSS9JAE;Lv9WQ(#jCwq>6+-h$5>Of*)#-XeaJu=Zcc z0oJ_=wtrZ$SU;z;w-H-$Ax;4Ol_!F%KfJF)?Q9JTVE(yXts(x{;oYQ>A*rbDlF@^q zN$dWj33liH$cA)2xTjs+-PXjta^aZL0xc1QmdYErMNg0^;9Mlm-udvBPDqfWQ}fi` zs(tNRLjHJj&`-W+(t$ng%D!FA1h!Jt4{eK@T=!z3*@fni!X()nmHD)@%@^S#$418I z*?ct4#;4~EfVUX;9*t)m(`u;=$3_8?~c_g&z+Qy zBn6KJ+X5W|GcKC4b4v#Z0-StIiMK(qv6yx)ZNI3WzyBCru5 z+`1*c20`}?0yW7mr|R##bq*Ry998E)^`gy&cQsubeUi=i!U6AF^NWc^2&Z3%xU`0+ ztAT>W9&JS#zYZbs*Evp_eTaZaGW~b+uIv0_K2BSN4w=ChjuZ)N3k_*wi#nVO=|yvogoHzc=p~W zpBn=swoOk_I{Q3|-Wm!RUpRY2IrhwM877#FeBySJum{K25ZLU&irw}M zLNa8!_H_p03&}YZosi0;4K1a*vD4yR*WD2xp3KSMNpjX3%)tj3Y6|~K6mLz>%WA2|=mij-VU3vbr zRaMl5W#To><@!53T^E53K-0&tgdeM_HcJm-5!4U^?dZ77znDG80^#u)tV=mgm~SWZu`rpz&iA z8;s2VRwrt55^=fUzqMt81hpp(NPGBAz!%FPWJC)c|fZtbGbI4Cw_41tx4%Wf-Dc14^U9SS%UsG0(2 z&b-u`(9?bd9`OMMZ?`3Ir(o#37v^3^5s~8nRw*CALY5YSIzSOsUDL)rm`V7fq zwuA?!r9TGUxumvmgzu{l7EbinP!7$6zva&-|VtWW1m5*_DEeT@T@A(@(272 z%}pUU7;P`$0m-h+P7o<9m#jqNdJ1J)0tr8B!d0@d%gPP>;k|x z?66pNF(jN4cnE|={iU8~Me=A)zye~$wF7XcjI^8yZ8IwFY%GMM5SagkI6(jf9=}sST>z$rO-545qGng zkMrwx??)f?l?pVzG$_!ZKs_m-W4mpPkB_4y(B{pn+?TwDI%wC;Gwx-ONUfSY-<@$gc8V1L3GWG2Kt>PWDW?HUR z!2*arn{hmjIAGt6n^I2*o#F}!Jz$0R7Kt^G^yn*V(z(R`=GN}#OlAEQ7SJ{{OkA9M8@!Jd-`P4e`!H0IvrX&U>;Zp~#kO|9 zCg*zCP6b=^m-an#(>VRHs@WqW2VX&I`wChIEA@DYms9m-s;ThUNOi3_$*ix$(n$*A4S62!=B}1mHb0@R`ubk ze<+hzqezvIFI9kRnn~6)$P2ZR63q(YX1}uC7Yg!7bdm`juptL;0y?Ny(Az4csc2gD z4^7&~&t60DWCA}Oafa|krZ*ko8&(-=P7MB{Ch}my_bfIvq|Bibq zmU5wX==8VPRqU9xY<}GP`)_=#?bxzT?b^QH-t)xzSxOW$uHf&V9y?zUySu@WaU+v6 zee^*Wz*r$It6hiU`~%YhdY*RaoZ#~3f}Irz+nJ|pnmRBCkMaXEpk zMytm41_f41fvU^*ijde^SugUY`5U@x0H`WVvTUBajVkq4mSosMJ1~ zz9-Nqc{XnuKehM3^WSn28sO7U-@ba!`g4yP67MS^+g{wEz;gSfsUEcC+Ll|ak-vTv zSS7%QlaW0NCnMTXUY4ye=z%hT#qlCDue*`2>IyGE>Y80p7vb6mZDOm5Dqf|esXM%M zF@WC$LYc$U8y{?^Nqm`ViN;Z{!;FnDk|>nU<>Ux<)e5>7cevJ2jBfC zSk54fsFBO%y7^mdV$NS_PxrV(FzF8P5TG_VGFbo^tYkr+(}wfI0SA`)qj!7rNXax* zJ<#TJsde3L=GKi}>PKGM>+<`MBT9$nC6W5Xh{5&yZye8~im1gB>8gx(dC@+Ah&cM# zwxL^X-q`Lq>?ps#-0wo0@$rPhMXw96RxHk;6fjLd8vl8{-Z4~AZI6%Wtv-LmOB`{4 zn@&t|<-%b|h2ep*5ul-#=r}9^L9vcxQ|VMJlO$v`^T7Od$-GYkIA1Z~ZaEej_{FiOII_;Ni>c5yzm@kF1awyIAYi$~^E{Hc;BN>uAL7&2Qw)avK|2#kF*a z{Y$V{4xIYGgZFZS#|@)@9&0kyZMf9SKEL{2KBI1@aw-M$DN)rbK2(}^o74Y`NN>Jr zYr2=H?OO@l{)-0Kp<@1dqZY6c40t18iV~JUx+Aikc>sw(cE34S_A`Z3i$8w%j5Rni z<-tJC_WHc}AAM=RYyZwou4dfTbJ|uBtVyd9U+V|&o-W{3Qpzr?BjSAG_y6>G=CA+c zOI|!Iu4pk7snXfYx2;5qml2-TbmvJzHK za^DS@bK{v4s>}1{vaOatamHmXGCT(Z{X?;2A}J0|9E3JBHf3M9HedtTiv6kFK$WXm zXnDN%ip5{2yz~!;H0qcB?%z%A*|#6i*489_`)VqkzcW0T{X2i_fA;3Eu`7QzuxWE& zyE$xo443t#m-gurV&FkYsdUB@izQ2k4m$gwQN>AG8ud>3ESjb_GU#D{ok{wVC)oTK z_8xlnn<}3=*EmUAlyZ%m4GO3uN50UJ%O&?MnQkN9g#uV-U&E>2 zdk|}7fX%YmoAj+nO}3vsdF7Njt%=$fuF4eByN@7(7$3 z^#6(#^{=zJ?u05!I*`5x)NA6P@)gTt?aA5pAL;JU_h?f-k4~BdDz~U8AXOxcbzxrM z+dA-wx1IVLfbBj!DRl*G`wu^Nn3!jrsHm^9S(RQ)*|!9&t;ZXr7cTjoOj?bh`k0yV zLO5sK!pUPWiTL_Au{gSpNB=3?W&Twb^}Q^no#2FSHbfB6Y^hW-J?%Xa)xi15iil$nQcd+cg{ZGoSj4Pl zNe}8O90}o@##Yg(xN~P@B5Gdl8#G@z`c!4fP+9p(Uzub3%$3_Yq^VM#;pnQpwMDI6 zx6X^6y|~7A`rt;lv{1;YC$?_QUb=k6i>+6wI@!1-6aXO&%om>Cp-bomkv871B=iwG zNdfugOoa;|iL|p~w>Y36q`~ZgGlVGcaW2eLlcc=np@}x}w}Q#%zjpgV{{VZO-q&7x zO;ko2sX>7T1?EuTW!Ij=g^kH<{8wO&4snRJgS{yPRJ)%^RJ;1ngc@a~;-jG!r8@4b zJ<%f62zm7znSym}#qK#|!&25}Tr3@-xn%=3=(Cw9LPuu~6&LC8;4rq?7oDCU~_a z0j!l;0bpY+u|$d~oM!H&LlVo*?Q&zUwz?dM)bABfhe#reN#edm0pdbq=Dm1%Nq;d? zbV3nC6G^d|n=V5YjD;ZCV%0c%*hJkrpx!2SpQwLI<~faJ^Laa(OxhBvfw*zZ%WT;t zb*7G)Ace{h<^nKUUaK{2Q&<^EGJb@o4h@`+V|FO|x&`9Q8B?*OiN{n98p}dYh-APb zIHqCm&1dr)u3jCyNn;JbR!;H8_XY(xvEH)fR!|i>x3I+=VA!P-^s4e_}HaGRuGJs1}}e-Hb%WEwO#Hzx-N$HrK7B$|)-AFG*y zta44b!xgp2gQ!|C?+M^Q)2tP;At$q~*O`Bx&jt3+|t|ZR59* zH+@65^}oUD{p>s*dXWm|-ja2|AM_TbLvwG|;a7_BoW68ZeR{sn{!6bOQHOT-xV_78 z1Ak*+r11Wym*hlL;+V}z!9YOm-nCo*$N%)7ilL``oV4e_e%1dA|C73Yt-Gq)ayF znu;b}0%}ofT^49dGB08eh$L#(76Hyi!U|LZ>i~XjY<$93=^iS$MlM@0PG9P`p9^@k zmPpAYbEfC_?vH@iv5B}s3R-Fuup4J#7V+BbSW9==9n;y-)U--uw_I)x2huxx)+B%F zum1V9|M$25boAnl0srV!Z0_kBFCC}NfHv)C3tC|d#r{QEm5r|r3Ox1{*tP3$2dw6P z4k-U$mR@xOY;W5!NKa!u+wY;EY012DwMqkmjcZHS3PcB zPCvdwdw*~b+FaEpVzHRn)aE|{>wSnVy`?UV*=jvU=p0Zr(*2;oiUHfJuf7@_nT+p6 zH1lhCY~P5OdAXoLxKC6!^nYe)<^;f_8E5uCM5kR&VCHz2tVW=CEH&=&c>Sn_m4MBh zyt*c*kE{#R-kY+=47ko$J4vEsC_#&YOPHn$8+OS>lnwW#_(v&H8Lr& z4Hu?hFsS5HDS5meW#H7Ln8srX&(Qc3%zT1)W*qV^QzDf}X4M%0NioPb?mZ4{@cb<#Gje>cTDinZ28}59IiECG{S+{QYMa)cZ@ObU^=7@!aP5qs}_UGDe^p9)juMb+k z|HemC*kVSYed)oXxx>6O5B*7FaqNx14GPqQ0!RwB<8$_}u!;N(2OHh&c@@|2db9nFf%kJ;g~Nb=jQi6QFP20?JRze{m1&kv1E*b-zLb+vh; zoUXorQonpEB{pf?)X(0NI-EFe<1xFXDZpWC#VRXR(vyB7%sH;H0@3eU8M8(sK>Y)dKv7j%~ z43Z+t=l5oj2=PeSS|0VxzQNJ_fn6ItxGh;wrrL!hF7L;parW+6YZCbZB2}M$a?(9~ z=Z?B|{kl{9^2N{GW22+C#JsDP9Le8gR7ZWVT9$irok65AR^<5=2GOCj$AikMt2)0( zUb`HKMk0P+XM2+bWKfY%K;ML^z7N~abUNdE>*EW$gfl26R4KxMww6PO{#?_^lYc74 zg&gWPQiB4IEd?~ZAbZE7>A%Ek@;UUi*P}{T{pG8fOqwi4{p^hw(9*un`r3!*$!kP( z={NPvox)gbOac|xT>S%9@XQ%^ZqFX;6U%VL*-D8QY1hb?i2Z{KrqlVSwr$&X;p)|^ zvy0gxV>YeAQ`j&$8VHMITl^MLWN?gjnz%c2PYM?=^|;?%Cu#! z)}vCofo+cY(6*x93wW>fS*V$`a_GO4a8Y?2*!+LvDtBw}VO5VjdD7DMKi5zEUNJSQ zPZE;}RG0bZiM2zpXHFE|`c&PhFc{!g0A^doSZrj3C5_imMX%1uw2Ux(1pgYUanB*0_z~)(%nRL0_ zX_w&!uw@+&gkq;vRQ;>a){-xI7Gad{R>`fQ32Q2zlGmu>tCY@UP=Zi6~ZkK2|@F0^UZhW;yLDHJgvY5gFpRc1OR8qlh zj`&qL=+%OLPvG>$n>K(==6q&yG!8*D4)QZ?O1;b}-P={)v10v=zYPjJ!W1yZ$CGPW zkn(4PL%Tklz1UrF7`f(Qg*D+8#asJfD7pfP06z-hNpFOKC?mqC$ z80U2DY!0=nZlXnFX|DZ-5xxawmITx}@DA{NvC%eTMXbo&=Pu6Y1$}2F>>7EVZ_$r*E*Y@6ie_T26z;_XY*-Mu8`uIMl3M+BZ3H ze3Ct{u8V*iY~di_1mNMfP)4|T=F<;8x?6u9wfh_tzB_X`w|@m=^KyLktjD9jO&v>O zCjp7rv_COo;m(@KNOJ9o1)g5&a0>3FP;IoeS>RH z@ws=P4bO@Q75=p^Oo*8qfPZd@5=JENc%P3MfmBzC;i zRT*@z$7AtPDI9A^qQBy-QqW0F<98}q;XinW)bT*LDCr0=t)Dq}HgN5q{+bhY8!*Ng zlKPB+utlnUpu zD@&)c8tsKxOc(8csnE<9He(MOlHmu{;a zJ!{n3uIkuuep{>Y8?TB=KKBc-37!@&kp-lD#T1SN+dN)()p_8VaRT5K^RI`72XGG{8HC1Deia{>I-11sW7kN>2anZ0?Y<3*x+^vaNJ2gwn7t(G?SGF_-Je-@ zYLWx4*%Ovp>U>Dc5W?p@v~GF;PqhO!v7xusvzCrW>AR&vhupg?*LGNejg*N9V^CYt zu2J;8OpAIf=dCuHEnW&6!~|-s5+31#5e|RXt9v(~O0~h#tgpbqeThSp7Va%P^1o?uP1=^)2xeX258r#>P8)R zp+HT51sBXclOvv_HFfUUem4z2)-NQyjKnfhWB z_w`5plC9bjoF#cs^Mqv570})o{L%yX(S4Ub}!xL)24cT(iVkq<*uIUg&OX(gAF9 z@)z5=SAQiyx_s_mLM1kn_srO^Io&`i$y6;Qi#!B*`U<^E&jNE*K*FYD_qMPA`FV26 z-m3dI%0|l#3Or~O&}kxh zD}A^Npxu2gZ=3z>6X;{iJ-l7=$b_mI<{6gOwQJYW*7N6&iMn0Iv=)gCiZ)L`aS10- zaZRjPaKS};h{f|P;RIrTvlU$=)Q)MwWQ?ZM&6WCj=eAa?+pWhW3XwzM{(-XM|r7AB9^o5^MK27t|} z49Q_3kxEJbD&}8U!|Gf~qY9dtRxex@jqBALO!`zdll7F_U!o2<9cyrYBOq!*Bg_e7 zz##`JkD92JRHS3UHeDDp&abKQyFr1+odOc85QaxPTrWbffbceJ*V#UQH{=eSI)41m zhU-=L!&=YDlOJB&z5kg3Huog-S(c_qY0T5Wt66vHYc!AE!S$+uEf96Nh`zR+ZOJ94 zRW&6xLb#DTX!u{cdUZV;`qi4MX%t$V0>_WPF7}A>xka3`_c8_JS@tr#dn#-madu{F zq9MdQE?&=a@4`*t07U^x4zX{Zd?+QThT9(CET0d=sV9AG?Jzzp&O*}<`7{`Z>5nGK9NZK*guxl z^V`D{*6rc((#zHq4uvCps#PMka*1Rb>^0p^DB#l$?CkLz-n(VNoUH3^QAkL&7oXl4 z!fA}NR6uwYjV6prYMsS4o14PT%vTBd4U9$YXnb0owV3CA{7uBu`9wT(Ul#2=9x5d` zx`6WXS`lU=)oD4GP>} z3LHK9${HBLgD{6L)u$)eaT{vT%I5y&#K`S;0BfW5srM16MYkRG!j+DM_3kN72gUBG zYV!G%AF%c+Ol)bdshYXk4P6^FHT%@3ADi#tlxYFKQmt6ydhHZIJ1gdMnQz7?hyQIV zKK^;zFn-lCv_IyZT9T8QWwmS(Bd(w}9DK%jMX8sUE#O#ITdS1$)W?An*{uB$$Fxz_ zu(=GxO4^k5kah9!;g{A?O+BIDN_zE3mt6*6d)c+;@C#drN%eJtTmQtOV9nOV%hm7T zyYcU*&Gfg^>CqdUJc(#~$q$RDJeCR3=1jtT37gzR@S{>m35BvSNloRo#gb|NL@Zf9 zJA{Qz-t#Lk<{D~*B|EgcbpVGRs()xwMdK+Cl9-Y@X($r(1jB*S@A7)``JBpSbN)gu zFHF7jf;NQ$2B0kDbsG?Q?mH`U==Zs`{W~`KP_r!F)RBmWsLLpn#Rn^IC(;!1;@-cs zIHogM@91RAH8c_x6~FSV)xOJl=`x<}YSqlW-W&)ntkRdcV|i$P*?_jZgtkC!a!k)_ zzsKjB@EgCt=GDt6>SwngyP;;c8TfhEj$@6q=RW(X2g#t@vYP7UU>u2Q77%My=`xLpDQog|W*a`)xM>+)CBA4zr&NmZ!axL zFzB(#IBIiw9T4O^2b!+sF>%uPRD3P~#h4391chn$|43R3*czJM?M*JqR%}?z)VkUu zI(BJ!Y^@v}P|CY-UV;bY%8{yxZKvaa#G+1T;g$X+2o^m-Y&BBFcFHgEY~Y}#vYl3W zzU6-RdR@AFmRqhK`NeiKo=BHZu&rx)79duUAVMajm|3RTxi7Qh^ZS&$%$9R0{X*fV zfZApB{P~UsQ@Ip^HS#=q6tG<4rKc{EXHHjQyi=DwhW8jwx0ZE?`REaL;fRcaF$V8& zjZH>E98_G}7M5Cgg@Wr?`efcJ?(gLsvcUIz#ZOpZ`-Iu+;E_BT42_EuZ-l+P4 zS?QRj)^T)vI2;y7Wui9PNUKSKr9OZzcB@W2TKqjGePhKANgOoI9)^khuZGM2_j^D6 z=y!;-QMZ?7ewzgSod^eg<*FpY%vW6Cg;ABy{3KGQ`;}_nAu9J6FeEWI(o3yZf+=6W zJz}M2oM=$aMhX^lx!na#udHGhi>4B3A~zR%fY;7gTT3|B*^Xz&dD69F9s$bT9ZjmG zDHI2^mC6!xI|Tr#sGg@|5a987k~k(Q*&mEf#;q%TBTU)d=d2|X)HiguRrhsY?A$W{ ziewjCOofL`f|}1Dp=H)lYj&`*8kve=N;Cb43s7^r++qw}@tK#)cp=q`uY^e0I+{W@ zDv=fQ3m`1!E$<`Eq|css|9V5+r<^K{?~fA&u)N*F-nXV6V`iN_&BBC$;9ar(sH+ik zJ^FXQ>ku3Ftd+Y8<9!=ua3y;1+u#Ov?%er|#9m#nE!uW+9Wg5Rt!TU~nD}&hi=*Ew zE2^hac*PWW?X}l(Cr+HWedg2SzpS~m|AJlH1tz^N?-%v>G40tJP9!QbMl0_9>Q`VG z`EjMYegGRlJfq5da!tK(gg5p9-Ru71?%i2A09o*^)l_ezP(=zX39#)ubmUo|+xH7Z z4HgxHk}X(SjY-@Jo`;wI3sYmMU+X>b&Z)9{tMV1T8QvLV;hBW=C!0zyJ!mD;2X*1f zfJh;VRov6Rkw`G<^Lpxb+5wob(Mv1{W4@Gxl+o_Jcq5xgO*>zaa?R~+hT*R6B0d(6 z$1|C1X%k)F*=i7OVM&YF&dqDhu9l_}+DgRYnPfass%w6qy+lcmG!fN#CXE4Bt`7`J z5bffns((9L!)kj^H|vuDeV0a$s+E=9zdsV-}8CcnL zAy+(fcGOM7i2JI{w@|4-Gv4?yz9||pr zU#?S|b*<*inKQ|=Cy!k~E$6s%7*faDfq#CyS^T=o7u@^u%P&{L2X$=i@vf=_c&d@% z#TUQaF_jp58OHZ#$WvmVi}^Wu_?U(DQ$YJ~O^ys)kl1S6D>3H9e9QeiJQddy>1bXtfCqrQSnsrEUA+ht{0Fn+FyC) zklROlOQC(O{U8j4>K_?rx@G_?op2j&!|6=rO0{fW9EjM?J1%_-`n?)b&V{*IaVtsK z80G+(<p=h*$t$+zZZPvfk}hbIvqg z!1n0vzCK(>lqF4BYq9>_TXtz#UlFcl;CbFNO|dOiN{gePf47uk z_d5^ZGBh4d{%!iv1Y`GSr%rtIHs9y06ZgB1^V`4ci9s@%z(bb4fr9JjaHP{m{S(a8 z6~NG$bEiK31h6J5Zp&J{jJ$zoQ1ohxqJxusjwqmtD|&yK5;Ak7PT`0X-G!U9<3rCsZ{VT*TgodDI65fA9u-#MJ@maKl?E0 zW=UlZL6qetNLQsk35ievv;oCl`acZ-nCG_UkgK&RQ~?1j>_U5U$Q=&&#L~@qJ~(N1 zGhc4%tT+P_T?}v`bvyY1DjM^pOTU+*7D>1PwYIZGLj@2~Y;|zAu&0%;Kvz4>yd~3V z1$fk>1kfgIfpv3W%p$JeQk|hxu6zksA(EZSWM{>ToRly|w5zI5ICJIUQ+gmImLXHT zpfw?I2Ae_&m^d%V`z)VEYEa;@r2x!`IH;z znUUoAEZEo{{t?zT0{E&M@C>6Xdao)sO?)A>!_w^Cs3EtJrNnns&VJvox+YVpwXjbI zp~vAu-rhkHfz-;G#Z?^IT>)D`<^D0Ge|3HzU=uU&kiTkW?O!=_@}u9Je}AdJ32T+& zZMr~yd9g|fiGsD5{u{n5VCS`xH$$9ZXz6Tbk@3K|YO@B&s06BO{UZpBYTpk^on6M4 zERvG=pkNUa%=B{%_wd(lkCqlOz(@hfQOr*;@p9)Z z#bKdVXHQPVGV)ih(P_)=amTi8>L~QAlXvs(X?stX!p(oy?Q!ARaC!j+fLT+Maf#`+ zpaKJ|=JEL~0z*f+>3}wwtIIb>04{fzN+O|CKlaK2{pmeh3u`)>o$?DBS>gqmBtk=^ z+nd9Q4PEU?q=i}eG=~FBXFmJ;Z=4{Y_Uu`}602QSHZ&r!Npl>&IOXsVsYjYa9RmBS zRRky&!%gSDJQs&{ZBpyI7Wz(*dFZ`xV-%ahIqx84lPqX*g4{?A3N$EC2MS>Qdgauq z_Zkwm#b}8K!1Je$UtnLl$*x^Ht!x!Ro%Lw~T9=uc8@ zTA+h%=CsBsRLJEI z{S+eQ7rD_{x=GY`26#bN`oDPUSSHl-Mp>kW^7!C*LFxBZ?E|kgTW<_Z8 z>fW-UyIHjNKIoN06gYas16ICz)L#IJ9S#KwxpbK@&vs7ls?uOylQsVo)yu1W!|MFi z{=&Jdx6P?o(hH~WkwD1xNJsWx+ zF0a@fWS3Sn8k^v6HyOZChP}SCC5f+oDZga;wKqrdTi14GF5euAh%^VZT$qf;CR;n2 zd>C0RXk4&Jb5q2eoWPwwQ;THKzI=Tky?^I=pEwq&*x7j(f8?couICSISCi4C`t16k zl}cp`fGcZobPA+ynZ%I;d%E=IaHv#LKx=1P6FyH|;^9(twBb}m*Zl}Y@jZZU#7z7_ zWP{GByU4hxr&NA5zA$zJsa~-7#0aqrQO~Tm;~ik>?Anc9v+X1 z)6O~XAo+RE8}>F8NZh#8pg>I&a2rPW%U}Mo_x0CbU)>X)ntJzO6*4sI9oZuBX7=@( zdZuY!Hjee-wl(XwDRoV}Rm0a9=#d;SO*}}JmdEAQPO%tk{!NujUBI#0-A@mfSA8RQ zohabSxh%r3$C&4a6ts+{nr^(4D{>@ zTF9GzJQ-FMPm1ezyc(98MPbjAHw&V=QY~rXEZ*U8X-1gTiK&F(25Gbs-&?JoWnIT@ zzPdd)VIMnvSsNIh)JFgx5(L@nb?4l=VFOcU2ff6aMVm4};4=WIzP`Ive{$&sdaDsY)H8|6#sO(uL)?nZp{)&%Pr8$-9O{uK>U~uok5X@f0Z{`q zR4C}f?#!j(;n4v6=+FR9y~^-fXlXT=WP8rtUw<>*E2=S;^P)0BJ2o!l`XdO zpVMvEH5?XRIDPW?8;g~>NB4|fhYxo|6S<#(f8L>Vdk-=IAKZ|`55ZX(nr&^Q`(G$1 z%>o1c%Ln55okyIC6E&L6M)ZQ(jE?u`HD^!^P1D4g$W2D~T|*fsdQZN8YhGP7{Tw`b zGP~i(k-;=3YqRVq45w*%vsn}}0X%MDOy||^feH7P;RTpkPr;mZh%qm_Ft!?q%_H^5 z3L0W(3RBBwv$Ekk(||-u+qroSLzx9R z^XXmbHy#Q-J?lGwNV=V;P8bP2pU(#n;Awd660*!m04FU>{09CCjUb<;O~z90STd!= zp3LoDn$%q!ZOA7Q@=FVMM|pF4asPgZ1}Z_r)y=_C)qiKaydywpcE;IY9Kx4TqzQ0y_85tyV%!7Rl7DDLUw&zi|s+D{RDMP_C`Dl6;HEXwvWf-|5a_< zc0*mgDiZW%^XOH&vf|4XC(6iJucG_)v#`mLX{4l$Ft%Q;kp4N`gUU%&Jw?o>=o{}j zcm&Zk!7?FQaa2g8)F zvXS!0LLxsFOr2y{X_|_q6}D>XM*pz-(U%UYwb&0~Po+faLn`b1N?Tfb`7;;$)!^`~ zbd8bcTmautI9Q^4d2Ly7w2{E}d)gk#xrN7l_2Sb{s1QypmXkKGZ)fZt`#=BT`x$H$ zrLYdD^+gHb-P{sc;1ELqWB|z+_F7q%T!VRYHtkyj;|fJawR;DLLyu?@@Dz)s)DPZ0 zUFiL+&xj{yL+pw39Q0CUA&FEPJ^(nIjHiY<#Mr=nO(cwMsE}3yLqhTw8wWWt6~9%WbQl=OnpoA74iK2O#Tv@4Y^{ z`@l0dS+_2t60?gvpm@l*oZh)Obbi__Xy2uf%iGk{49j?k?+ezurB({VaDnCdhfB@> zsOJ;AA9m-Tgsxv>ta6G9W99y$rRhI^p|9@@zlCSK56R+0*?0=(Zl#A6rmdq|xuPHw z_hI;pH0jOdqL$nBYcK`Rl5KT(QCs^QbwB4(?j!r2KKk?Ehs(Xay=BbjA|0&btx$9O zvmE+=1qG#Fz8m!7SwW3jZQ;53-91fBKi&57%Y8`NL|FAer1^l&b>Q%G&lSx4s~q9K zX)U3bZj!7?YlLSIkcyzX+B^pD_Hs}s$HpM zM)?6m)tJ*_W>N2(h$p>8HNWEZdj4%Dj956hMs42Eu8A}dKM_k-TdZe4%Ims%b1;iK zq)3^Zx%UVBu>fj+q>9FtnRGTiHJK3A2E^QstyUb#UJ9v=oXjj6=%RjTVIMY`%H-QI zVe}WhT5)KDj@L*U`WETttrkJNdE}L@zTi?KN&g;75vzh^s5uS5`_Wp3;hT9g)dX50Jqgh!lyiCnuYJ- z?dLt7g+IO*&%(BC+q{8D*8zlj{|ist4#aw0%XkQ!K4ba+A10!yZ(;ZLdmnu8fjqnS zJ(UACedESGVYCmv#D=n$!3k4;8Z)2YL3Qs#Y^3`6U0AIi!%SXhAqCma0=9T6Qy7|v zW@Vw|`T}~haN2&aCx)FE-k=b~lgkmBRmhDUk7M&A3yLJkj~$d-)a;xKtMCt!A(0M= z>e?#QUR#x;Q*kSi%9c(l35|d=#_EzXR2Ee#l`1tRuKat}q1Lzr=O(2>Wnb{`p>5gF zCps_6Dw*mkr8#gs`G$(9bhf*0kAnWjpF69b#glXURl)-{Z|Pyak+2EK6|lW z8z)BJ;Aqsy=EO;klL)(DWSU!>1Cek@MF!$@|UIAvNuBZ6gH zcgCZlrZ8Kdyl*<**=#M@u+vyTvc`qSj{^N{F3lWbE(kimTvDJWw3dBtAGRGYVA~;} ztuA}2sQrXnI$ofkn*eKHhR@U|-#( zugx3HX=N9-qd5RWR$3mHTpg@~$un>np5aboU7RMHsjHU>!SEu#P%)jAfI?m2A34;u zpT-AP2u+%foqL{nhtQ#;=RZBRs$f@`b;3D_o#HEZJ-MGA#-jfs5l?G|eRXouchA-N z7VX#yZ^|=#@W}ITSos|Dq;27Fr(>nywn~@WVCHU4j1S{zFT!WTu7ig^!lA&J*Q;Ma zMKeaZ<-d?~8`HbGy8NB%w`{Qs<|e$vZLzJw0p|Z86}M`(<1u?~iN$}(8u1iTxzES5 z1u+W|3H^OfB_<8D?XoPR9aYFz=v5C7X%wdILo1_w`_%alR^Rb}rQO0+%LKe;DJ3&m zb8IS>69%+Wf&sONEj5K*R)~kdkX!&Z$vp$hW=jdP>IImTv#h9&xd=by*t3cB>rqQW z2*xPRDx42SUFtp$*gE@?v=Q}0yJ_@_aE$Cv_eX}5WI z)j)-8uVtg8YVQO~q1t0XL^vPU5A`t|GmSeCyG zQD5Yl69*0p5_8tWyR(7g*rzak#}1`%8D0~>>tk;@Df>>nA62cXsj0PqDkOZ*(Yn;G zNmu~wdLR&eWF&0GiTd>T2OsT58p#|!&Fr)>8CCg;Vwu|i+C8WzZ$iEFStQ=y(R}W! z1#&bR=TYdDm2d3|m--YE4j zPA{dRomLz-_}soT4tSlrCPX5kSSS)wU0tm$F6hSz@uEFO zHN~CF=i12RWR$}SB+>913yYz4oW>!JI3y{Z#`CtZ1Xvesk0sX|sX>9qngaNR8sd!< z_u%zOwmQnm;_hHmXMD$jrr*UNf3VhyG3a08(Y#;hjO7>ECIwV3TtI8B`~fH@uK2fY zQ@8w)_Tzv97_r(wGxT{1E^jk)h}30vty|s@wLC1w>jgW1VR_{qz1%R$zDRrbKTrix zJG3`e++1dc4KIOqBKFj}`X_8&lgbl5cJQ$Ioowpp+vm?8tEVtPJ9Ow!ByYR^FC?;0 zGuILrxemm)v0l^Pwaoli zIQjdQZd-3-_;MUX$;raKNv7$&t{M69@;wpT9Y0bBPb`^%na2hU^}_Nbc5R#1w3{NS z5r9In3%PuP1teUaulSu;*Y*c|L@Y=*v+z37i&Gc-^#0)q^VDa3)}McVpS!uqFH)Og zk%!{%=y=?b&Wukb?4i-|9D27lUOlvED(w|7o5Xz6kV3jLxq?opEoTMe<*=~z8{<@? z1;_RdEy@Qg7&(zjC6M$81K=SH{JvV>1pyB&05DW5rzCb+B9#%_I4zM( z#tb)VtA5V{M;a1u%5kcQ+>pO}jKrs63S{-R%E*G9-A_z;z{?kb4RC131XgKyROUA)D#YS09*u&Ta@gaE~$b3JF!$U%`0q| z42c1?YR?nv92?5{gGr>b`q*Twbm%d2U&Pcn8OqP1ITqs~`=Y-)$dbPJ6 zLuUQLfs)wP*nit&dk*Y9`0PcTV!e6l;}1Wk{>4s~)vjGHhXMhsC2!_lLN)Js>e>Xe z@+5oSdYID%>v%o-`vBB|G{$-Zn(bg2uSv=YonE0lf9!QAWK<4dx%fcSfQ>8gNT0b2 z1rC-U-?Zh>p{B6ydDb!uf0<`)Eqm+T875JA5hDwnGc}JSq~tH%$BdE>`^bw5}Z{` zD3REtb9t2}R>Dl0AyDb$1TXr!g&mXwY>GFFndL9-*|?N10Dw!UEv=ETNqjPkFaYIQ zm;GJJw?slF5-|a6PWcRNc{7y{hh=(E>%+rjK*BuaZ6s_I(oloN_N_o@fV+1=#uyCx z6)^>z5C{M^1xRz^tVuYzFyL_-umuFzITiXm?$U{x2Lm#IAF7E2>;OrLdWQgeHX9{g zGnbR(aAABZX~*Jeb?L^Cx_*1a2~)r!f-@BY)M!Hmcm^Ypu<{4}Xp&an6OqW_@zk=@ zggb~%#d)3`f;a^Lr-kX~IWQlTDO~?6=JD`dVDD8EkStd7fd4I^nw>cCO!r5`KYp3FL}({-yZT99XF`tfeom`- zIj=X|#}Z!iVwP23`e60wWfzM_7hHJj>Jz1U3ovnq+*mn%fyJoB(%b&P{o; zp_yY3<#n6g-JP9CZOXFFewFs)Q&A*!v+L#FCpH*s+MDV^5x}uGj%0LTL=LbN-aS)D zy5!(_W-^_tv;PExfuP=L__Nu}R3?p+87G9p^gPp5`QOPrZ|-H-)7SYokxZ9R`0#YI zGj}WhX>SRqKxqh_HMO>*#V2Zo07qiO1>LP-zY}a*K;EWxZ4Tk#!5m{c`oLERE!FZ5 zu&%^U$(+XGDfP$i^`fFWZr>UllL?sF^aKPF${-X^O8(Gp2^wL1fN6CU)vyNqzKF-1>r|yd{iWSBL-AZeJh1++% z#O^xABK}7>b9$`T#KVUVx2JRFe%^&&MzyV?-P&D=Ih#S4-&UUGrvPm~$0=b{_vyo2 z`$V370~ewhbYq5Z3kU0~4uul9L|HAW2ri^d38PNuBX|?Mr<_ z`LBKH8FvKrJ(%_iwXM!20c$r0#?+nhn2lu7>K_`(4Nt^P?D;&XIpPN2agsu?dh~Q< zagu+kCsC`58*Wzy*CP2)I21%e7QriAy<>D{QM0xi+qP|XY`bIIcJjpP*h$A$$JP^D z9XlP{wsW%gcfND>yT|&mey=s>nDefxyRM>WF#uEx+pvSvA1;unXL93@nZr+71ev>0 zeRFR}*B6-*u{ClZFIPq*qpCMQ_t{I?D2h-6)Bl3YZtN2LSvYmm-L;+%b^M!?c)=KI zXMlc!GAD6TDqG4%o{hjWmoH9sA{s35E(SR|*$ip~5i?O~Z~Y;)e^$06yE7ZP;+FPI zilz_he4Chg(5k4{M8a{X3gU)~-?0YkD8=FgqUGt+IDM3Lc!$P~_0s3l^#b6h{P3=3>rB-&ayZ9AbKW%Bw9C6J!q9v-~#TaX=0dzHFApZGlkF>5I2#eV0wgUnSpPhgpKw~Lzg~Y&_{rUWB;a+4L7WD6j@!Je zSzRrbTHfOK`JUJFQ702`{WpDB=*Y;JdfH0WzT=ea7dq!oa4cO>%RjHj7ieb6TO|A>&e2gK!2D>TscG~TMZ8orY`#;yRu8op0;UKb{ z5sn`L`qCr+Qv)%Bp#^ zuzB5@!kR80sgk`_n~tP;hXyPOc3T1K20ua}H(U?nrtk&zy+}flujv9)fM#XFF!3Sr zc4WmSw!2RJyS^cBNWdaQ>V5EDq-@JWkaO61CY(T(XlGt?9)Syz09Z;;8;cP-8jnPX zkBzeY_L-vufaU5a;CDbNr7cl$dio?!$sNDpY&tldoV!m~jh3ria#lRD_~ad|4*iDy zN?92{n94;#!K@iuA{+~q@nLpMQ^wFq6fe-V@zFGI3x5;%XXD_>OSTzy`$&GE-s}B* zI3F(qh1%U!1xz;A-bSVE^OI*8UkLA87}EyYcRI^hhYE#8>Js)+{XSqkV6@nC8J*x& z^R_R=ZXLo3l?t%X+O0BxA>DMiqBSzbf^tf7^7Hit2$y$9d2q(_zTBMSxcCeha@wD{ z@~7>7c74kHcs{Yro}bKss%YBNW7^amrCTU+R8Ef$&>qdSWY*_p{swhN5B5p>ueI2J z2pZ0}avUZfZ zjlbP5R_nsPAI6z%Ys&U}mDV+m^+iOhBUj<1Px?_*aH(rfkuY( z*`3l3h)}#J_r^kc!cLIj*^?EbRLDmT;4#;AFjgIcEGD&L0&@c)YqMA?gAA@}OR_n- z{n*CEkPuN~Fg)CtrDz}!#_62(llbILH`RQmj~4~7^b!-*R{Z7Ui*&VKpDw?kg?`=7 z@0s`(9!LI$7CwCNhVKSxF(B<>Bknb4)D?AG;2YwpvUE5oq>jW9s?p*!=U&IzeeQikh>xRiA=#<_0bCVix^=>_c$JQU|=|5*7 zl_Xjn8~^Y$bh$jrzQfgPoZr`_&!ilU}!oO^E3;q`NwIahnJK&tE*l?@x~hk|lUdBk^n*Bh8WvAn-3$`N7Nd?bgR zpR*qQOSBoY&^LYdS0AUt>;j=B&~4v1&-{2yvtU&L;6?Y-}tt zt_F*k#T3iBsu=Yz91I<3L0!l(#3IjWTuKF&aH{AxWf&gJ3I_7GQdXNUL)P>OS^1tY zNQ~vngl|Dg=X`ry3SIj+C#Y@C#znpRSx4rzotNehaU`^aiXjtKRzv>W-!E|(S=%%H z{T&B`%>EzI)o1NG_xAXF(XH7%V1lOQ9D993D5eRlNO1~L;+~3v{)2X6e5etE-mI2~ z$W8y%7E+?JJ#o|e_Dw*@g2(CR0^#o;tQw`VDZg0a$s1eB6rQd6JhgMbv?@8((Rru7 zh9lVSyvwB$-sPLQ$njY{24B+pZl@|*ysZ;_8ZY`|VK{L4t`D}>Q{NdJ|I>lOzDw2* z*-}V*3gGEHd{;|cFw1C7vmLlaBG{Yv@aT^~OBBE7#{i>!keLNKHmlnwM!B1jK zq7`W^_h6u~h?>~f-Xxw^^A&!4JP!oE6qT+H&IDEo(PHIjW2&Y&@XPH-|m$Mr!XG`KubC3NtI? zZu!C^z7Q|%4zjD}k5S#c*gGS^uj7@%NLd)k<9EIsEXZP4I{jVb;-DHgw)q&E6_F|F zftb=KyAvpk)I-xqb;eA@x)Z?$N8Rynh*LfyN4>lwTOw6UnEJ8@)`fUz7Fj(e3Nr~c zP6H&43`1{(9tsKboq}kn$Lgc9KLrI0kR57Gv7~`@J%LJM2tE8qro=sw8s`Uy5wlnD zWuT?6y{Ba|F)FzcADBKiq^&d`rW-8+;zndC+CM5Y|3+%OIc`|yv{%EozehUX{xuQm z^iEd=yZ1qDL=Zhv7EI&{J*ocTEnTrdP9zbErru7D9gXf*ZgX7{@2s@io5t@XStJ=HfrXGRO4d$!0HOHPD zZ}`G+=YsB6 zmWP0Hzk>~6f5$E1Mx~!^xjE5+Z(ZJ1j0GFDUuG*YVOc;}<{Gb79(2G)rLzj4rm-$S z>{{ka{$OrvdJQe)s!v8;Wa8s^*S5CH;&RoUyM+D?k2&^OCJpDQAW^0o(Hi$r|F4ph zId}z}DP#V{;?biwpHAk&x1*~Of+#gyMs5D5z(jeu)q3=S1{2CXHjMDOYXKd19$)Gf zn!U&q@ILjhE@&H$zqs;vPz}yv85%g(SVnJhW$Np4nb|%oRQO$mM_M<}EaXYY@@W#E z3t5Os0QHJh74{=b#pvK$pVCz{v^eG|wSG0s&*4{TByetVQjYEbwC)ViMnL#H79Ado z+!ngR$EVPM1gDL51Zvm1*NB@WhZjI=87-tJMGIhyGC78==(X7Mx)sO&S>9{#u-An) zU{H{%R+yrd(&K9OGfkUXaauW%#?eM*Fm+)|7614RupyBE$Ab0Yb50=J>(P|SW&EV( z`I^dTmGw(N2;PI3csc1TBZdnM>BdAcJJsPkHsnz$_F4EkEa^`Ne)try-6 zC0AKEB-zQh7BNmCQViw1IU*?>@pmAdah1^1gkped`X~ViyWK$NZln^$4>o9SOPHAb zyLw?1b;*GPc;om`afK*#`97za19+{KYOiztRi|HZRQFLQ!Jy%|Ou#9F?&`r$xStm0 z4chRW3h-mOgi6KZN(`apOka#2gM92D$zk<*;ErT&TpaTyXSnfOSxBM5SkHqOPd;6R zyV9TSCz0@k`vJqkyN00X06K}eLUyS0j#~`^zcz6;bF?C)Y z=43?xChVjH?0lWGedP-2VMGXZ9DBAlE`H7gM1mkG=Ar;Vb5Ju1B9^Iwv%zAUIBMSv zs*F3JfPRHge1y56e%;eSdTLP#ZN;0)x~wXS?xgC{;b!W5>m;4Lu?O21y;ll>AO6}V zE?&`SEzOj%d?J5zfFbaQaG;%+P}9UNICkXPVwNYtn6B3V2Z=*tI4i%uT};*Z$ky{_ z{&y>Y(Zl1TA|dztI{?YZD{rVx+9RsmaSu;OsT>7` zErNOM*ej2pTO%H0twRp4Zs+A~c1y#cgsyo-W0ffNg(Q<>9O;J7?>#3*uem8-@Ao46 zwKzSPA8nE|_$P(=E6tIQur1V;0_1X+hivRNWf?0nM5Xg#IbYMZ%N`s49}mgd-aqCL zAmOlmgid`vUyi;^8FKK+Hgm4y{dYGw?=*4h)cw&l{fOi@A8^i(aKmoJa5jkVa|OK2 z7j>%(f}oM=6ci8H>~o;n2U;T54l5wO_7=$G+IDXJW)Af0kzd@k>nRenX@AI` z2Xl9h~!7uCZCQ`(mGx4{D>vaMx%wQkd|Ry$iv z(RvTbeztE zuuwTKPwO4j8g>wl7qhRZF?Eyty(1P6MK|gy-igAv>~H?W#T@%b*5n$TsyJa_?Q8op zUnJ-SEZv((Fk&KuOoc{f2DpR2~&!v}l#oz7Onz1kYNwS|*DFb)ssP964}QCa}g{SL&Nb^Qlc z0)lzSP69CtE)))4P$02{dW`n}=? zmBxvj->E<)c?jXdrp)Dj+HUw2(fU`5BayTvld2^i#2!|2+ew4%$NF96x6|HD&82po zfX-dD$;`Y7n+dt>8(bxx)8gj%nWhV2kmf07xBP9z+FYvgtefz$yc`;?{VxllmT-{o zX|VN67-vu70q3jvrK5hrk%6HR>~>D~0vT-!vc2N|oB%BBU*SWHe^v2{)O>Y4r@ zi370~Z)6K)EW5<(D#ZrO`d{mgZ5!5VMR?_CkhiE?p768p_<{<4BXh0+=tDW0W12VD zttu~X-iVefWe2{{S)s(crf(anUBq0yt7udZi`NwS7aii!uQ2w_1Az}k-0<&EG0Ss` zF=;cyHkLulS%B7XN5HyjI7>Z7+y3xI>yWAeDKH z(M^;9H?Ic#?VcXpf#j$&q+Ew=Ib?*kwy^YIHuRl`J4Ssfej(&^v3pQsk={kAik40v zd1>4lp)HR;)+>Av>M@f&4yj@F{uIPv!$POD)r_O(#8^O5fUMu5F~h&HA)_X--ihuW z4IssC{A8$gDxF4jBTjrykf^A}$3uZdsQJf8;Ro4?MU_YqMUIZW{2@J!;jq=U?#wEg zt-t-~x5N|1^5yz!45A^9hY9yQ?Vv#Y)j%2R+hY>Gt4hAxAde= z#1x z^_IiV=j=RF^~o~l+1$y=&-*KaJkA71E6K?#ggzW|R!tM~wkJz-Nuw5?u8v7YA@st5 zD?wmzp{r-rFQ1xaCh7$sU=+e8FU&93k8hW6mz5Q7U0+{4#3#o|ZyqiBzXVVq@WHhZ4gzCsd zD&Qc8eVzJ@(9H(bH&XMU|MttIMz)(^=hUtXaBHSFmxIu)Fy>QoKVGn#Q_~$=6Kt=r zLH&%j7NV;~+b_A)?94|WulG?*_oU(UAab*=yKvDS)t&m!PyX27*cV?Tjp$wu{!q%O zbTynhrfRyZM+JM8uRO}d)RK*En zqvw_gt*3V~)s{GyLW^ujE^VMpzb;3Gx|b@Q)+L=}Wkjv8ErNe07?8U~b;K8b6w?a^ zgJL~!nKcsUhX*EPQG21ahC&482sL)(zdbHg2EWj}uYW&83ae)*D;jqK>LUNiBY!J& zdU~3vmCwY-PB|B311h7NHc>si^#z%kx3)MxZ%yb&>yCX@KD@!anbP|Y71!6ZUxz0& zNbiY&c4Op+ix{EPaHr=Yruob4SaM#E-CD+QjJ?19XmJ%o=1n#fYpLbMi-2PrDdkDe#}?mS0-uwl~W|F89p|pEci|Is$i`5uxm1 zA(3BPALr0F2IHSAgVS376UBo7!=Vdtst-o(M=XAtZx71uMCPlVP!IBq=_@k$nd|Yr zqI@WqmH5glG_^Q@muYoD2k1Ykv|8rP!g8}(jy+fnEk>3p-w_odkw*ErM@)c&YM>w& zS`jj4ugiCeJ`m^Y24RAWg1LPc4V!lChaN!=fP)ow7B)v* z(MZJBO&@=QS(xva56reyv`(E7DP|up!Zs}`z|S31TKM}BUs!}NQY)a?tFRL3#Y5BX zVD*L9XaVDE_4pwgSS-TlZ}mpi&y}GlR}7OGO3#qU@oG$EGB?k4S!1~~$Av@|x5CfL zi5?zZwR0I?%0_a;?O3DtQK*C1hpF}O3(D4<5hPE-qs4KfW=cfiLr~Warcgfk-2ztZ z*jrXGenj#W5U5oYUkgI2(6NV}+HQ$US;iBU_m zMxL2~fFBbE5v{{rf37oB5Ax{eov^1B({f zK3#lrY;J9RT3TGp3Hdx*zA?B^$Zo}Tj89eIt|%tFC)Fq>)mrS1ys8`@+u!%e{A1qU z-XXUsm6FZgQD_a@c~{vU!a^98#neeq;dXwy;W7OFJXi0^Or);3lg1p@dJuXwX>R9= z*|F2Lg4RB*DY`0Y(x?C z`Fqn@?Eu=zq#FY!V)W(i3VmlA&|C_=1$slc+2(rm6;hG!VlZ!3`PWipz8fmI334mM zC+`zYNjZd}oi(8&u=Uch)N=0FhyLM)6WPF{nz2C=rb?&(5OdWh%(OG2l_PIR8uJer z0_{ya)WuQFCaPnnFG$GBOHV2J?634}Szw5lOF4PGR8hYsGh!wyFjRX)?F!$bu)3PI zjPxjD+K?x1?jeFcW-)J<^lx62Bg?=Hq>HDy2-?K&Tm^G9Ye=TFMW^Tx(Go_|)N-tG zobcq~A_XwgAx4_cuKZZI-87mH5frQ*oryI(TM2fC*avqJpkPJt+-#pb#b{{q9Qh3Y z5!#9SG-5ID6+_4sx+ZJyXDb7-M4^b;0NbgS?@O9KP)mG4P^<_67o)s*jDali%QI9gtXH) zV1FwG@C0n1>$R{sTz4o?L|>94mCB%SBkS4dg~|c(+wZjX2oY+i>g4^(g@>A8tucbN z{+zWhhwai zFzj0%7g%@!X_zP8#Ws~zerMg6*Ly}(M19;4G<*y^c;9j|d<9*75ueUESDum;Jm7hn zRUfEV>I4r@R#w*m?Wf|I7aVdeu*EzmYQiiXspk(M< z>#*w?KoAmAfJ@HF>U2l-vQ$Mo{`b~nHfq6Q&nE(gB_ct(=XrOGST@ra^&7x}V5ht7 zSBHGn;knykOWnQqWbD-NUQx)go>&6W%{a1svi&F!HjsA16d;fJ&q*!9DPX!0J*A%V z1+8gkzF|LM{Jr6~y4=cl?ib}}=;t-5CFwct-1%>2~NwH+IQ<0 zKZTgyfF{S1P7%QpI#n7>_--F*Qp9qwA=l212vnzQBJQUL^N(r#HR+LpQI2dhhBhlc z7wecU(|5}&x3bRjJprc-n>7%Kw5WKKeE)ITUfS-b`p&glWnxWNd^?&GY`b~Z1YoXv5MjcfgxIrl*< z_$kyz#%$W9w`htID3=52*^bOGu9u38_sg|E(;^KYBG?a z*gAEASn*Jvt<7D+%7Bb++WX5&P3TSEyUFX2*;#+^ekG@PgzeQkqQwxgr(&&b~~i*QX6w z)7~J{Er z(S{IS{%Kj+Obfu+_V{k-SS7(W?l>NWzme#*50=$xIEFR@$Clo+A!#nhp2fvOeG5m6 z=|z=#;B#b#c9;)c_NC4(m;Oq;5lZM&G+`PJTVe>?f8je?MrNMO%|NTQP723OWoOvZ z?%qyVi6c_Fi$c$Y+|KvupIhEJAzX(lx4VEdM%fHhGAOybpzb%UL*r(M zq_D7_*M=O|;eT_r4K>lvR+bFlZ5OI$t#5wLqRY9f^y2Er`}-*uGr&-F+u6G~%O}N{ zQk{jTPzMgDuHzGCGc(CivLd`*_6IbDL9nl9>rzzA&CZczo(hi&PqjGMObju$HQ>D9 z5luR`IuNR1?=~6PtCB!oc~*0&F{hlhLKC`Budf?WFZPK_MTNZh#oOp?Qtr2*vhU+@ z^ICrnO$+6ow7;QDWqdAlUtF97+`bvw|22%Ap+HN4+#y4gIx5+DO%ua4{OUEwI(w&; z%M4+N0`N1M08XTr7|@=as$EGU#7yUpsbqg4HqQaTE&|=-nPSE+Y&{kIVpX&}mWkdN zRC-WekotGMZnv3khNcNzU_G7pRO`^T&hRlE{k{;^#pUFOj8eGSwwi~iCtKwwv5>U# zAo3h;#5%jb8nc#}y9Ks(I&)BsAaV(UOh*iAm4D02=`6<&q&PDR`sS3yRym|ZlZ!o% zf@%M}+D3dxD7Fe&X3p!JVH7kE7WC+$E_YSWfQxpc!Y9taOQ36woz#^t z0@|aCE73CSbPnVHbqvjWK604!W za{k3xU~P(bFjR+RyhAhc&nn)LUxMC2Ax>w4sKWsc^fE+_ecgNZdVwwymJj+B?>Sl#E`rb0<9y z<`UXFtmC3G^M;LLPu`6mOp;gW*%GXilA4{Maj2jT;y#C~EChddXCw;KL7Zu9)jiKu zO7VvquI&D+FKPRYn`XF8yEL|VLv2}G8sPPk%F4@1K9Xz=gyx+)8R*DaR_dWK5NvNO zbC<{y_oW!i^ltSOHxn)#U2N=X###~68Vrk~sxp&ftZ9z>7TA!{$!`j=>k)lY;BAa1mT$-(*_M4 z$sLDg0gLHPLd{2Rgix2^%#i=PxVQ*sz@6gXJ6@5U`}oh`>i5RhmJ$}qYrD2aqxZi9 zKnf}#7iJs!D!m~fK(g?=OwTpy?vDGU{~#J043f^ybK-pL3RcM;ikIL`>Sv%aX9N71 z4A|O5&Hr@o!ESZfI7M@%$&%yb^{@X#IvzSaut8VGlzxfsc}P*}P*)W0-NnWhbUygH3$fMOLMXed z6a-@b;9A6QMr__RDTFDJ2Hu>E{@7Nu;7zINCov34?Oq1Ss=KL->A|QJ7q=Ig6LXdm zM7)fN(6_0mc9FqTdyw$wLzQg_S_oqnrl^6nWS@C$$nAo{u-p8^^wQhpn6vntE4(=!U-w26x$JUQVkqltrO^leLFxTqk zk5v1U$)F_O6w#CfkhQcGyMONf_QY)vj#k&e5TfUU5+OFr=sO2@Dz@pO1k`n+H3XC~=M)c=I5Yj2iFya&`pxxos?ur>Eu{#Kz6kE84h&_6rWUT3yL4J z3DkCVoobqsXN)HXzarA)dM(a8A_<3lg3?KqgXq_kDD0Q^W(6z@gb>|HOCUul3-T?3 z^hVilesh4@qG}^m1`Bpj?YD|BR3~gzDt8hjN{?<%>ry7tqKyR}jFE7O0U;y5k<3TD z(xk>4(VgDXGQ#;PPr`#TtZP}P#^$$LiB^Aci1M(~`S)|VV@~>vw8VFkq$?6|xoWEJ z=js8Hzuq&^VE`8wISQl6;ptqIQhzYyoU080Yy%HJ$l5^pm2ruw zxm=n4|MmH=WvavsdYR;?tQrcB&wV9KsGRP7ec+3>#cNn0mqMg4cMPi48%p4hI`74k zJpV#LC^d@YcDG97_BY~7a`tQw#upOwA!JHYcJA<;!dbbo+N6ORW2xj$vc?HrsTgX8 z{>=VqNx>RFb?B|B29`>(oCIY%V^T@O6URHoB@ss%Vs~A%J@9QD* zG__#6e=FW#*-!LeLTreO1^b6fVdv!o9jn3|6tc(bs~kPN9En@e`hL5^7u`!nO4CSkLcuHAPY9J%k*rcIvHmH8qgxWqy!V6bnY0)j=ocWqeoBb76%g+R z1s4id7LeM&_9b!E-m@D5uP%gP_ArB8QczqhtaG4@n*#E_M>GH<(uUMvhBOl$BqyW zm-=WjqLbH)@ZGLxE>bknLM*R4cm|KgL-uST<{%R6Z?tYJDrse~Y(eGo@+?io_9KpH zI|wAJESy=4mEvjmetT=WXwHGo!S<`v-#D|xn_!5;=YLftu@m-If$Wh8G151Y{vreg};s4I_r@73Z6)hnb)oP`gSsO4dOpi}^4zWK?y5%IElP_U$#l(>q3{msc=X z6{jIe3d+JvXxqj% zba57E$i&amn4@TwZNLk1Bg3*M*!ZOC-oX3-T$8IXjSZ7I?9DJ+#V?S>ae!Ts)}E zc3n69(Q7yph9a$^*ZHp~kbjk==0sJ><0bOA9b%cXrR{Vh40WkDegEBgy6qkX2B~oy zPS!n9t_+eD-Q|WNdR-R72CYQ%x=$hXbtA+a7#)>(-ITYkLW~)??qh0{Lrl7o=>p+o z{Qv#$|N8A(r7%^v{Xe36V)u(_Wq-Z`Kg&?EOiNV|Wvc(S2LWrbg}c8q-Wn-4<>~W6 z1XTTpaoe;tR<=^fR@P-6(8nKQ#VYkk%d53hWuGEFHocv6?cyFhVo8cRG>&ellGN@~0yv)QRZH~D+S@M@ueE1Sa| zX>O2lEZR^88Ab?ohV~hE)N!sJ!~H^Ao%J9dKe=>iP{_7`q~9?A`X}JTPp3jqF{5HL zKKo$(-VU*t^(a$h%i&;jK@8?VmRBVq5H$oh*o1SP7_0E>h6UO&+EjNr-nA28(-!pF zMg0^%WFrUe3fVBuqz}7pq~~(eb77}QW<9&NRYv)Ce|6LvcIR$AQn;!ZQ;xIKGP%3E zD>o?r?=u-8s9AC)7p}X2bi>Y0*&h~u44Y+&Svns%UaG+fd_l<33Bxl@DDO1{!Q~hM6(wF=FfuRE2r)7uVJLQi5fP|#s3&NBH3zrP zK+3=8zCoS?M}%!rNw(JktP-KGR_*YSb_Y-QwRg!nB7@| z_SU|l94Eb$j@GK@ z<$~BS#_)AtM1emeX%wx=;I9UvHKwqU?lw~USdv63lBSwghg!s}oHlGKV{N(yfit67 zWF93tnS^YPIi!{J&&sNoqN~rj^`(DRJuky@n_@m(Z4_?XG z%sGjC3$5jziIKS^o8PNJXZeD>g~1@S^vqB!y3gmpv4HZ+nD*hi{y*>aX`~=T$(4k2 zz`jjI_k$U8*b-vkKT5j@sTA0I|Bix!;_R9hj`z9PMWN2>|@ z1E_n*URl4I>&q65whj6QH3q9bJl(02X4B()ggxM<|-?vE!Vvnqm*(E;ptXW+Bftfv&Slk~viQ4ri|ecNCE#RH4Ld z3mYlOVBsIMV=UrWxTm+jYPlylE~fuQy6{_Lq1pMhCne`W1c`7Gk(rV-=hO+h|E*Yw zsSZaZsE=rx^5<~klWu{7r!^Kr9M>Qql)qqdpl4AnLLukzeE4x7%$|i`NqHZS@G$8D zzKp(wlUSb=oIYBD^|vdGz#Yki!7qMQ$%V!RhpMF@8haXn@h3G2_n*tHyr7q<^(q^a zR`M~!5R(Z_(6BWeGnZ0q)U<2)tuDaL2BkOylau=9(Ekzq|5x{)!`MmpAG%k0B963O z!8}|YpoU_Kc5ex-V?+*7GON9gs#l}doAFlJVHAnO=FQ_4nO!R#p?%vO1;@^OnzARl z{skKij~>*%G~H?O+kX*%ZFR7>zDkMSsCjR8+l7rEAeE_iJJ=LLYR~|X zH5kMl%6bD2;Jogk>=HqO#*OfXQk{V@k_EqULLTTGgaPE9&*)zd!K@r)9**!;^3Vje zRzalYgiLW!CuBbYHh)3ZtYjn(rD65}WFDd%0V*aik(2b1i3uG$)68x!P*PO8IgE&p zSKTienWy;yW6mM)90%ndB0Fqv1MJIG13mM$+^rE=_XW-NeQ^f*yhjgp?+& zDo@33v1S0f=}JtpegXkikC%uXktp5M?nK>Y>Kgstrpo-RPX={{L(7@uVx|tll!Wp) z8Xm4p#L|KMs6z*UWI%%IByf$(#(fK4oT%+Q zTkt+#*&n9JO}1hMTqLfVgju1{_@|t;35xisvR9M5r&7jT!o9G#$fnJ9qZT|KPO3s; zzc-jF6h&MdIT)t6u4v0IQ;gXN#vH5p9}~8{R26l8ZP79C$)@{Q`)`}zMQ9Cuu=o~3 z)>_cx)%M~Zi3_^jUI9PdHt_3E`Ka7m79v+OjhGzl+VEQ=UZJGOhi9}Ph$rZPes%Y{6ps6()MB|9%obMJ;VqtTKUDA48>8*D^|U135%JD)E!@ zuqh@q@Rq#B&WF^~3n{@`j|R-dZOt@_Xm9`(9R_5n%SnkppS}DWk86qPiW8d)b6x5niHaELUJ6jk30>1 z9%>qv*TB8z{<9nuWoq52x4sd2&)agQDsn~(pw+|YzihDc@yF+>VNW$79N`OHHX?YV zhheq@nKB5hZa30wFE6wogx>k_a-rm)_fGXg72ElLiTfcKerDZSo1j4l`wNm1K+^M8 zs^jmVK3|T+rug%XL&VoEhwiHP?jz2460fJO@VzL5G#()rT3?8n&v`Iof?@o@)xaNZ3TV^@K$L)C`@O3* zBJH=wl@$=(Wh}{Ho1N5;JYc$9I@Op@oqwlqqrKw&PfU zQm@tYTXzCTT!jv@4pUiX>voAvJ*zbVNUjXhcF$=P?b7y9*NnB{(X{C;$>>-6o0WNF zz8t}{$zAwpNR`(3o$W`*sq^Q`+&27ZhN%h*L2K%FPPj2B^v|-S|IA$?ip7N4r6ZXT z*~|W^0glaxXeM4E(iOo_4w{C1!9BhZi@ht*I8i0zey3wrFvV!4Fc#H#M0q2x2a}I= z7E^8+gsg(xIYQm6FHIk>SDRh4J?%lO0NDRiZdbwvAu4^>DFp+t91^9Bv|spn|G2ie z?%QcBZ+;$(?AQ~=x-Y7KmQc^>{4ogQl%OzLY;)S{e(1_GAQS2iMv?eL6Q|}A7T^3u zZ)SzcGk$wyKiCEZ(b`M$;EswR1Y;_pY%j;skOpU4u5cd9FU zPHR%A=W&0159E}$-_8Jl`G0;+Os|co(IiR>*Cv3Rn}^30#H;G7ewTX-Rq&-Kzfj)q zc_;iXz6?A59x`2GGni)|`K~l!+<3azioD8>4Y4Wfl>V@Iin!b4jsea4>&meU{el?Q zHr4(uni(QD?AIFdj8W-Lhqt(2c5gq*Np;*(+ssSg3@g`Yb<#;rq8)LwX z&VB)of+xXzEK*j6m6dbvkDD;%T*{?E0_Q0yzdB2_GMhcYQO$gwk#MvL{%G#*<2Na_ zJdSdnqOS*y5*~V0klebvy5e_5(AEnJ8t1Y>+6q8}78a%in`rVk(UZx)(meThAV?!$E{snTxeS5KLrk04**1QfO%3#BmNn6}SJ`#l>9p{|o+DsC~Blv}~H~bvaD+5?!C?uI7OY3bS zF3Z&?%P}%aM;XL#b5I~+=u4)$z)n%-#HA0;--MX4@e6Qp3^w_flic0>&!~o93Sued zSel!lC9}m%wt;auF#VnAe#tP{a*Y(|r9G1v;RCK+Uhfc%j)Xib{W3f1g}NOkC5aaM zP))0y5Zua+U$q$8y^J)|snMzS&s<6YVWmK9>0D@L zuucH&b`dP7MYO+{s3;TOYd74yK`oUBsl6z)3eS2&MBSt{0!*fx(&O{zK^Grac%A1Z zs;lA-;{W{0@0=`T5E@#Y4j!i=UxXIt;__yy+6BdMPL`7%I#f}qk=nC8fTf$P{Bh|q zb+UDMI1Fv2wV2hDrZ~gEaFLM$^Al}&V01i{9(QAg1ZGEsK*d5%swmuSD^KDCKNExN z5&LV+whBh`UU6P_L^m z(Eca5!0}z=R-)*x`3C%69k~PTpX13X&fJ}YVFjR>KVa`P+;Qi}k)U*ZUzq2AYFU0m zh^0d89GCa!Qe=zj^PYj{J1bB@94X<={QKj=1xCi%BpcOU+W#eXVU&v~EYwTm1gtUuK?!kRJ?GQ!PzfPf;dyS@=m6|p^3 zFJHPa?((_0h;^r0X~CPQqDVIM zzF!z--$hvI=9Ub9=dYdQWxKI%TDeo{r;#HcETC>_PmhpmUBN?X1Q?!_K4iZI-XDxO ziYEM4=!R0Hi|Zu~=+sb3^9HB|(8j6WYcmfQssi$nG_YVSUvB;aejK>BgtW?CcO+?p zdO{*M4y&UEUl^23ysDJdDk%nT956h>*_gJV7mIVQ$YSGe{CWot>ZCN07*mY~$QZYN zkoqjpu_DnkSOSqF6;e4`NNo#eUx(<9w(Ia3CB;@!ATOQPO<)3NLdXA8)>Uvt8FpKm zp&7avU_iQuk{G&?knWOhP(TzIx;vDV7-`?s#KYdu=E_<;LTa~?+D<*`nY$3|8eBx^!cv7OG)j{vdM$oe)3a!qZ6XRQS%FXi;WD?K51{DApq zM#hqHwX~TF^dGn}QM;S4YC|E1stWI8hs-=|=p(0vMUu)|`eSWY*m-%SZnLSEwe1q( z-u=M+26Dd-9Pju#u%+a|@XMd2mi+qTyiRRW1@}u64%g#ER~TZpW=6$pk9bY>Nxx=t zPySxkXne;08u_1VLKO-LgI=@yeiaV7zx!>Wrz7#H;@%C+`6DiJlu7LHtJnaHyK8`{ z1Z+3OXf-d&IvIeCbl6|*jjP2Kt=gCNbj>oE+gq=**q>ZyZE?d7&-BJ{Uu%qQk*!?6Z;s^Jv{&DwULE1Id1d^ zHVClW`jnyBQ^@}amqmNHI8NN)2bMuh6}f0kpvY2_0-lq2N4`wrz+6c`@O~~fhM(J2 zg5flEHM*okEqF+6sAKm~nvr9+pX=|7;er)<;si9tS`-pvE-(GqBcF{3v_(+`Eo6m-Yl~k zihxG7HrlV3S}MYwyLDx06gqs2bs|8O)Y+LVat9%&6mN6xQ{S=n0szB>P-OA_@3!e0 zO{=&Tk)u@8uYXe=z8#(Uc`DmJ`{*aKes4-ln4)&> zt#ity*dwS-_au-)$lK5NTi}#Nsqg3`Dftsef2A{NI#TpCz3%XnW!I6KFH@a@t}&Wz z0-7Kff;#3#HHLB5n)qea+0p<%au(=RgK)Su!%U=$F;~+}Xlw8Bu*HZHe6X(1&W-$% zRW#wxnn^zs0?y-lo%7gp|GP{o_pLfr^XK@PywasK@M8G+0lG4KaC&|%<6F4p(GjC} z;^(LLZ)@U$6KRN+O)!fyNB6v>{rsQoU*7FjPIiSnfjurJ)hsC?s`)Xbq1Asj-_CLz z#j+yNETLO>z$(Dq3J^z*=aSe?Ga0yNZ35f4-;x%WLukA0L+<3t=Zt-jn&k1@cCwvnDlnepfa*`!1?LcLYci`>F===XD&^jT$Z@&-3vV2L>2Lj@zyPClrF zIZUxDrU`&${3-1H2JXNdf1{u=7c7$UPujsK4#559Y1Ox!r$qD;ufM0PPs^s=O}}?3 zCS`*~rW|H7b7d7O%tqZrW86(|oJXR)9zuIOq1n^5K>mnB=GnV*&St%-9$2H|aWs9h zE759Ex-A#VkO_+5A$YOIdbJxsjCRJZps)Pv+n|+N9QeW5ERK6H*t~9|ZTds7Z+j5q zUwP{T)g*;66%j#z$g%KngifDxCE5}8lp@FvQ+)7sky`f2Ohz3P{8CUm4D9Zr$xv70 z*ZxK(+VAl7S2bhEVw(9zekxAu>+lVSFasL;iM?GWSHCNnIpJaOzOZ6InXg)1aCSM; zJBv5b7+sFGiQ_=3k1)BkoOxR7Uo2eSprenLsRmL1je_J#R_#VJX4!>@Mtn}8GU={6 zmz{CAa!djEJI`DsD^#pHU10T6m2%VPsSpCrq>{5{#veJ#zKTy}rMgY4Q17c~kkiI# zfMo3TVEht=4(n)Z`Zt`hcy_;zhlBZY>hG3+v{$C}w)wyL%c z4w9dG@t3#qCgKX;N=B1Zus|JJE}&}VHSECj?+*&)Cbw8JOT)lHsGR!dzG=jW+d zrAz*<+frbI?E|mO+VP$sFNH4I_{wqY^SZ*pw_^C?$x@zv3x{PkLaX0Qm_V>xv;irU zX%!8HUB@~0jYw<`0?(dF^=X?~c48j?0)c@m%TuaVc#0y$RUIXMDpgM=ud&_T;@2F} ziL$c&5X{QWyuX3Gk}C9EX+}Yq24ed71=7{JfyvdCFR})ig3F4oO94Aqk7Qn}Y*qH{ z#8t9WhYc~ag4pIUQzY81O1fvo2VXHef?JMy$iUrE<@CFWFJ)&M<)P~jPU^}89-(FW zVdZ3ycV&&|9V)|JP^?ccB#o_>qm{xbbm3D&a|9WX(=8UC$00aai1y0f7g z7sKFKlQ&g73?|a4f9!3jeo|*Ei);AR)j&@zyz#jwF9(!!W2FqKkhp_mN6Ly4gTO746rpjkyoa5@)VnOoBE*(GF0HkX>%U=J7y z*$hWZC)Z17fTk?Md#iwZVwT~_l+`hISG9+1X11xDtMy|Kt%goW3xaGoNLgBUGd_&n za^fSgEzm{?zrYRQ?p+>_B4uO!iF*5^hQL0w8eY{IH|_1Z<>0y99%1f7#Qr$n@J~#& z!kA(}+sj1ciTgxiA!^b4weCwj_eDD?X^4N2et7}(u8L{4kJ*zp_t$(Ft5ul%UWGW! z5oyq@?jCWTFqFoGVq20eyFV!wT?^T>P=irlp2a(c?vB}Wz``JP zT1rxhSMUrnQjm+!w{un9g-Z6|+(DJ2ptJE0sXm;`|74GQXrbp?Gi7PH@Wc!2e($1G za2{Er9y%};O^8K*fDBHZ97SpW0b0Q|4N28nKk)_lc12!<<^gq#1c&h4R73j`LYn>j z^_z?8N_moi-M2`DYfMvV{k9^0sSev~bX8hX#sz_--CwrGB9Y3<%3El;AL6(EMg|v} zP=b}C=~ve$*>*FRU5hnhi3&HAtP$K&VTnvw0xBZ!oCh{`fGTn^tY~dx;O`<_^p>jmj!O*CVBr)KVM;>;6kJda?o5xiVD z?VyJ%5eOaD?N91= zoJ*}&<1Ji@+9%9^^Gp&7g;0~JmG+DUT`)=Quh*=H#~8L?lo(k)1r-Kz8vZBpU&rtU zufb;DB#hgC0>#wLm}4($a>AL{?+Q$Mivp48cvM+`UEAq*kk`x`)_V<6hOaKo|+GoD*b}!GKYS!`~ zmN;w0ituh zB9y6$zXwC?rBJNfY@R7NQw;rzk^Z_C4wE)bA)l{v!-@HdHwI&A;|*2KUE&Q0kCb}7 zZ}Ft2oVbU~3wfdFm1J#1+ApxEquHEDV}rqm3m4D_IgbqhopL33akjF$PlEdER`pgq z{cFv{h-60p!441_Z6ZR4@nHVrZB2^ik{@{EgB8EVu`BDRkSZw_{!V&*;T2Pd66?}} zasGjUCsNb`vA#GPXSP13#h*Qt9ljl%+u07*_w%QOSC=K9+QlxgkgGe^aZ6Y^g}q;H zU31?oUjZXy@c-6g*R=cOvHyuW)<~X_kTQPrW({5b#!uBtz&Yy5FN;>*Fk2 z8n#Q(=O_6(oQ`MxqY?7ATT3;=BQQANmRx$%h5|IBI6vvbdA4NBp5>?V}=* z_gLQL_9}k3>QZCcsuUNCJB{%%u^hL+1cmW}gSe8t5tV<&PZp!8yK=+E4s^u<)&1aM z4tvN?&cCn0TO})b5|OiP(xmC7=UZ%U`ITIcXW*;e*n@O{=p;6lcGlD=e3T`Bk}VS}<>_e7*uswA>G)W3e-(gZRSNmJi)p=sN?*$k zs;;Vse1AscQW?If)86VHZJuM=4)WW?W?WL&*oh>H$_k;4%CVvVZ=rW^&vnMqSnq&; zsS|Rx^{IW(O_au^V{aj?>Xa&a8E=@*xIKUTIM071Dyp=XMD1^9Y$7PLQC`+@pM=sXoRs-jsYr1LM;I-z=Lb$os4_?=gS zl{XM~Ujp(|^Hvw3MmNM>6#3ws+6*8j6N)~+#Y&Z067pr2H+X(=>SD1T7`e;lyHjpQ z5SPyEG%kRTP8e}YNzDy6Fi?mpik+5vUCUJ&-TB~Pdpd3TNjWOb6SsOtQLq`c-`D

c--0UdV-sl^2j0Czy=PZuRb)>1EefbQ`F&q3_0ti8K z;El`E1A6?Q;PAf!xKRM23(!74R@lb^ybZ0QT0+q8Faie4!=my*Nyi6}~v zt6~h2qrPJG*QaQ_!U&k)g+5(-=L9`P2pY4{O@JirBT#&y%dVQIBTuhi)${i1au`qZ z$f#%}&RQ1}*pSI`ArMoff@JgsIi8Jgar2*k-RU;tk*$2!qW ztE|%C0AS%>U!4|+O4$mZ5($+ATqF164>jUfJa{K_xg(cRW|Q269*Qy~&L7~;#fBg9 znRI~vh|=PrsG*PO_b51xl<~d{rhRBAJ^Nl@1!^a-J=e@0?b;#_hPtLot!~tF!j{Q= z2#u6OhF@?YO$X-4P*--MUOr4KB7%w4i*JJ1y(B7_AESOX?RIB1nl*FDVV;j=cBqsO zRZ(|qh@TO)_vI`iOjN4yBQ+3xFZe0X;se)pFv;~?W9Qr^+pJQ~_5u1i;KBA~0_w)v zt*LrBV5T@FFs&B(r3X=zz;eeOI+X%(8xZcrhlih&MOM?553P<56!9P*BAsYE&skH) zIbxfM)}Oq~f!=-FyE`pZJ4<4ZBy;&u*lFdMPix_lRIwonm3h?EXoGa zQBIiUP&Hkb7QnE(+#(q>2KqU77<+G;)A5u0Z9ZETQXo&7U$4r^dx}luonz5w$B4=e zktAi|cTYrQvyn-W-+OM1l{aM`I{9*x7N}E(*yp5Bdiwy}PQ}FOZ)E9Aetb;bTwhkX zOj$GYy&xr{+NU#ajeoFMIqkDo{47HKvF1DHU{w*j7B|I5_G%305%Uuq-mdrmmFfSl zYNr$6N{5k+$T&am3d0VQyLwBo@=N0B*1bb>jqD+#Mq$|iRg9s$`(5-ZX%v+9LZafQ z8w!1gfL-ltlwuvelHHfw^zLEW-r=QRI8Vt-qBxf?`#P?6tAf)WL>{=T$XrH2GwLfQ5?bePDjrHn{U~e8Q~dB!FHXciBNfluQX#M zku&L*^yqGRSHG@AYNOQqvM2cOCtrjDEh6-+ul3;isIjt=Yj!puu&QzPj(F{w3j};5 zD>xwc6y!!$P970-`>HqOITHYla2w;g4DB&{Dd^PFfoK06ztq)v==u!cvo{h%hx^i+ zDlkM`b=t75qKhE;q|*3hV?&&j>HIp+K|5*o-PH77roazo=g>Z`#CueaCn{Rxo!$~BGj&k zzNYPY`8S(R6wJq9vc2B0bJmB7Ss^d`kL^uuCVd1XCW?o?LSuGr$yYO2qMfGmv}zW7Qg7Y?Np7E+ zOuN3CLiaEb<+yU2UGcLs`bxL;4tNx0O|ae)5XxgPd@R??xaNsjZz=8bcN8EsZ&Hkde7 z zZ@(Qzh=tAmJz5TlokeSL`2j-)gP5ZQG6nGL#)`mmdF5?o;!2E`!F61 zPnmxf5t8|_pZ%&@RP$OLbyWsS|dXj?> z156j3jyt=KF#K-@m|xN$2~h9jaVlaaO8MIB4@|j#OLAE^E|n60eEOVbb&op|7OwDbmRB@<4^q$ zmCMHO`gk&{7a(qCSx>w1>2V{&>%vF8L>00HXx` zPHAD68rV+Mj|^ME0m|Psf*W;ALNJdkyh)9gVCe%*dYR2s#5+#O@?q7^0mA_!f8hz@ zEwRxr_Lq=`o0g`H?5$4JT6x_KQ7hWVDAKh{z;8f+fi@?C)mlw_5mte3IQS)^S)EM4 zOgPveB0f^(1pkG6LC%5%MpMreoMzmJau_77>FideC-OqLOg6cpmjvQ3uz83oYLlA7 zVmu7(TQ~qY*J~)Gsh9?+!hKUvs991e5*`VZE?~^7)bMoc3B1VBQblm(J~lNZ`z?gy zGKZ-;W9V5L)wp`!e7lP+KhyCGK5#<2?Dtn>jHJD|U1)1Kt+i&1h3% z$g;%Z;4vk>Tcf;1X)$Q%Ux-p)wqp7S)s6{zgZN~O_@pUkWf#Pm=%j?7q#46R-0+lb z&t!|!K$T78=2449F%I#V^jOc!#ESNe{HYJ;XJ#b|Q~wVy9@ti!{`tx~rF=jLM4sd|(D4DH#U9cN3%cv-72dG56n z&l{=qzW3)U^o3(w$-%ubQ z$-u>{)CV}&78_X~1KxL-8!aWAH%5$(8qcr?zg5;Z_W~lTV?bssgHm;%b`A$i+0;zitb#Hb;k4>hmnFUtB54f%Bbh`k}lO7upE)g^V zAng=HjSJepWp}&Ps+MUk7;*kuxvqm{_KRP?@ZnA?+0=PCGKTa~{L$;nwt$1ox`~J8 z+J7>Pb^yP%>6_0f77zUZ#sa;(3N8?}%n8Eo?>KqD=rolEz|1bj{5bKcLB#o3(c5J) z1dS?(vbT*~DupKscU;S6SE~{ZZn#TmWmM&QPz3l!&&eFDr@{;M zat3+gaMKbqFp&?~NpSfBl1f%qRgPWbczu`ZgySU`LF+X{gvn{0)}6IgE}k=VhudXD z9k+*V>0d+e{^AiHnn#}jt-3GbTMyR<(q(A73?Nz?;RS*@504RY<@QXu@XM)!TYI z-XJBGg*Nf2?n5j3vk!XNjm2+!Kt3QZSd|A2d{Pg*Lzuirp89I3vBag$)m%Qmg+qVZ z*4S?NaA$`}P+5$-OQ9*yJ<0TMp1Bh+9MxGg&>i&X^a7F)f^hj*NVfH7ThHukgy0Nw-=BKjWO?41qsXk^e~^MsZQuTt{(t zAl`Ws?>n?V>$+wR=;NtWkp3_@QMlZ)@d^kb~OD*U8R* zBKe0ZR1(x0(SGNVapc)TJkt>@)1r5nqS@A$T7o87T)Ws-h!E> z#O&mrLgqC5$Yp%!L5H!?be#Lo4YR^f176*u+Rj1wPH1h$Q64^3MJ/setupTestFramework.js'], - moduleNameMapper: { - '\\.(css|less)$': '/__mocks__/styleMock.js', - }, - testURL: 'http://localhost:8080', - snapshotSerializers: ['jest-emotion'], - transformIgnorePatterns: [ - 'node_modules/(?!copy-text-to-clipboard|clean-stack|escape-string-regexp)', - ], - testEnvironment: 'jsdom', -}; diff --git a/package.json b/package.json index 47c99d59..bb6bd09b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@simplecms/simple-cms-core", - "version": "0.1.0", + "version": "0.1.2", "license": "MIT", "description": "Simple CMS core application.", "repository": "https://github.com/SimpleCMS/simple-cms", @@ -169,12 +169,8 @@ "@emotion/eslint-plugin": "11.10.0", "@octokit/rest": "16.43.2", "@stylelint/postcss-css-in-js": "0.37.3", - "@testing-library/dom": "8.18.1", - "@testing-library/jest-dom": "5.16.5", - "@testing-library/react": "12.1.5", "@types/common-tags": "1.8.0", "@types/history": "4.7.11", - "@types/jest": "27.5.2", "@types/js-base64": "3.3.1", "@types/jwt-decode": "2.2.1", "@types/lodash": "4.14.185", @@ -189,7 +185,6 @@ "axios": "0.26.1", "babel-core": "7.0.0-bridge.0", "babel-eslint": "11.0.0-beta.2", - "babel-jest": "27.5.1", "babel-loader": "8.2.5", "babel-plugin-emotion": "11.0.0", "babel-plugin-inline-json-import": "0.3.2", @@ -204,11 +199,6 @@ "commonmark-spec": "0.30.0", "cross-env": "7.0.3", "css-loader": "3.6.0", - "cypress": "9.5.3", - "cypress-file-upload": "5.0.8", - "cypress-image-snapshot": "4.0.1", - "cypress-jest-adapter": "0.1.1", - "cypress-plugin-tab": "1.0.5", "dotenv": "10.0.0", "eslint": "8.24.0", "eslint-plugin-cypress": "2.12.1", @@ -220,9 +210,6 @@ "fs-extra": "10.1.0", "gitlab": "14.2.2", "http-server": "14.1.1", - "jest": "27.5.1", - "jest-cli": "27.5.1", - "jest-emotion": "11.0.0", "js-yaml": "4.1.0", "mockserver-client": "5.14.0", "mockserver-node": "5.14.0", @@ -234,13 +221,11 @@ "postcss-scss": "4.0.5", "prettier": "2.7.1", "react-svg-loader": "3.0.3", - "react-test-renderer": "16.14.0", "rehype": "7.0.0", "rimraf": "3.0.2", "simple-git": "3.14.1", "slate-hyperscript": "0.13.9", "source-map-loader": "^4.0.0", - "start-server-and-test": "1.14.0", "stylelint": "14.12.1", "stylelint-config-standard-scss": "3.0.0", "stylelint-config-styled-components": "0.1.1", diff --git a/src/components/MediaLibrary/__tests__/MediaLibraryButtons.spec.js b/src/components/MediaLibrary/__tests__/MediaLibraryButtons.spec.js deleted file mode 100644 index 97619332..00000000 --- a/src/components/MediaLibrary/__tests__/MediaLibraryButtons.spec.js +++ /dev/null @@ -1,45 +0,0 @@ -import React from 'react'; -import { render } from '@testing-library/react'; - -import { CopyToClipBoardButton } from '../MediaLibraryButtons'; - -describe('CopyToClipBoardButton', () => { - const props = { - disabled: false, - t: jest.fn(key => key), - }; - - it('should use copy text when no path is defined', () => { - const { container } = render(); - - expect(container).toHaveTextContent('mediaLibrary.mediaLibraryCard.copy'); - }); - - it('should use copyUrl text when path is absolute and is draft', () => { - const { container } = render( - , - ); - - expect(container).toHaveTextContent('mediaLibrary.mediaLibraryCard.copyUrl'); - }); - - it('should use copyUrl text when path is absolute and is not draft', () => { - const { container } = render( - , - ); - - expect(container).toHaveTextContent('mediaLibrary.mediaLibraryCard.copyUrl'); - }); - - it('should use copyName when path is not absolute and is draft', () => { - const { container } = render(); - - expect(container).toHaveTextContent('mediaLibrary.mediaLibraryCard.copyName'); - }); - - it('should use copyPath when path is not absolute and is not draft', () => { - const { container } = render(); - - expect(container).toHaveTextContent('mediaLibrary.mediaLibraryCard.copyPath'); - }); -}); diff --git a/src/components/MediaLibrary/__tests__/MediaLibraryCard.spec.js b/src/components/MediaLibrary/__tests__/MediaLibraryCard.spec.js deleted file mode 100644 index d0516c87..00000000 --- a/src/components/MediaLibrary/__tests__/MediaLibraryCard.spec.js +++ /dev/null @@ -1,49 +0,0 @@ -import React from 'react'; -import { Map } from 'immutable'; -import { render } from '@testing-library/react'; - -import MediaLibraryCard from '../MediaLibraryCard'; - -describe('MediaLibraryCard', () => { - const props = { - displayURL: Map({ url: 'url' }), - text: 'image.png', - onClick: jest.fn(), - draftText: 'Draft', - width: '100px', - height: '240px', - margin: '10px', - isViewableImage: true, - loadDisplayURL: jest.fn(), - }; - - it('should match snapshot for non draft image', () => { - const { asFragment, queryByTestId } = render(); - - expect(queryByTestId('draft-text')).toBeNull(); - expect(asFragment()).toMatchSnapshot(); - }); - - it('should match snapshot for draft image', () => { - const { asFragment, getByTestId } = render(); - expect(getByTestId('draft-text')).toHaveTextContent('Draft'); - expect(asFragment()).toMatchSnapshot(); - }); - - it('should match snapshot for non viewable image', () => { - const { asFragment, getByTestId } = render( - , - ); - expect(getByTestId('card-file-icon')).toHaveTextContent('Not Viewable'); - expect(asFragment()).toMatchSnapshot(); - }); - - it('should call loadDisplayURL on mount when url is empty', () => { - const loadDisplayURL = jest.fn(); - render( - , - ); - - expect(loadDisplayURL).toHaveBeenCalledTimes(1); - }); -}); diff --git a/src/components/MediaLibrary/__tests__/__snapshots__/MediaLibraryCard.spec.js.snap b/src/components/MediaLibrary/__tests__/__snapshots__/MediaLibraryCard.spec.js.snap deleted file mode 100644 index b650338d..00000000 --- a/src/components/MediaLibrary/__tests__/__snapshots__/MediaLibraryCard.spec.js.snap +++ /dev/null @@ -1,214 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`MediaLibraryCard should match snapshot for draft image 1`] = ` - - .emotion-8 { - width: 100px; - height: 240px; - margin: 10px; - border: solid 2px #dfdfe3; - border-radius: 5px; - cursor: pointer; - overflow: hidden; -} - -.emotion-8:focus { - outline: none; -} - -.emotion-4 { - height: 162px; - background-color: #f2f2f2; - background-size: 16px 16px; - background-position: 0 0,8px 8px; - background-image: linear-gradient( 45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%, #e6e6e6 ) , linear-gradient( 45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%, #e6e6e6 ); - box-shadow: inset 0 0 4px rgba(68,74,87,0.3); - border-bottom: solid 2px #dfdfe3; - position: relative; -} - -.emotion-2 { - width: 100%; - height: 160px; - object-fit: contain; - border-radius: 2px 2px 0 0; -} - -.emotion-6 { - color: #798291; - padding: 8px; - margin-top: 20px; - overflow-wrap: break-word; - line-height: 1.3 !important; -} - -.emotion-0 { - color: #70399f; - background-color: #f6d8ff; - position: absolute; - padding: 8px; - border-radius: 5px 0 5px 0; -} - -

-
-

- Draft -

- -
-

- image.png -

-
- -`; - -exports[`MediaLibraryCard should match snapshot for non draft image 1`] = ` - - .emotion-6 { - width: 100px; - height: 240px; - margin: 10px; - border: solid 2px #dfdfe3; - border-radius: 5px; - cursor: pointer; - overflow: hidden; -} - -.emotion-6:focus { - outline: none; -} - -.emotion-2 { - height: 162px; - background-color: #f2f2f2; - background-size: 16px 16px; - background-position: 0 0,8px 8px; - background-image: linear-gradient( 45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%, #e6e6e6 ) , linear-gradient( 45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%, #e6e6e6 ); - box-shadow: inset 0 0 4px rgba(68,74,87,0.3); - border-bottom: solid 2px #dfdfe3; - position: relative; -} - -.emotion-0 { - width: 100%; - height: 160px; - object-fit: contain; - border-radius: 2px 2px 0 0; -} - -.emotion-4 { - color: #798291; - padding: 8px; - margin-top: 20px; - overflow-wrap: break-word; - line-height: 1.3 !important; -} - -
-
- -
-

- image.png -

-
-
-`; - -exports[`MediaLibraryCard should match snapshot for non viewable image 1`] = ` - - .emotion-6 { - width: 100px; - height: 240px; - margin: 10px; - border: solid 2px #dfdfe3; - border-radius: 5px; - cursor: pointer; - overflow: hidden; -} - -.emotion-6:focus { - outline: none; -} - -.emotion-2 { - height: 162px; - background-color: #f2f2f2; - background-size: 16px 16px; - background-position: 0 0,8px 8px; - background-image: linear-gradient( 45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%, #e6e6e6 ) , linear-gradient( 45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%, #e6e6e6 ); - box-shadow: inset 0 0 4px rgba(68,74,87,0.3); - border-bottom: solid 2px #dfdfe3; - position: relative; -} - -.emotion-4 { - color: #798291; - padding: 8px; - margin-top: 20px; - overflow-wrap: break-word; - line-height: 1.3 !important; -} - -.emotion-0 { - width: 100%; - height: 160px; - object-fit: cover; - border-radius: 2px 2px 0 0; - padding: 1em; - font-size: 3em; -} - -
-
-
- Not Viewable -
-
-

- image.png -

-
-
-`; diff --git a/src/constants/__tests__/configSchema.spec.js b/src/constants/__tests__/configSchema.spec.js deleted file mode 100644 index 117e7f09..00000000 --- a/src/constants/__tests__/configSchema.spec.js +++ /dev/null @@ -1,511 +0,0 @@ -import { merge } from 'lodash'; - -import { validateConfig } from '../configSchema'; - -jest.mock('../../lib/registry'); - -describe('config', () => { - /** - * Suppress error logging to reduce noise during testing. Jest will still - * log test failures and associated errors as expected. - */ - beforeEach(() => { - jest.spyOn(console, 'error').mockImplementation(() => {}); - }); - - const { getWidgets } = require('../../lib/registry'); - getWidgets.mockImplementation(() => [{}]); - - describe('validateConfig', () => { - const validConfig = { - foo: 'bar', - backend: { name: 'bar' }, - media_folder: 'baz', - collections: [ - { - name: 'posts', - label: 'Posts', - folder: '_posts', - fields: [{ name: 'title', label: 'title', widget: 'string' }], - }, - ], - }; - - it('should not throw if no errors', () => { - expect(() => { - validateConfig(validConfig); - }).not.toThrowError(); - }); - - it('should throw if backend is not defined in config', () => { - expect(() => { - validateConfig({ foo: 'bar' }); - }).toThrowError("config must have required property 'backend'"); - }); - - it('should throw if backend name is not defined in config', () => { - expect(() => { - validateConfig({ foo: 'bar', backend: {} }); - }).toThrowError("'backend' must have required property 'name'"); - }); - - it('should throw if backend name is not a string in config', () => { - expect(() => { - validateConfig({ foo: 'bar', backend: { name: {} } }); - }).toThrowError("'backend.name' must be string"); - }); - - it('should throw if backend.open_authoring is not a boolean in config', () => { - expect(() => { - validateConfig(merge(validConfig, { backend: { open_authoring: 'true' } })); - }).toThrowError("'backend.open_authoring' must be boolean"); - }); - - it('should not throw if backend.open_authoring is boolean in config', () => { - expect(() => { - validateConfig(merge(validConfig, { backend: { open_authoring: true } })); - }).not.toThrowError(); - }); - - it('should throw if backend.auth_scope is not "repo" or "public_repo" in config', () => { - expect(() => { - validateConfig(merge(validConfig, { backend: { auth_scope: 'user' } })); - }).toThrowError("'backend.auth_scope' must be equal to one of the allowed values"); - }); - - it('should not throw if backend.auth_scope is one of "repo" or "public_repo" in config', () => { - expect(() => { - validateConfig(merge(validConfig, { backend: { auth_scope: 'repo' } })); - }).not.toThrowError(); - expect(() => { - validateConfig(merge(validConfig, { backend: { auth_scope: 'public_repo' } })); - }).not.toThrowError(); - }); - - it('should throw if media_folder is not defined in config', () => { - expect(() => { - validateConfig({ foo: 'bar', backend: { name: 'bar' } }); - }).toThrowError("config must have required property 'media_folder'"); - }); - - it('should throw if media_folder is not a string in config', () => { - expect(() => { - validateConfig({ foo: 'bar', backend: { name: 'bar' }, media_folder: {} }); - }).toThrowError("'media_folder' must be string"); - }); - - it('should throw if collections is not defined in config', () => { - expect(() => { - validateConfig({ foo: 'bar', backend: { name: 'bar' }, media_folder: 'baz' }); - }).toThrowError("config must have required property 'collections'"); - }); - - it('should throw if collections not an array in config', () => { - expect(() => { - validateConfig({ - foo: 'bar', - backend: { name: 'bar' }, - media_folder: 'baz', - collections: {}, - }); - }).toThrowError("'collections' must be array"); - }); - - it('should throw if collections is an empty array in config', () => { - expect(() => { - validateConfig({ - foo: 'bar', - backend: { name: 'bar' }, - media_folder: 'baz', - collections: [], - }); - }).toThrowError("'collections' must NOT have fewer than 1 items"); - }); - - it('should throw if collections is an array with a single null element in config', () => { - expect(() => { - validateConfig({ - foo: 'bar', - backend: { name: 'bar' }, - media_folder: 'baz', - collections: [null], - }); - }).toThrowError("'collections[0]' must be object"); - }); - - it('should throw if local_backend is not a boolean or plain object', () => { - expect(() => { - validateConfig({ ...validConfig, local_backend: [] }); - }).toThrowError("'local_backend' must be boolean"); - }); - - it('should throw if local_backend url is not a string', () => { - expect(() => { - validateConfig({ ...validConfig, local_backend: { url: [] } }); - }).toThrowError("'local_backend.url' must be string"); - }); - - it('should throw if local_backend allowed_hosts is not a string array', () => { - expect(() => { - validateConfig({ ...validConfig, local_backend: { allowed_hosts: [true] } }); - }).toThrowError("'local_backend.allowed_hosts[0]' must be string"); - }); - - it('should not throw if local_backend is a boolean', () => { - expect(() => { - validateConfig({ ...validConfig, local_backend: true }); - }).not.toThrowError(); - }); - - it('should not throw if local_backend is a plain object with url string property', () => { - expect(() => { - validateConfig({ ...validConfig, local_backend: { url: 'http://localhost:8081/api/v1' } }); - }).not.toThrowError(); - }); - - it('should not throw if local_backend is a plain object with allowed_hosts string array property', () => { - expect(() => { - validateConfig({ - ...validConfig, - local_backend: { allowed_hosts: ['192.168.0.1'] }, - }); - }).not.toThrowError(); - }); - - it('should throw if collection publish is not a boolean', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ publish: 'false' }] })); - }).toThrowError("'collections[0].publish' must be boolean"); - }); - - it('should not throw if collection publish is a boolean', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ publish: false }] })); - }).not.toThrowError(); - }); - - it('should throw if collections sortable_fields is not a boolean or a string array', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ sortable_fields: 'title' }] })); - }).toThrowError("'collections[0].sortable_fields' must be array"); - }); - - it('should allow sortable_fields to be a string array', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ sortable_fields: ['title'] }] })); - }).not.toThrow(); - }); - - it('should allow sortable_fields to be a an empty array', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ sortable_fields: [] }] })); - }).not.toThrow(); - }); - - it('should allow sortableFields instead of sortable_fields', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ sortableFields: [] }] })); - }).not.toThrow(); - }); - - it('should throw if both sortable_fields and sortableFields exist', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { collections: [{ sortable_fields: [], sortableFields: [] }] }), - ); - }).toThrowError("'collections[0]' must NOT be valid"); - }); - - it('should throw if collection names are not unique', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [validConfig.collections[0], validConfig.collections[0]], - }), - ); - }).toThrowError("'collections' collections names must be unique"); - }); - - it('should throw if collection file names are not unique', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [ - {}, - { - files: [ - { - name: 'a', - label: 'a', - file: 'a.md', - fields: [{ name: 'title', label: 'title', widget: 'string' }], - }, - { - name: 'a', - label: 'b', - file: 'b.md', - fields: [{ name: 'title', label: 'title', widget: 'string' }], - }, - ], - }, - ], - }), - ); - }).toThrowError("'collections[1].files' files names must be unique"); - }); - - it('should throw if collection fields names are not unique', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [ - { - fields: [ - { name: 'title', label: 'title', widget: 'string' }, - { name: 'title', label: 'other title', widget: 'string' }, - ], - }, - ], - }), - ); - }).toThrowError("'collections[0].fields' fields names must be unique"); - }); - - it('should not throw if collection fields are unique across nesting levels', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [ - { - fields: [ - { name: 'title', label: 'title', widget: 'string' }, - { - name: 'object', - label: 'Object', - widget: 'object', - fields: [{ name: 'title', label: 'title', widget: 'string' }], - }, - ], - }, - ], - }), - ); - }).not.toThrow(); - }); - - describe('nested validation', () => { - const { getWidgets } = require('../../lib/registry'); - getWidgets.mockImplementation(() => [ - { - name: 'relation', - schema: { - properties: { - search_fields: { type: 'array', items: { type: 'string' } }, - display_fields: { type: 'array', items: { type: 'string' } }, - }, - }, - }, - ]); - - it('should throw if nested relation display_fields and search_fields are not arrays', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [ - { - fields: [ - { name: 'title', label: 'title', widget: 'string' }, - { - name: 'object', - label: 'Object', - widget: 'object', - fields: [ - { name: 'title', label: 'title', widget: 'string' }, - { - name: 'relation', - label: 'relation', - widget: 'relation', - display_fields: 'title', - search_fields: 'title', - }, - ], - }, - ], - }, - ], - }), - ); - }).toThrowError( - "'collections[0].fields[1].fields[1].search_fields' must be array\n'collections[0].fields[1].fields[1].display_fields' must be array", - ); - }); - - it('should not throw if nested relation display_fields and search_fields are arrays', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [ - { - fields: [ - { name: 'title', label: 'title', widget: 'string' }, - { - name: 'object', - label: 'Object', - widget: 'object', - fields: [ - { name: 'title', label: 'title', widget: 'string' }, - { - name: 'relation', - label: 'relation', - widget: 'relation', - display_fields: ['title'], - search_fields: ['title'], - }, - ], - }, - ], - }, - ], - }), - ); - }).not.toThrow(); - }); - }); - - it('should throw if collection meta is not a plain object', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ meta: [] }] })); - }).toThrowError("'collections[0].meta' must be object"); - }); - - it('should throw if collection meta is an empty object', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ meta: {} }] })); - }).toThrowError("'collections[0].meta' must NOT have fewer than 1 items"); - }); - - it('should throw if collection meta is an empty object', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ meta: { path: {} } }] })); - }).toThrowError("'collections[0].meta.path' must have required property 'label'"); - expect(() => { - validateConfig( - merge({}, validConfig, { collections: [{ meta: { path: { label: 'Label' } } }] }), - ); - }).toThrowError("'collections[0].meta.path' must have required property 'widget'"); - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [{ meta: { path: { label: 'Label', widget: 'widget' } } }], - }), - ); - }).toThrowError("'collections[0].meta.path' must have required property 'index_file'"); - }); - - it('should allow collection meta to have a path configuration', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [ - { meta: { path: { label: 'Path', widget: 'string', index_file: 'index' } } }, - ], - }), - ); - }).not.toThrow(); - }); - - it('should throw if collection field pattern is not an array', () => { - expect(() => { - validateConfig(merge({}, validConfig, { collections: [{ fields: [{ pattern: '' }] }] })); - }).toThrowError("'collections[0].fields[0].pattern' must be array"); - }); - - it('should throw if collection field pattern is not an array of [string|regex, string]', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { collections: [{ fields: [{ pattern: [1, ''] }] }] }), - ); - }).toThrowError( - "'collections[0].fields[0].pattern[0]' must be string\n'collections[0].fields[0].pattern[0]' must be a regular expression", - ); - - expect(() => { - validateConfig( - merge({}, validConfig, { collections: [{ fields: [{ pattern: ['', 1] }] }] }), - ); - }).toThrowError("'collections[0].fields[0].pattern[1]' must be string"); - }); - - it('should allow collection field pattern to be an array of [string|regex, string]', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [{ fields: [{ pattern: ['pattern', 'error'] }] }], - }), - ); - }).not.toThrow(); - - expect(() => { - validateConfig( - merge({}, validConfig, { - collections: [{ fields: [{ pattern: [/pattern/, 'error'] }] }], - }), - ); - }).not.toThrow(); - }); - - describe('i18n', () => { - it('should throw error when locale has invalid characters', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - i18n: { - structure: 'multiple_folders', - locales: ['en', 'tr.TR'], - }, - }), - ); - }).toThrowError(`'i18n.locales[1]' must match pattern "^[a-zA-Z-_]+$"`); - }); - - it('should throw error when locale is less than 2 characters', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - i18n: { - structure: 'multiple_folders', - locales: ['en', 't'], - }, - }), - ); - }).toThrowError(`'i18n.locales[1]' must NOT have fewer than 2 characters`); - }); - - it('should throw error when locale is more than 10 characters', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - i18n: { - structure: 'multiple_folders', - locales: ['en', 'a_very_long_locale'], - }, - }), - ); - }).toThrowError(`'i18n.locales[1]' must NOT have more than 10 characters`); - }); - - it('should allow valid locales strings', () => { - expect(() => { - validateConfig( - merge({}, validConfig, { - i18n: { - structure: 'multiple_folders', - locales: ['en', 'tr-TR', 'zh_CHS'], - }, - }), - ); - }).not.toThrow(); - }); - }); - }); -}); diff --git a/src/formats/__tests__/frontmatter.spec.js b/src/formats/__tests__/frontmatter.spec.js deleted file mode 100644 index 2f14d732..00000000 --- a/src/formats/__tests__/frontmatter.spec.js +++ /dev/null @@ -1,429 +0,0 @@ -import { - FrontmatterInfer, - frontmatterJSON, - frontmatterTOML, - frontmatterYAML, -} from '../frontmatter'; - -describe('Frontmatter', () => { - describe('yaml', () => { - it('should parse YAML with --- delimiters', () => { - expect( - FrontmatterInfer.fromFile('---\ntitle: YAML\ndescription: Something longer\n---\nContent'), - ).toEqual({ - title: 'YAML', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse YAML with --- delimiters when it is explicitly set as the format without a custom delimiter', () => { - expect( - frontmatterYAML().fromFile('---\ntitle: YAML\ndescription: Something longer\n---\nContent'), - ).toEqual({ - title: 'YAML', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse YAML with custom delimiters when it is explicitly set as the format with a custom delimiter', () => { - expect( - frontmatterYAML('~~~').fromFile( - '~~~\ntitle: YAML\ndescription: Something longer\n~~~\nContent', - ), - ).toEqual({ - title: 'YAML', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse YAML with custom delimiters when it is explicitly set as the format with different custom delimiters', () => { - expect( - frontmatterYAML(['~~~', '^^^']).fromFile( - '~~~\ntitle: YAML\ndescription: Something longer\n^^^\nContent', - ), - ).toEqual({ - title: 'YAML', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse YAML with ---yaml delimiters', () => { - expect( - FrontmatterInfer.fromFile( - '---yaml\ntitle: YAML\ndescription: Something longer\n---\nContent', - ), - ).toEqual({ - title: 'YAML', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should overwrite any body param in the front matter', () => { - expect( - FrontmatterInfer.fromFile('---\ntitle: The Title\nbody: Something longer\n---\nContent'), - ).toEqual({ - title: 'The Title', - body: 'Content', - }); - }); - - it('should stringify YAML with --- delimiters', () => { - expect( - FrontmatterInfer.toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'yaml'], - title: 'YAML', - }), - ).toEqual( - [ - '---', - 'tags:', - ' - front matter', - ' - yaml', - 'title: YAML', - '---', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should stringify YAML with missing body', () => { - expect(FrontmatterInfer.toFile({ tags: ['front matter', 'yaml'], title: 'YAML' })).toEqual( - ['---', 'tags:', ' - front matter', ' - yaml', 'title: YAML', '---', ''].join('\n'), - ); - }); - - it('should stringify YAML with --- delimiters when it is explicitly set as the format without a custom delimiter', () => { - expect( - frontmatterYAML().toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'yaml'], - title: 'YAML', - }), - ).toEqual( - [ - '---', - 'tags:', - ' - front matter', - ' - yaml', - 'title: YAML', - '---', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should stringify YAML with --- delimiters when it is explicitly set as the format with a custom delimiter', () => { - expect( - frontmatterYAML('~~~').toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'yaml'], - title: 'YAML', - }), - ).toEqual( - [ - '~~~', - 'tags:', - ' - front matter', - ' - yaml', - 'title: YAML', - '~~~', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should stringify YAML with --- delimiters when it is explicitly set as the format with different custom delimiters', () => { - expect( - frontmatterYAML(['~~~', '^^^']).toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'yaml'], - title: 'YAML', - }), - ).toEqual( - [ - '~~~', - 'tags:', - ' - front matter', - ' - yaml', - 'title: YAML', - '^^^', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should trim last line break if added by grey-matter', () => { - expect( - frontmatterYAML().toFile({ - body: 'noLineBreak', - }), - ).toEqual('noLineBreak'); - }); - - it('should not trim last line break if not added by grey-matter', () => { - expect( - frontmatterYAML().toFile({ - body: 'withLineBreak\n', - }), - ).toEqual('withLineBreak\n'); - }); - - it('should keep field types', () => { - const frontmatter = frontmatterYAML(); - const file = frontmatter.toFile({ - number: 1, - string: 'Hello World!', - date: new Date('2020-01-01'), - array: ['1', new Date('2020-01-01')], - body: 'Content', - }); - expect(frontmatter.fromFile(file)).toEqual({ - number: 1, - string: 'Hello World!', - date: new Date('2020-01-01'), - array: ['1', new Date('2020-01-01')], - body: 'Content', - }); - }); - }); - - describe('toml', () => { - it('should parse TOML with +++ delimiters', () => { - expect( - FrontmatterInfer.fromFile( - '+++\ntitle = "TOML"\ndescription = "Front matter"\n+++\nContent', - ), - ).toEqual({ - title: 'TOML', - description: 'Front matter', - body: 'Content', - }); - }); - - it('should parse TOML with 0.5 style dates', () => { - expect( - FrontmatterInfer.fromFile('+++\ntitle = "TOML"\ndate = 2018-12-24\n+++\nContent'), - ).toEqual({ - title: 'TOML', - date: new Date('2018-12-24T00:00:00.000Z'), - body: 'Content', - }); - }); - - it('should parse TOML with +++ delimiters when it is explicitly set as the format without a custom delimiter', () => { - expect( - frontmatterTOML('~~~').fromFile( - '~~~\ntitle = "TOML"\ndescription = "Front matter"\n~~~\nContent', - ), - ).toEqual({ - title: 'TOML', - description: 'Front matter', - body: 'Content', - }); - }); - - it('should parse TOML with ---toml delimiters', () => { - expect( - FrontmatterInfer.fromFile( - '---toml\ntitle = "TOML"\ndescription = "Something longer"\n---\nContent', - ), - ).toEqual({ - title: 'TOML', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should stringify TOML with +++ delimiters when it is explicitly set as the format without a custom delimiter', () => { - expect( - frontmatterTOML().toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'toml'], - title: 'TOML', - }), - ).toEqual( - [ - '+++', - 'tags = ["front matter", "toml"]', - 'title = "TOML"', - '+++', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should stringify TOML with +++ delimiters when it is explicitly set as the format with a custom delimiter', () => { - expect( - frontmatterTOML('~~~').toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'toml'], - title: 'TOML', - }), - ).toEqual( - [ - '~~~', - 'tags = ["front matter", "toml"]', - 'title = "TOML"', - '~~~', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should keep field types', () => { - const frontmatter = frontmatterTOML(); - const file = frontmatter.toFile({ - number: 1, - string: 'Hello World!', - date: new Date('2020-01-01'), - // in toml arrays must contain the same type - array: ['1', new Date('2020-01-01').toISOString()], - body: 'Content', - }); - expect(frontmatter.fromFile(file)).toEqual({ - number: 1, - string: 'Hello World!', - date: new Date('2020-01-01'), - array: ['1', new Date('2020-01-01').toISOString()], - body: 'Content', - }); - }); - }); - - describe('json', () => { - it('should parse JSON with { } delimiters', () => { - expect( - FrontmatterInfer.fromFile( - '{\n"title": "The Title",\n"description": "Something longer"\n}\nContent', - ), - ).toEqual({ - title: 'The Title', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse JSON with { } delimiters when it is explicitly set as the format without a custom delimiter', () => { - expect( - frontmatterJSON().fromFile( - '{\n"title": "The Title",\n"description": "Something longer"\n}\nContent', - ), - ).toEqual({ - title: 'The Title', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse JSON with { } delimiters when it is explicitly set as the format with a custom delimiter', () => { - expect( - frontmatterJSON('~~~').fromFile( - '~~~\n"title": "The Title",\n"description": "Something longer"\n~~~\nContent', - ), - ).toEqual({ - title: 'The Title', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse JSON with ---json delimiters', () => { - expect( - FrontmatterInfer.fromFile( - '---json\n{\n"title": "The Title",\n"description": "Something longer"\n}\n---\nContent', - ), - ).toEqual({ - title: 'The Title', - description: 'Something longer', - body: 'Content', - }); - }); - - it('should parse JSON with { } delimiters ending with a nested object', () => { - expect( - FrontmatterInfer.fromFile( - '{\n "title": "The Title",\n "nested": {\n "inside": "Inside prop"\n }\n}\nContent', - ), - ).toEqual({ - title: 'The Title', - nested: { inside: 'Inside prop' }, - body: 'Content', - }); - }); - - it('should stringify JSON with { } delimiters when it is explicitly set as the format without a custom delimiter', () => { - expect( - frontmatterJSON().toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'json'], - title: 'JSON', - }), - ).toEqual( - [ - '{', - '"tags": [', - ' "front matter",', - ' "json"', - ' ],', - ' "title": "JSON"', - '}', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should stringify JSON with { } delimiters when it is explicitly set as the format with a custom delimiter', () => { - expect( - frontmatterJSON('~~~').toFile({ - body: 'Some content\nOn another line', - tags: ['front matter', 'json'], - title: 'JSON', - }), - ).toEqual( - [ - '~~~', - '"tags": [', - ' "front matter",', - ' "json"', - ' ],', - ' "title": "JSON"', - '~~~', - 'Some content', - 'On another line', - ].join('\n'), - ); - }); - - it('should keep field types', () => { - const frontmatter = frontmatterJSON(); - const file = frontmatter.toFile({ - number: 1, - string: 'Hello World!', - // no way to represent date in JSON - date: new Date('2020-01-01').toISOString(), - array: ['1', new Date('2020-01-01').toISOString()], - body: 'Content', - }); - expect(frontmatter.fromFile(file)).toEqual({ - number: 1, - string: 'Hello World!', - date: new Date('2020-01-01').toISOString(), - array: ['1', new Date('2020-01-01').toISOString()], - body: 'Content', - }); - }); - }); -}); diff --git a/src/formats/__tests__/toml.spec.js b/src/formats/__tests__/toml.spec.js deleted file mode 100644 index 7b89b6f1..00000000 --- a/src/formats/__tests__/toml.spec.js +++ /dev/null @@ -1,9 +0,0 @@ -import tomlFormatter from '../toml'; - -describe('tomlFormatter', () => { - it('should output TOML integer values without decimals', () => { - expect(tomlFormatter.toFile({ testFloat: 123.456, testInteger: 789, title: 'TOML' })).toEqual( - ['testFloat = 123.456', 'testInteger = 789', 'title = "TOML"'].join('\n'), - ); - }); -}); diff --git a/src/formats/__tests__/yaml.spec.js b/src/formats/__tests__/yaml.spec.js deleted file mode 100644 index bff71d7c..00000000 --- a/src/formats/__tests__/yaml.spec.js +++ /dev/null @@ -1,162 +0,0 @@ -import { stripIndent } from 'common-tags'; - -import yaml from '../yaml'; - -describe('yaml', () => { - describe('fromFile', () => { - test('loads valid yaml', () => { - expect(yaml.fromFile('[]')).toEqual([]); - - const result = yaml.fromFile(stripIndent` - date: 2020-04-02T16:08:03.327Z - dateString: 2020-04-02 - boolean: true - number: 1 - `); - expect(result).toEqual({ - date: new Date('2020-04-02T16:08:03.327Z'), - dateString: '2020-04-02', - boolean: true, - number: 1, - }); - expect(yaml.fromFile('# Comment a\na: a\nb:\n # Comment c\n c:\n d: d\n')).toEqual({ - a: 'a', - b: { c: { d: 'd' } }, - }); - expect( - yaml.fromFile(stripIndent` - # template comment - template: post - # title comment - title: title - # image comment - image: /media/netlify.png - # date comment - date: 2020-04-02T13:27:48.617Z - # object comment - object: - # object_title comment - object_title: object_title - # object_list comment - object_list: - - object_list_item_1: "1" - object_list_item_2: "2" - # list comment - list: - - "1" - `), - ).toEqual({ - list: ['1'], - object: { - object_title: 'object_title', - object_list: [{ object_list_item_1: '1', object_list_item_2: '2' }], - }, - date: new Date('2020-04-02T13:27:48.617Z'), - image: '/media/netlify.png', - title: 'title', - template: 'post', - }); - }); - test('does not fail on closing separator', () => { - expect(yaml.fromFile('---\n[]\n---')).toEqual([]); - }); - - test('parses single quoted string as string', () => { - expect(yaml.fromFile('name: y')).toEqual({ name: 'y' }); - }); - - test('parses ISO date string as date', () => { - expect(yaml.fromFile('date: 2020-04-02T16:08:03.327Z')).toEqual({ - date: new Date('2020-04-02T16:08:03.327Z'), - }); - }); - - test('parses partial date string as string', () => { - expect(yaml.fromFile('date: 2020-06-12')).toEqual({ - date: '2020-06-12', - }); - expect(yaml.fromFile('date: 12-06-2012')).toEqual({ - date: '12-06-2012', - }); - }); - - test('parses partial time value as string', () => { - expect(yaml.fromFile('time: 10:05')).toEqual({ - time: '10:05', - }); - }); - }); - describe('toFile', () => { - test('outputs valid yaml', () => { - expect(yaml.toFile([])).toEqual('[]\n'); - }); - - test('should sort keys', () => { - expect(yaml.toFile({ a: 'a', b: 'b', c: 'c', d: 'd' })).toEqual('a: a\nb: b\nc: c\nd: d\n'); - expect(yaml.toFile({ a: 'a', b: 'b', c: 'c', d: 'd' }, ['d', 'b', 'a', 'c'])).toEqual( - 'd: d\nb: b\na: a\nc: c\n', - ); - expect(yaml.toFile({ a: 'a', b: 'b', c: 'c', d: 'd' }, ['d', 'b', 'c'])).toEqual( - 'a: a\nd: d\nb: b\nc: c\n', - ); - }); - - test('should add comments', () => { - expect( - yaml.toFile({ a: 'a', b: { c: { d: 'd' } } }, [], { a: 'Comment a', 'b.c': 'Comment c' }), - ).toEqual('# Comment a\na: a\nb:\n # Comment c\n c:\n d: d\n'); - - const expected = `# template comment -template: post -# title comment -title: title -# image comment -image: /media/netlify.png -# date comment -date: 2020-04-02T13:27:48.617Z -# object comment -object: - # object_title comment - object_title: object_title - # object_list comment - object_list: - - object_list_item_1: "1" - object_list_item_2: "2" -# list comment -list: - - "1" -`; - - const result = yaml.toFile( - { - list: ['1'], - object: { - object_title: 'object_title', - object_list: [{ object_list_item_1: '1', object_list_item_2: '2' }], - }, - date: new Date('2020-04-02T13:27:48.617Z'), - image: '/media/netlify.png', - title: 'title', - template: 'post', - }, - ['template', 'title', 'image', 'date', 'object', 'list'], - { - list: 'list comment', - object: 'object comment', - 'object.object_title': 'object_title comment', - 'object.object_list': 'object_list comment', - date: 'date comment', - image: 'image comment', - title: 'title comment', - template: 'template comment', - }, - ); - - expect(result).toEqual(expected); - - expect(yaml.toFile({ a: 'a' }, [], { a: 'line 1\\nline 2' })).toEqual( - '# line 1\n# line 2\na: a\n', - ); - }); - }); -}); diff --git a/src/reducers/__tests__/auth.spec.ts b/src/reducers/__tests__/auth.spec.ts deleted file mode 100644 index 9fb87db5..00000000 --- a/src/reducers/__tests__/auth.spec.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { authenticating, authenticate, authError, logout } from '../../actions/auth'; -import auth, { defaultState } from '../auth'; - -describe('auth', () => { - it('should handle an empty state', () => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore auth reducer doesn't accept empty action - expect(auth(undefined, {})).toEqual(defaultState); - }); - - it('should handle an authentication request', () => { - expect(auth(undefined, authenticating())).toEqual({ - ...defaultState, - isFetching: true, - }); - }); - - it('should handle authentication', () => { - const user = { name: 'joe', token: 'token' }; - expect(auth(undefined, authenticate(user))).toEqual({ - ...defaultState, - user, - }); - }); - - it('should handle an authentication error', () => { - expect(auth(undefined, authError(new Error('Bad credentials')))).toEqual({ - ...defaultState, - error: 'Error: Bad credentials', - }); - }); - - it('should handle logout', () => { - const user = { name: 'joe', token: 'token' }; - const newState = auth({ ...defaultState, user }, logout()); - expect(newState.user).toBeUndefined(); - }); -}); diff --git a/src/reducers/__tests__/collections.spec.js b/src/reducers/__tests__/collections.spec.js deleted file mode 100644 index 1314b9ae..00000000 --- a/src/reducers/__tests__/collections.spec.js +++ /dev/null @@ -1,571 +0,0 @@ -import { fromJS, Map } from 'immutable'; - -import { configLoaded } from '../../actions/config'; -import collections, { - selectAllowDeletion, - selectEntryPath, - selectEntrySlug, - selectFieldsWithMediaFolders, - selectMediaFolders, - selectEntryCollectionTitle, - getFieldsNames, - selectField, - updateFieldByKey, -} from '../collections'; -import { FILES, FOLDER } from '../../constants/collectionTypes'; - -describe('collections', () => { - it('should handle an empty state', () => { - expect(collections(undefined, {})).toEqual(Map()); - }); - - it('should load the collections from the config', () => { - expect( - collections( - undefined, - configLoaded({ - collections: [ - { - name: 'posts', - folder: '_posts', - fields: [{ name: 'title', widget: 'string' }], - }, - ], - }), - ).toJS(), - ).toEqual({ - posts: { - name: 'posts', - folder: '_posts', - fields: [{ name: 'title', widget: 'string' }], - }, - }); - }); - - it('should maintain config collections order', () => { - const collectionsData = new Array(1000).fill(0).map((_, index) => ({ - name: `collection_${index}`, - folder: `collection_${index}`, - fields: [{ name: 'title', widget: 'string' }], - })); - - const newState = collections( - undefined, - configLoaded({ - collections: collectionsData, - }), - ); - const keyArray = newState.keySeq().toArray(); - expect(keyArray).toEqual(collectionsData.map(({ name }) => name)); - }); - - describe('selectAllowDeletions', () => { - it('should not allow deletions for file collections', () => { - expect( - selectAllowDeletion( - fromJS({ - name: 'pages', - type: FILES, - }), - ), - ).toBe(false); - }); - }); - - describe('selectEntryPath', () => { - it('should return path', () => { - expect( - selectEntryPath( - fromJS({ - type: FOLDER, - folder: 'posts', - }), - 'dir1/dir2/slug', - ), - ).toBe('posts/dir1/dir2/slug.md'); - }); - }); - - describe('selectEntrySlug', () => { - it('should return slug', () => { - expect( - selectEntrySlug( - fromJS({ - type: FOLDER, - folder: 'posts', - }), - 'posts/dir1/dir2/slug.md', - ), - ).toBe('dir1/dir2/slug'); - }); - }); - - describe('selectFieldsMediaFolders', () => { - it('should return empty array for invalid collection', () => { - expect(selectFieldsWithMediaFolders(fromJS({}))).toEqual([]); - }); - - it('should return configs for folder collection', () => { - expect( - selectFieldsWithMediaFolders( - fromJS({ - folder: 'posts', - fields: [ - { - name: 'image', - media_folder: 'image_media_folder', - }, - { - name: 'body', - media_folder: 'body_media_folder', - }, - { - name: 'list_1', - field: { - name: 'list_1_item', - media_folder: 'list_1_item_media_folder', - }, - }, - { - name: 'list_2', - fields: [ - { - name: 'list_2_item', - media_folder: 'list_2_item_media_folder', - }, - ], - }, - { - name: 'list_3', - types: [ - { - name: 'list_3_type', - media_folder: 'list_3_type_media_folder', - }, - ], - }, - ], - }), - ), - ).toEqual([ - fromJS({ - name: 'image', - media_folder: 'image_media_folder', - }), - fromJS({ name: 'body', media_folder: 'body_media_folder' }), - fromJS({ name: 'list_1_item', media_folder: 'list_1_item_media_folder' }), - fromJS({ - name: 'list_2_item', - media_folder: 'list_2_item_media_folder', - }), - fromJS({ - name: 'list_3_type', - media_folder: 'list_3_type_media_folder', - }), - ]); - }); - - it('should return configs for files collection', () => { - expect( - selectFieldsWithMediaFolders( - fromJS({ - files: [ - { - name: 'file1', - fields: [ - { - name: 'image', - media_folder: 'image_media_folder', - }, - ], - }, - { - name: 'file2', - fields: [ - { - name: 'body', - media_folder: 'body_media_folder', - }, - ], - }, - { - name: 'file3', - fields: [ - { - name: 'list_1', - field: { - name: 'list_1_item', - media_folder: 'list_1_item_media_folder', - }, - }, - ], - }, - { - name: 'file4', - fields: [ - { - name: 'list_2', - fields: [ - { - name: 'list_2_item', - media_folder: 'list_2_item_media_folder', - }, - { - name: 'list_3', - types: [ - { - name: 'list_3_type', - media_folder: 'list_3_type_media_folder', - }, - ], - }, - ], - }, - ], - }, - ], - }), - 'file4', - ), - ).toEqual([ - fromJS({ - name: 'list_2_item', - media_folder: 'list_2_item_media_folder', - }), - fromJS({ - name: 'list_3_type', - media_folder: 'list_3_type_media_folder', - }), - ]); - }); - }); - - describe('selectMediaFolders', () => { - const slug = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const config = { slug, media_folder: '/static/img' }; - it('should return fields and collection folders', () => { - expect( - selectMediaFolders( - config, - fromJS({ - folder: 'posts', - media_folder: '{{media_folder}}/general/', - fields: [ - { - name: 'image', - media_folder: '{{media_folder}}/customers/', - }, - { - name: 'list', - types: [{ name: 'widget', media_folder: '{{media_folder}}/widgets' }], - }, - ], - }), - fromJS({ slug: 'name', path: 'src/post/post1.md', data: {} }), - ), - ).toEqual([ - 'static/img/general', - 'static/img/general/customers', - 'static/img/general/widgets', - ]); - }); - - it('should return fields, file and collection folders', () => { - expect( - selectMediaFolders( - config, - fromJS({ - media_folder: '{{media_folder}}/general/', - files: [ - { - name: 'name', - file: 'src/post/post1.md', - media_folder: '{{media_folder}}/customers/', - fields: [ - { - name: 'image', - media_folder: '{{media_folder}}/logos/', - }, - { - name: 'list', - types: [{ name: 'widget', media_folder: '{{media_folder}}/widgets' }], - }, - ], - }, - ], - }), - fromJS({ slug: 'name', path: 'src/post/post1.md', data: {} }), - ), - ).toEqual([ - 'static/img/general', - 'static/img/general/customers', - 'static/img/general/customers/logos', - 'static/img/general/customers/widgets', - ]); - }); - }); - - describe('getFieldsNames', () => { - it('should get flat fields names', () => { - const collection = fromJS({ - fields: [{ name: 'en' }, { name: 'es' }], - }); - expect(getFieldsNames(collection.get('fields').toArray())).toEqual(['en', 'es']); - }); - - it('should get nested fields names', () => { - const collection = fromJS({ - fields: [ - { name: 'en', fields: [{ name: 'title' }, { name: 'body' }] }, - { name: 'es', fields: [{ name: 'title' }, { name: 'body' }] }, - { name: 'it', field: { name: 'title', fields: [{ name: 'subTitle' }] } }, - { - name: 'fr', - fields: [{ name: 'title', widget: 'list', types: [{ name: 'variableType' }] }], - }, - ], - }); - expect(getFieldsNames(collection.get('fields').toArray())).toEqual([ - 'en', - 'es', - 'it', - 'fr', - 'en.title', - 'en.body', - 'es.title', - 'es.body', - 'it.title', - 'it.title.subTitle', - 'fr.title', - 'fr.title.variableType', - ]); - }); - }); - - describe('selectField', () => { - it('should return top field by key', () => { - const collection = fromJS({ - fields: [{ name: 'en' }, { name: 'es' }], - }); - expect(selectField(collection, 'en')).toBe(collection.get('fields').get(0)); - }); - - it('should return nested field by key', () => { - const collection = fromJS({ - fields: [ - { name: 'en', fields: [{ name: 'title' }, { name: 'body' }] }, - { name: 'es', fields: [{ name: 'title' }, { name: 'body' }] }, - { name: 'it', field: { name: 'title', fields: [{ name: 'subTitle' }] } }, - { - name: 'fr', - fields: [{ name: 'title', widget: 'list', types: [{ name: 'variableType' }] }], - }, - ], - }); - - expect(selectField(collection, 'en.title')).toBe( - collection.get('fields').get(0).get('fields').get(0), - ); - - expect(selectField(collection, 'it.title.subTitle')).toBe( - collection.get('fields').get(2).get('field').get('fields').get(0), - ); - - expect(selectField(collection, 'fr.title.variableType')).toBe( - collection.get('fields').get(3).get('fields').get(0).get('types').get(0), - ); - }); - }); - - describe('selectEntryCollectionTitle', () => { - const entry = fromJS({ - data: { title: 'entry title', otherField: 'other field', emptyLinkTitle: '' }, - }); - - it('should return the entry title if set', () => { - const collection = fromJS({ - fields: [{ name: 'title' }, { name: 'otherField' }], - }); - - expect(selectEntryCollectionTitle(collection, entry)).toEqual('entry title'); - }); - - it('should return some other inferreable title if set', () => { - const headlineEntry = fromJS({ - data: { headline: 'entry headline', otherField: 'other field' }, - }); - const collection = fromJS({ - fields: [{ name: 'headline' }, { name: 'otherField' }], - }); - - expect(selectEntryCollectionTitle(collection, headlineEntry)).toEqual('entry headline'); - }); - - it('should return the identifier_field content if defined in collection', () => { - const collection = fromJS({ - identifier_field: 'otherField', - fields: [{ name: 'title' }, { name: 'otherField' }], - }); - - expect(selectEntryCollectionTitle(collection, entry)).toEqual('other field'); - }); - - it('should return the entry title if identifier_field content is not defined in collection', () => { - const collection = fromJS({ - identifier_field: 'missingLinkTitle', - fields: [{ name: 'title' }, { name: 'otherField' }], - }); - - expect(selectEntryCollectionTitle(collection, entry)).toEqual('entry title'); - }); - - it('should return the entry title if identifier_field content is empty', () => { - const collection = fromJS({ - identifier_field: 'emptyLinkTitle', - fields: [{ name: 'title' }, { name: 'otherField' }, { name: 'emptyLinkTitle' }], - }); - - expect(selectEntryCollectionTitle(collection, entry)).toEqual('entry title'); - }); - - it('should return the entry label of a file collection', () => { - const labelEntry = fromJS({ - slug: 'entry-name', - data: { title: 'entry title', otherField: 'other field' }, - }); - const collection = fromJS({ - type: FILES, - files: [ - { - name: 'entry-name', - label: 'entry label', - }, - ], - }); - - expect(selectEntryCollectionTitle(collection, labelEntry)).toEqual('entry label'); - }); - - it('should return a formatted summary before everything else', () => { - const collection = fromJS({ - summary: '{{title}} -- {{otherField}}', - identifier_field: 'otherField', - fields: [{ name: 'title' }, { name: 'otherField' }], - }); - - expect(selectEntryCollectionTitle(collection, entry)).toEqual('entry title -- other field'); - }); - }); - - describe('updateFieldByKey', () => { - it('should update field by key', () => { - const collection = fromJS({ - fields: [ - { name: 'title' }, - { name: 'image' }, - { - name: 'object', - fields: [{ name: 'title' }, { name: 'gallery', fields: [{ name: 'image' }] }], - }, - { name: 'list', field: { name: 'image' } }, - { name: 'body' }, - { name: 'widgetList', types: [{ name: 'widget' }] }, - ], - }); - - function updater(field) { - return field.set('default', 'default'); - } - - expect(updateFieldByKey(collection, 'non-existent', updater)).toBe(collection); - expect(updateFieldByKey(collection, 'title', updater)).toEqual( - fromJS({ - fields: [ - { name: 'title', default: 'default' }, - { name: 'image' }, - { - name: 'object', - fields: [{ name: 'title' }, { name: 'gallery', fields: [{ name: 'image' }] }], - }, - { name: 'list', field: { name: 'image' } }, - { name: 'body' }, - { name: 'widgetList', types: [{ name: 'widget' }] }, - ], - }), - ); - expect(updateFieldByKey(collection, 'object.title', updater)).toEqual( - fromJS({ - fields: [ - { name: 'title' }, - { name: 'image' }, - { - name: 'object', - fields: [ - { name: 'title', default: 'default' }, - { name: 'gallery', fields: [{ name: 'image' }] }, - ], - }, - { name: 'list', field: { name: 'image' } }, - { name: 'body' }, - { name: 'widgetList', types: [{ name: 'widget' }] }, - ], - }), - ); - - expect(updateFieldByKey(collection, 'object.gallery.image', updater)).toEqual( - fromJS({ - fields: [ - { name: 'title' }, - { name: 'image' }, - { - name: 'object', - fields: [ - { name: 'title' }, - { name: 'gallery', fields: [{ name: 'image', default: 'default' }] }, - ], - }, - { name: 'list', field: { name: 'image' } }, - { name: 'body' }, - { name: 'widgetList', types: [{ name: 'widget' }] }, - ], - }), - ); - expect(updateFieldByKey(collection, 'list.image', updater)).toEqual( - fromJS({ - fields: [ - { name: 'title' }, - { name: 'image' }, - { - name: 'object', - fields: [{ name: 'title' }, { name: 'gallery', fields: [{ name: 'image' }] }], - }, - { name: 'list', field: { name: 'image', default: 'default' } }, - { name: 'body' }, - { name: 'widgetList', types: [{ name: 'widget' }] }, - ], - }), - ); - - expect(updateFieldByKey(collection, 'widgetList.widget', updater)).toEqual( - fromJS({ - fields: [ - { name: 'title' }, - { name: 'image' }, - { - name: 'object', - fields: [{ name: 'title' }, { name: 'gallery', fields: [{ name: 'image' }] }], - }, - { name: 'list', field: { name: 'image' } }, - { name: 'body' }, - { name: 'widgetList', types: [{ name: 'widget', default: 'default' }] }, - ], - }), - ); - }); - }); -}); diff --git a/src/reducers/__tests__/config.spec.js b/src/reducers/__tests__/config.spec.js deleted file mode 100644 index dc5112b5..00000000 --- a/src/reducers/__tests__/config.spec.js +++ /dev/null @@ -1,38 +0,0 @@ -import { configLoaded, configLoading, configFailed } from '../../actions/config'; -import config, { selectLocale } from '../config'; - -describe('config', () => { - it('should handle an empty state', () => { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore config reducer doesn't accept empty action - expect(config(undefined, {})).toEqual({ isFetching: true }); - }); - - it('should handle an update', () => { - expect( - config({ isFetching: true }, configLoaded({ locale: 'fr', backend: { name: 'proxy' } })), - ).toEqual({ - locale: 'fr', - backend: { name: 'proxy' }, - isFetching: false, - error: undefined, - }); - }); - - it('should mark the config as loading', () => { - expect(config({ isFetching: false }, configLoading())).toEqual({ isFetching: true }); - }); - - it('should handle an error', () => { - expect( - config({ isFetching: true }, configFailed(new Error('Config could not be loaded'))), - ).toEqual({ - error: 'Error: Config could not be loaded', - isFetching: false, - }); - }); - - it('should default to "en" locale', () => { - expect(selectLocale({})).toEqual('en'); - }); -}); diff --git a/src/reducers/__tests__/entries.spec.js b/src/reducers/__tests__/entries.spec.js deleted file mode 100644 index 45aed7c5..00000000 --- a/src/reducers/__tests__/entries.spec.js +++ /dev/null @@ -1,694 +0,0 @@ -import { OrderedMap, fromJS } from 'immutable'; - -import * as actions from '../../actions/entries'; -import reducer, { - selectMediaFolder, - selectMediaFilePath, - selectMediaFilePublicPath, - selectEntries, -} from '../entries'; - -const initialState = OrderedMap({ - posts: fromJS({ name: 'posts' }), -}); - -describe('entries', () => { - describe('reducer', () => { - it('should mark entries as fetching', () => { - expect(reducer(initialState, actions.entriesLoading(fromJS({ name: 'posts' })))).toEqual( - OrderedMap( - fromJS({ - posts: { name: 'posts' }, - pages: { - posts: { isFetching: true }, - }, - }), - ), - ); - }); - - it('should handle loaded entries', () => { - const entries = [ - { slug: 'a', path: '' }, - { slug: 'b', title: 'B' }, - ]; - expect( - reducer(initialState, actions.entriesLoaded(fromJS({ name: 'posts' }), entries, 0)), - ).toEqual( - OrderedMap( - fromJS({ - posts: { name: 'posts' }, - entities: { - 'posts.a': { slug: 'a', path: '', isFetching: false }, - 'posts.b': { slug: 'b', title: 'B', isFetching: false }, - }, - pages: { - posts: { - page: 0, - ids: ['a', 'b'], - }, - }, - }), - ), - ); - }); - - it('should handle loaded entry', () => { - const entry = { slug: 'a', path: '' }; - expect(reducer(initialState, actions.entryLoaded(fromJS({ name: 'posts' }), entry))).toEqual( - OrderedMap( - fromJS({ - posts: { name: 'posts' }, - entities: { - 'posts.a': { slug: 'a', path: '' }, - }, - pages: { - posts: { - ids: ['a'], - }, - }, - }), - ), - ); - }); - }); - - describe('selectMediaFolder', () => { - it("should return global media folder when collection doesn't specify media_folder", () => { - expect( - selectMediaFolder( - { media_folder: 'static/media' }, - fromJS({ name: 'posts' }), - undefined, - undefined, - ), - ).toEqual('static/media'); - }); - - it('should return draft media folder when collection specifies media_folder and entry is undefined', () => { - expect( - selectMediaFolder( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', folder: 'posts', media_folder: '' }), - undefined, - undefined, - ), - ).toEqual('posts/DRAFT_MEDIA_FILES'); - }); - - it('should return relative media folder when collection specifies media_folder and entry path is not null', () => { - expect( - selectMediaFolder( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', folder: 'posts', media_folder: '' }), - fromJS({ path: 'posts/title/index.md' }), - undefined, - ), - ).toEqual('posts/title'); - }); - - it('should resolve collection relative media folder', () => { - expect( - selectMediaFolder( - fromJS({ media_folder: 'static/media' }), - fromJS({ name: 'posts', folder: 'posts', media_folder: '../' }), - fromJS({ path: 'posts/title/index.md' }), - undefined, - ), - ).toEqual('posts'); - }); - - it('should resolve field relative media folder', () => { - const field = fromJS({ media_folder: '' }); - expect( - selectMediaFolder( - { media_folder: '/static/img' }, - fromJS({ - name: 'other', - folder: 'other', - fields: [field], - media_folder: '../', - }), - fromJS({ path: 'src/other/other.md', data: {} }), - field, - ), - ).toEqual('src/other'); - }); - - it('should return collection absolute media folder without leading slash', () => { - expect( - selectMediaFolder( - { media_folder: '/static/Images' }, - fromJS({ - name: 'getting-started', - folder: 'src/docs/getting-started', - media_folder: '/static/images/docs/getting-started', - }), - fromJS({}), - undefined, - ), - ).toEqual('static/images/docs/getting-started'); - }); - - it('should compile relative media folder template', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - path: 'content/en/hosting-and-deployment/deployment-with-nanobox.md', - data: { title: 'Deployment With NanoBox', category: 'Hosting And Deployment' }, - }); - const collection = fromJS({ - name: 'posts', - folder: 'content', - media_folder: '../../../{{media_folder}}/{{category}}/{{slug}}', - fields: [{ name: 'title', widget: 'string' }], - }); - - expect( - selectMediaFolder( - { media_folder: 'static/media', slug: slugConfig }, - collection, - entry, - undefined, - ), - ).toEqual('static/media/hosting-and-deployment/deployment-with-nanobox'); - }); - - it('should compile absolute media folder template', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - data: { title: 'Overview' }, - }); - const collection = fromJS({ - name: 'extending', - folder: 'src/docs/extending', - media_folder: '{{media_folder}}/docs/extending', - fields: [{ name: 'title', widget: 'string' }], - }); - - expect( - selectMediaFolder( - { media_folder: '/static/images', slug: slugConfig }, - collection, - entry, - undefined, - ), - ).toEqual('static/images/docs/extending'); - }); - - it('should compile field media folder template', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - path: 'content/en/hosting-and-deployment/deployment-with-nanobox.md', - data: { title: 'Deployment With NanoBox', category: 'Hosting And Deployment' }, - }); - const collection = fromJS({ - name: 'posts', - folder: 'content', - fields: [ - { - name: 'title', - widget: 'string', - media_folder: '../../../{{media_folder}}/{{category}}/{{slug}}', - }, - ], - }); - - expect( - selectMediaFolder( - { media_folder: 'static/media', slug: slugConfig }, - collection, - entry, - collection.get('fields').get(0), - ), - ).toEqual('static/media/hosting-and-deployment/deployment-with-nanobox'); - }); - - it('should handle double slashes', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - path: 'content/en/hosting-and-deployment/deployment-with-nanobox.md', - data: { title: 'Deployment With NanoBox', category: 'Hosting And Deployment' }, - }); - - const collection = fromJS({ - name: 'posts', - folder: 'content', - media_folder: '{{media_folder}}/blog', - fields: [{ name: 'title', widget: 'string' }], - }); - - expect( - selectMediaFolder( - { media_folder: '/static/img/', slug: slugConfig }, - collection, - entry, - undefined, - ), - ).toEqual('static/img/blog'); - - expect( - selectMediaFolder( - { media_folder: 'static/img/', slug: slugConfig }, - collection, - entry, - undefined, - ), - ).toEqual('content/en/hosting-and-deployment/static/img/blog'); - }); - - it('should handle file media_folder', () => { - expect( - selectMediaFolder( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', files: [{ name: 'index', media_folder: '/static/images/' }] }), - fromJS({ path: 'posts/title/index.md', slug: 'index' }), - undefined, - ), - ).toBe('static/images'); - }); - - it('should cascade media_folders', () => { - const mainImageField = fromJS({ name: 'main_image' }); - const logoField = fromJS({ name: 'logo', media_folder: '{{media_folder}}/logos/' }); - const nestedField3 = fromJS({ name: 'nested', media_folder: '{{media_folder}}/nested3/' }); - const nestedField2 = fromJS({ - name: 'nested', - media_folder: '{{media_folder}}/nested2/', - types: [nestedField3], - }); - const nestedField1 = fromJS({ - name: 'nested', - media_folder: '{{media_folder}}/nested1/', - fields: [nestedField2], - }); - - const args = [ - { media_folder: '/static/img' }, - fromJS({ - name: 'general', - media_folder: '{{media_folder}}/general/', - files: [ - { - name: 'customers', - media_folder: '{{media_folder}}/customers/', - fields: [ - mainImageField, - logoField, - { media_folder: '{{media_folder}}/nested', field: nestedField1 }, - ], - }, - ], - }), - fromJS({ path: 'src/customers/customers.md', slug: 'customers', data: { title: 'title' } }), - ]; - - expect(selectMediaFolder(...args, mainImageField)).toBe('static/img/general/customers'); - expect(selectMediaFolder(...args, logoField)).toBe('static/img/general/customers/logos'); - expect(selectMediaFolder(...args, nestedField1)).toBe( - 'static/img/general/customers/nested/nested1', - ); - expect(selectMediaFolder(...args, nestedField2)).toBe( - 'static/img/general/customers/nested/nested1/nested2', - ); - expect(selectMediaFolder(...args, nestedField3)).toBe( - 'static/img/general/customers/nested/nested1/nested2/nested3', - ); - }); - }); - - describe('selectMediaFilePath', () => { - it('should return absolute URL as is', () => { - expect(selectMediaFilePath(null, null, null, 'https://www.netlify.com/image.png')).toBe( - 'https://www.netlify.com/image.png', - ); - }); - - it('should resolve path from global media folder for collection with no media folder', () => { - expect( - selectMediaFilePath( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', folder: 'posts' }), - undefined, - 'image.png', - undefined, - ), - ).toBe('static/media/image.png'); - }); - - it('should resolve path from collection media folder for collection with media folder', () => { - expect( - selectMediaFilePath( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', folder: 'posts', media_folder: '' }), - undefined, - 'image.png', - undefined, - ), - ).toBe('posts/DRAFT_MEDIA_FILES/image.png'); - }); - - it('should handle relative media_folder', () => { - expect( - selectMediaFilePath( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', folder: 'posts', media_folder: '../../static/media/' }), - fromJS({ path: 'posts/title/index.md' }), - 'image.png', - undefined, - ), - ).toBe('static/media/image.png'); - }); - - it('should handle field media_folder', () => { - const field = fromJS({ media_folder: '../../static/media/' }); - expect( - selectMediaFilePath( - { media_folder: 'static/media' }, - fromJS({ name: 'posts', folder: 'posts', fields: [field] }), - fromJS({ path: 'posts/title/index.md' }), - 'image.png', - field, - ), - ).toBe('static/media/image.png'); - }); - }); - - describe('selectMediaFilePublicPath', () => { - it('should return absolute URL as is', () => { - expect(selectMediaFilePublicPath(null, null, 'https://www.netlify.com/image.png')).toBe( - 'https://www.netlify.com/image.png', - ); - }); - - it('should resolve path from public folder for collection with no media folder', () => { - expect( - selectMediaFilePublicPath( - { public_folder: '/media' }, - null, - '/media/image.png', - undefined, - undefined, - ), - ).toBe('/media/image.png'); - }); - - it('should resolve path from collection public folder for collection with public folder', () => { - expect( - selectMediaFilePublicPath( - { public_folder: '/media' }, - fromJS({ name: 'posts', folder: 'posts', public_folder: '' }), - 'image.png', - undefined, - undefined, - ), - ).toBe('image.png'); - }); - - it('should handle relative public_folder', () => { - expect( - selectMediaFilePublicPath( - { public_folder: '/media' }, - fromJS({ name: 'posts', folder: 'posts', public_folder: '../../static/media/' }), - 'image.png', - undefined, - undefined, - ), - ).toBe('../../static/media/image.png'); - }); - - it('should handle absolute public_folder', () => { - expect( - selectMediaFilePublicPath( - { public_folder: 'https://www.netlify.com/media' }, - fromJS({ - name: 'posts', - folder: 'posts', - public_folder: 'https://www.netlify.com/media', - }), - 'image.png', - undefined, - undefined, - ), - ).toBe('https://www.netlify.com/media/image.png'); - }); - - it('should compile collection public folder template', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - path: 'content/en/hosting-and-deployment/deployment-with-nanobox.md', - data: { title: 'Deployment With NanoBox', category: 'Hosting And Deployment' }, - }); - const collection = fromJS({ - name: 'posts', - folder: 'content', - public_folder: '/{{public_folder}}/{{category}}/{{slug}}', - fields: [{ name: 'title', widget: 'string' }], - }); - - expect( - selectMediaFilePublicPath( - { public_folder: 'static/media', slug: slugConfig }, - collection, - 'image.png', - entry, - undefined, - ), - ).toEqual('/static/media/hosting-and-deployment/deployment-with-nanobox/image.png'); - }); - - it('should compile field public folder template', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - path: 'content/en/hosting-and-deployment/deployment-with-nanobox.md', - data: { title: 'Deployment With NanoBox', category: 'Hosting And Deployment' }, - }); - - const field = fromJS({ - name: 'title', - widget: 'string', - public_folder: '/{{public_folder}}/{{category}}/{{slug}}', - }); - const collection = fromJS({ - name: 'posts', - folder: 'content', - fields: [field], - }); - - expect( - selectMediaFilePublicPath( - { public_folder: 'static/media', slug: slugConfig }, - collection, - 'image.png', - entry, - field, - ), - ).toEqual('/static/media/hosting-and-deployment/deployment-with-nanobox/image.png'); - }); - - it('should handle double slashes', () => { - const slugConfig = { - encoding: 'unicode', - clean_accents: false, - sanitize_replacement: '-', - }; - - const entry = fromJS({ - path: 'content/en/hosting-and-deployment/deployment-with-nanobox.md', - data: { title: 'Deployment With NanoBox', category: 'Hosting And Deployment' }, - }); - - const field = fromJS({ - name: 'title', - widget: 'string', - public_folder: '/{{public_folder}}/{{category}}/{{slug}}', - }); - const collection = fromJS({ - name: 'posts', - folder: 'content', - fields: [field], - }); - - expect( - selectMediaFilePublicPath( - { public_folder: 'static/media/', slug: slugConfig }, - collection, - 'image.png', - entry, - field, - ), - ).toEqual('/static/media/hosting-and-deployment/deployment-with-nanobox/image.png'); - }); - - it('should handle file public_folder', () => { - const entry = fromJS({ - path: 'src/posts/index.md', - slug: 'index', - }); - - const collection = fromJS({ - name: 'posts', - files: [ - { - name: 'index', - public_folder: '/images', - fields: [{ name: 'title', widget: 'string' }], - }, - ], - }); - - expect( - selectMediaFilePublicPath( - { public_folder: 'static/media/' }, - collection, - 'image.png', - entry, - undefined, - ), - ).toBe('/images/image.png'); - }); - }); - - describe('selectEntries', () => { - it('should return all entries', () => { - const state = fromJS({ - entities: { - 'posts.1': { slug: '1' }, - 'posts.2': { slug: '2' }, - 'posts.3': { slug: '3' }, - 'posts.4': { slug: '4' }, - }, - pages: { posts: { ids: ['1', '2', '3', '4'] } }, - }); - const collection = fromJS({ - name: 'posts', - }); - - expect(selectEntries(state, collection)).toEqual( - fromJS([{ slug: '1' }, { slug: '2' }, { slug: '3' }, { slug: '4' }]), - ); - }); - }); - - it('should return sorted entries entries by field', () => { - const state = fromJS({ - entities: { - 'posts.1': { slug: '1', data: { title: '1' } }, - 'posts.2': { slug: '2', data: { title: '2' } }, - 'posts.3': { slug: '3', data: { title: '3' } }, - 'posts.4': { slug: '4', data: { title: '4' } }, - }, - pages: { posts: { ids: ['1', '2', '3', '4'] } }, - sort: { posts: { title: { key: 'title', direction: 'Descending' } } }, - }); - const collection = fromJS({ - name: 'posts', - }); - - expect(selectEntries(state, collection)).toEqual( - fromJS([ - { slug: '4', data: { title: '4' } }, - { slug: '3', data: { title: '3' } }, - { slug: '2', data: { title: '2' } }, - { slug: '1', data: { title: '1' } }, - ]), - ); - }); - - it('should return sorted entries entries by nested field', () => { - const state = fromJS({ - entities: { - 'posts.1': { slug: '1', data: { title: '1', nested: { date: 4 } } }, - 'posts.2': { slug: '2', data: { title: '2', nested: { date: 3 } } }, - 'posts.3': { slug: '3', data: { title: '3', nested: { date: 2 } } }, - 'posts.4': { slug: '4', data: { title: '4', nested: { date: 1 } } }, - }, - pages: { posts: { ids: ['1', '2', '3', '4'] } }, - sort: { posts: { title: { key: 'nested.date', direction: 'Ascending' } } }, - }); - const collection = fromJS({ - name: 'posts', - }); - - expect(selectEntries(state, collection)).toEqual( - fromJS([ - { slug: '4', data: { title: '4', nested: { date: 1 } } }, - { slug: '3', data: { title: '3', nested: { date: 2 } } }, - { slug: '2', data: { title: '2', nested: { date: 3 } } }, - { slug: '1', data: { title: '1', nested: { date: 4 } } }, - ]), - ); - }); - - it('should return filtered entries entries by field', () => { - const state = fromJS({ - entities: { - 'posts.1': { slug: '1', data: { title: '1' } }, - 'posts.2': { slug: '2', data: { title: '2' } }, - 'posts.3': { slug: '3', data: { title: '3' } }, - 'posts.4': { slug: '4', data: { title: '4' } }, - }, - pages: { posts: { ids: ['1', '2', '3', '4'] } }, - filter: { posts: { title__1: { field: 'title', pattern: '4', active: true } } }, - }); - const collection = fromJS({ - name: 'posts', - }); - - expect(selectEntries(state, collection)).toEqual(fromJS([{ slug: '4', data: { title: '4' } }])); - }); - - it('should return filtered entries entries by nested field', () => { - const state = fromJS({ - entities: { - 'posts.1': { slug: '1', data: { title: '1', nested: { draft: true } } }, - 'posts.2': { slug: '2', data: { title: '2', nested: { draft: true } } }, - 'posts.3': { slug: '3', data: { title: '3', nested: { draft: false } } }, - 'posts.4': { slug: '4', data: { title: '4', nested: { draft: false } } }, - }, - pages: { posts: { ids: ['1', '2', '3', '4'] } }, - filter: { - posts: { 'nested.draft__false': { field: 'nested.draft', pattern: false, active: true } }, - }, - }); - const collection = fromJS({ - name: 'posts', - }); - - expect(selectEntries(state, collection)).toEqual( - fromJS([ - { slug: '3', data: { title: '3', nested: { draft: false } } }, - { slug: '4', data: { title: '4', nested: { draft: false } } }, - ]), - ); - }); -}); diff --git a/src/reducers/__tests__/entryDraft.spec.js b/src/reducers/__tests__/entryDraft.spec.js deleted file mode 100644 index 15dd8dda..00000000 --- a/src/reducers/__tests__/entryDraft.spec.js +++ /dev/null @@ -1,198 +0,0 @@ -import { Map, fromJS } from 'immutable'; - -import * as actions from '../../actions/entries'; -import reducer from '../entryDraft'; - -jest.mock('uuid/v4', () => jest.fn(() => '1')); - -const initialState = Map({ - entry: Map(), - fieldsMetaData: Map(), - fieldsErrors: Map(), - hasChanged: false, - key: '', -}); - -const entry = { - collection: 'posts', - slug: 'slug', - path: 'content/blog/art-and-wine-festival.md', - partial: false, - raw: '', - data: {}, - metaData: null, -}; - -describe('entryDraft reducer', () => { - describe('DRAFT_CREATE_FROM_ENTRY', () => { - it('should create draft from the entry', () => { - const state = reducer(initialState, actions.createDraftFromEntry(fromJS(entry))); - expect(state).toEqual( - fromJS({ - entry: { - ...entry, - newRecord: false, - }, - fieldsMetaData: Map(), - fieldsErrors: Map(), - hasChanged: false, - key: '1', - }), - ); - }); - }); - - describe('DRAFT_CREATE_EMPTY', () => { - it('should create a new draft ', () => { - const state = reducer(initialState, actions.emptyDraftCreated(fromJS(entry))); - expect(state).toEqual( - fromJS({ - entry: { - ...entry, - newRecord: true, - }, - fieldsMetaData: Map(), - fieldsErrors: Map(), - hasChanged: false, - key: '1', - }), - ); - }); - }); - - describe('DRAFT_DISCARD', () => { - it('should discard the draft and return initial state', () => { - expect(reducer(initialState, actions.discardDraft())).toEqual(initialState); - }); - }); - - describe('persisting', () => { - let initialState; - - beforeEach(() => { - initialState = fromJS({ - entities: { - 'posts.slug': { - collection: 'posts', - slug: 'slug', - path: 'content/blog/art-and-wine-festival.md', - partial: false, - raw: '', - data: {}, - metaData: null, - }, - }, - pages: {}, - }); - }); - - it('should handle persisting request', () => { - const newState = reducer( - initialState, - actions.entryPersisting(Map({ name: 'posts' }), Map({ slug: 'slug' })), - ); - expect(newState.getIn(['entry', 'isPersisting'])).toBe(true); - }); - - it('should handle persisting success', () => { - let newState = reducer( - initialState, - actions.entryPersisting(Map({ name: 'posts' }), Map({ slug: 'slug' })), - ); - newState = reducer( - newState, - actions.entryPersisted(Map({ name: 'posts' }), Map({ slug: 'slug' })), - ); - expect(newState.getIn(['entry', 'isPersisting'])).toBeUndefined(); - }); - - it('should handle persisting error', () => { - let newState = reducer( - initialState, - actions.entryPersisting(Map({ name: 'posts' }), Map({ slug: 'slug' })), - ); - newState = reducer( - newState, - actions.entryPersistFail(Map({ name: 'posts' }), Map({ slug: 'slug' }), 'Error message'), - ); - expect(newState.getIn(['entry', 'isPersisting'])).toBeUndefined(); - }); - }); - - describe('REMOVE_DRAFT_ENTRY_MEDIA_FILE', () => { - it('should remove a media file', () => { - const actualState = reducer( - initialState.setIn(['entry', 'mediaFiles'], fromJS([{ id: '1' }, { id: '2' }])), - actions.removeDraftEntryMediaFile({ id: '1' }), - ); - - expect(actualState.toJS()).toEqual({ - entry: { mediaFiles: [{ id: '2' }] }, - fieldsMetaData: {}, - fieldsErrors: {}, - hasChanged: true, - key: '', - }); - }); - }); - - describe('ADD_DRAFT_ENTRY_MEDIA_FILE', () => { - it('should overwrite an existing media file', () => { - const actualState = reducer( - initialState.setIn(['entry', 'mediaFiles'], fromJS([{ id: '1', name: 'old' }])), - actions.addDraftEntryMediaFile({ id: '1', name: 'new' }), - ); - - expect(actualState.toJS()).toEqual({ - entry: { mediaFiles: [{ id: '1', name: 'new' }] }, - fieldsMetaData: {}, - fieldsErrors: {}, - hasChanged: true, - key: '', - }); - }); - }); - - describe('DRAFT_CREATE_FROM_LOCAL_BACKUP', () => { - it('should create draft from local backup', () => { - const localBackup = Map({ entry: fromJS({ ...entry, mediaFiles: [{ id: '1' }] }) }); - - const actualState = reducer(initialState.set('localBackup', localBackup), { - type: actions.DRAFT_CREATE_FROM_LOCAL_BACKUP, - }); - expect(actualState.toJS()).toEqual({ - entry: { - ...entry, - mediaFiles: [{ id: '1' }], - newRecord: false, - }, - fieldsMetaData: {}, - fieldsErrors: {}, - hasChanged: true, - key: '1', - }); - }); - }); - - describe('DRAFT_LOCAL_BACKUP_RETRIEVED', () => { - it('should set local backup', () => { - const mediaFiles = [{ id: '1' }]; - - const actualState = reducer( - initialState, - actions.localBackupRetrieved({ ...entry, mediaFiles }), - ); - - expect(actualState.toJS()).toEqual({ - entry: {}, - fieldsMetaData: {}, - fieldsErrors: {}, - hasChanged: false, - localBackup: { - entry: { ...entry, mediaFiles: [{ id: '1' }] }, - }, - key: '', - }); - }); - }); -}); diff --git a/src/reducers/__tests__/globalUI.js b/src/reducers/__tests__/globalUI.js deleted file mode 100644 index 6d200821..00000000 --- a/src/reducers/__tests__/globalUI.js +++ /dev/null @@ -1,43 +0,0 @@ -import { USE_OPEN_AUTHORING } from '../../actions/auth'; -import { - DEPLOY_PREVIEW_REQUEST, - DEPLOY_PREVIEW_SUCCESS, - DEPLOY_PREVIEW_FAILURE, -} from '../../actions/deploys'; -import { ENTRY_REQUEST, ENTRY_SUCCESS, ENTRY_FAILURE } from '../../actions/entries'; -import reducer from '../globalUI'; - -describe('globalUI', () => { - it('should set isFetching to true on entry request', () => { - expect(reducer({ isFetching: false }, { type: ENTRY_REQUEST })).toEqual({ isFetching: true }); - }); - - it('should set isFetching to false on entry success', () => { - expect(reducer({ isFetching: true }, { type: ENTRY_SUCCESS })).toEqual({ isFetching: false }); - }); - - it('should set isFetching to false on entry failure', () => { - expect(reducer({ isFetching: true }, { type: ENTRY_FAILURE })).toEqual({ isFetching: false }); - }); - - it('should not change state on deploy preview request', () => { - const state = { isFetching: false }; - expect(reducer(state, { type: DEPLOY_PREVIEW_REQUEST })).toBe(state); - }); - - it('should not change state on deploy preview success', () => { - const state = { isFetching: true }; - expect(reducer(state, { type: DEPLOY_PREVIEW_SUCCESS })).toBe(state); - }); - - it('should not change state on deploy preview failure', () => { - const state = { isFetching: true }; - expect(reducer(state, { type: DEPLOY_PREVIEW_FAILURE })).toBe(state); - }); - - it('should set useOpenAuthoring to true on USE_OPEN_AUTHORING', () => { - expect(reducer({ useOpenAuthoring: false }, { type: USE_OPEN_AUTHORING })).toEqual({ - useOpenAuthoring: true, - }); - }); -}); diff --git a/src/reducers/__tests__/integrations.spec.ts b/src/reducers/__tests__/integrations.spec.ts deleted file mode 100644 index 3a86f28e..00000000 --- a/src/reducers/__tests__/integrations.spec.ts +++ /dev/null @@ -1,76 +0,0 @@ -import integrations from '../integrations'; -import { CONFIG_SUCCESS } from '../../actions/config'; -import { FOLDER } from '../../constants/collectionTypes'; - -import type { ConfigAction } from '../../actions/config'; - -describe('integrations', () => { - it('should return default state when no integrations', () => { - const result = integrations(null, { - type: CONFIG_SUCCESS, - payload: { integrations: [] }, - } as ConfigAction); - expect(result && result.toJS()).toEqual({ - providers: {}, - hooks: {}, - }); - }); - - it('should return hooks and providers map when has integrations', () => { - const result = integrations(null, { - type: CONFIG_SUCCESS, - payload: { - integrations: [ - { - hooks: ['listEntries'], - collections: '*', - provider: 'algolia', - applicationID: 'applicationID', - apiKey: 'apiKey', - }, - { - hooks: ['listEntries'], - collections: ['posts'], - provider: 'algolia', - applicationID: 'applicationID', - apiKey: 'apiKey', - }, - { - hooks: ['assetStore'], - provider: 'assetStore', - getSignedFormURL: 'https://asset.store.com/signedUrl', - }, - ], - collections: [ - { name: 'posts', label: 'Posts', type: FOLDER }, - { name: 'pages', label: 'Pages', type: FOLDER }, - { name: 'faq', label: 'FAQ', type: FOLDER }, - ], - }, - } as ConfigAction); - - expect(result && result.toJS()).toEqual({ - providers: { - algolia: { - applicationID: 'applicationID', - apiKey: 'apiKey', - }, - assetStore: { - getSignedFormURL: 'https://asset.store.com/signedUrl', - }, - }, - hooks: { - posts: { - listEntries: 'algolia', - }, - pages: { - listEntries: 'algolia', - }, - faq: { - listEntries: 'algolia', - }, - assetStore: 'assetStore', - }, - }); - }); -}); diff --git a/src/reducers/__tests__/mediaLibrary.spec.js b/src/reducers/__tests__/mediaLibrary.spec.js deleted file mode 100644 index 628f0d16..00000000 --- a/src/reducers/__tests__/mediaLibrary.spec.js +++ /dev/null @@ -1,154 +0,0 @@ -import { Map, fromJS } from 'immutable'; - -import { mediaDeleted } from '../../actions/mediaLibrary'; -import mediaLibrary, { - selectMediaFiles, - selectMediaFileByPath, - selectMediaDisplayURL, -} from '../mediaLibrary'; - -jest.mock('uuid/v4'); -jest.mock('../entries'); -jest.mock('../'); - -describe('mediaLibrary', () => { - it('should remove media file by key', () => { - expect( - mediaLibrary( - Map({ - files: [{ key: 'key1' }, { key: 'key2' }], - }), - mediaDeleted({ key: 'key1' }), - ), - ).toEqual( - Map({ - isDeleting: false, - files: [{ key: 'key2' }], - }), - ); - }); - - it('should remove media file by id', () => { - expect( - mediaLibrary( - Map({ - files: [{ id: 'id1' }, { id: 'id2' }], - }), - mediaDeleted({ id: 'id1' }), - ), - ).toEqual( - Map({ - isDeleting: false, - files: [{ id: 'id2' }], - }), - ); - }); - - it('should select draft media files from field when editing a draft', () => { - const { selectEditingDraft, selectMediaFolder } = require('../../reducers/entries'); - - selectEditingDraft.mockReturnValue(true); - selectMediaFolder.mockReturnValue('/static/images/posts/logos'); - - const imageField = fromJS({ name: 'image' }); - const collection = fromJS({ fields: [imageField] }); - const entry = fromJS({ - collection: 'posts', - mediaFiles: [ - { id: 1, path: '/static/images/posts/logos/logo.png' }, - { id: 2, path: '/static/images/posts/general/image.png' }, - { id: 3, path: '/static/images/posts/index.png' }, - ], - data: {}, - }); - const state = { - config: {}, - collections: fromJS({ posts: collection }), - entryDraft: fromJS({ - entry, - }), - }; - - expect(selectMediaFiles(state, imageField)).toEqual([ - { id: 1, key: 1, path: '/static/images/posts/logos/logo.png' }, - ]); - - expect(selectMediaFolder).toHaveBeenCalledWith(state.config, collection, entry, imageField); - }); - - it('should select draft media files from collection when editing a draft', () => { - const { selectEditingDraft, selectMediaFolder } = require('../../reducers/entries'); - - selectEditingDraft.mockReturnValue(true); - selectMediaFolder.mockReturnValue('/static/images/posts'); - - const imageField = fromJS({ name: 'image' }); - const collection = fromJS({ fields: [imageField] }); - const entry = fromJS({ - collection: 'posts', - mediaFiles: [ - { id: 1, path: '/static/images/posts/logos/logo.png' }, - { id: 2, path: '/static/images/posts/general/image.png' }, - { id: 3, path: '/static/images/posts/index.png' }, - ], - data: {}, - }); - const state = { - config: {}, - collections: fromJS({ posts: collection }), - entryDraft: fromJS({ - entry, - }), - }; - - expect(selectMediaFiles(state, imageField)).toEqual([ - { id: 3, key: 3, path: '/static/images/posts/index.png' }, - ]); - - expect(selectMediaFolder).toHaveBeenCalledWith(state.config, collection, entry, imageField); - }); - - it('should select global media files when not editing a draft', () => { - const { selectEditingDraft } = require('../../reducers/entries'); - - selectEditingDraft.mockReturnValue(false); - - const state = { - mediaLibrary: Map({ files: [{ id: 1 }] }), - }; - - expect(selectMediaFiles(state)).toEqual([{ id: 1 }]); - }); - - it('should select global media files when not using asset store integration', () => { - const { selectIntegration } = require('../../reducers'); - - selectIntegration.mockReturnValue({}); - - const state = { - mediaLibrary: Map({ files: [{ id: 1 }] }), - }; - - expect(selectMediaFiles(state)).toEqual([{ id: 1 }]); - }); - - it('should return media file by path', () => { - const { selectEditingDraft } = require('../../reducers/entries'); - - selectEditingDraft.mockReturnValue(false); - - const state = { - mediaLibrary: Map({ files: [{ id: 1, path: 'path' }] }), - }; - - expect(selectMediaFileByPath(state, 'path')).toEqual({ id: 1, path: 'path' }); - }); - - it('should return media display URL state', () => { - const state = { - mediaLibrary: fromJS({ displayURLs: { id: { url: 'url' } } }), - }; - - expect(selectMediaDisplayURL(state, 'id')).toEqual(Map({ url: 'url' })); - }); -}); diff --git a/src/reducers/__tests__/medias.spec.ts b/src/reducers/__tests__/medias.spec.ts deleted file mode 100644 index 8eb40d6b..00000000 --- a/src/reducers/__tests__/medias.spec.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { - addAssets, - addAsset, - removeAsset, - loadAssetRequest, - loadAssetSuccess, - loadAssetFailure, -} from '../../actions/media'; -import reducer from '../medias'; -import { createAssetProxy } from '../../valueObjects/AssetProxy'; - -describe('medias', () => { - const asset = createAssetProxy({ url: 'url', path: 'path' }); - - it('should add assets', () => { - expect(reducer({}, addAssets([asset]))).toEqual({ - path: { asset, isLoading: false, error: null }, - }); - }); - - it('should add asset', () => { - expect(reducer({}, addAsset(asset))).toEqual({ - path: { asset, isLoading: false, error: null }, - }); - }); - - it('should remove asset', () => { - expect( - reducer({ [asset.path]: { asset, isLoading: false, error: null } }, removeAsset(asset.path)), - ).toEqual({}); - }); - - it('should mark asset as loading', () => { - expect(reducer({}, loadAssetRequest(asset.path))).toEqual({ path: { isLoading: true } }); - }); - - it('should mark asset as not loading', () => { - expect(reducer({}, loadAssetSuccess(asset.path))).toEqual({ - path: { isLoading: false, error: null }, - }); - }); - - it('should set loading error', () => { - const error = new Error('some error'); - expect(reducer({}, loadAssetFailure(asset.path, error))).toEqual({ - path: { isLoading: false, error }, - }); - }); -}); diff --git a/src/routing/__tests__/history.spec.ts b/src/routing/__tests__/history.spec.ts deleted file mode 100644 index 7caf6756..00000000 --- a/src/routing/__tests__/history.spec.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { createHashHistory } from 'history'; -import { mocked } from 'ts-jest/utils'; - -import type { History } from 'history'; - -jest.mock('history'); - -const history = { push: jest.fn(), replace: jest.fn() } as unknown as History; -const mockedCreateHashHistory = mocked(createHashHistory); -mockedCreateHashHistory.mockReturnValue(history); - -describe('history', () => { - beforeEach(() => { - jest.clearAllMocks(); - }); - - describe('navigateToCollection', () => { - it('should push route', () => { - // eslint-disable-next-line @typescript-eslint/no-var-requires - const { navigateToCollection } = require('../history'); - - navigateToCollection('posts'); - expect(history.push).toHaveBeenCalledTimes(1); - expect(history.push).toHaveBeenCalledWith('/collections/posts'); - }); - }); - - describe('navigateToNewEntry', () => { - it('should replace route', () => { - // eslint-disable-next-line @typescript-eslint/no-var-requires - const { navigateToNewEntry } = require('../history'); - - navigateToNewEntry('posts'); - expect(history.replace).toHaveBeenCalledTimes(1); - expect(history.replace).toHaveBeenCalledWith('/collections/posts/new'); - }); - }); - - describe('navigateToEntry', () => { - it('should replace route', () => { - // eslint-disable-next-line @typescript-eslint/no-var-requires - const { navigateToEntry } = require('../history'); - - navigateToEntry('posts', 'index'); - expect(history.replace).toHaveBeenCalledTimes(1); - expect(history.replace).toHaveBeenCalledWith('/collections/posts/entries/index'); - }); - }); -}); diff --git a/webpack.config-old.js b/webpack.config-old.js deleted file mode 100644 index a67c0f91..00000000 --- a/webpack.config-old.js +++ /dev/null @@ -1,129 +0,0 @@ -const webpack = require('webpack'); -const path = require('path'); -const FriendlyErrorsWebpackPlugin = require('friendly-errors-webpack-plugin'); -const { flatMap } = require('lodash'); - -const isProduction = process.env.NODE_ENV === 'production'; -const isTest = process.env.NODE_ENV === 'test'; - -const pkg = require('./package.json'); - -const devServerPort = parseInt(process.env.SIMPLE_CMS_DEV_SERVER_PORT || `${8080}`); - -function moduleNameToPath(libName) { - return path.resolve(__dirname, 'node_modules', libName); -} - -function rules() { - return { - js: () => ({ - test: /\.(ts|js)x?$/, - exclude: /node_modules/, - use: { - loader: 'babel-loader', - options: { - rootMode: 'upward', - }, - }, - }), - css: () => [ - { - test: /\.css$/, - include: ['ol', 'react-datetime', 'codemirror'].map(moduleNameToPath), - use: ['to-string-loader', 'css-loader'], - }, - ], - svg: () => ({ - test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, - exclude: [/node_modules/], - use: [ - { - loader: 'babel-loader', - options: { - rootMode: 'upward', - }, - }, - { - loader: 'react-svg-loader', - options: { - jsx: true, // true outputs JSX tags - }, - }, - ], - }), - }; -} - -function plugins() { - return { - ignoreEsprima: () => new webpack.IgnorePlugin(/^esprima$/, /js-yaml/), - ignoreMomentOptionalDeps: () => new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/) - }; -} - -function stats() { - if (isProduction) { - return { - builtAt: false, - chunks: false, - colors: true, - entrypoints: false, - errorDetails: false, - hash: false, - modules: false, - timings: false, - version: false, - warnings: false, - }; - } - return { - all: false, - }; -} - -module.exports = { - context: process.cwd(), - mode: isProduction ? 'production' : 'development', - entry: './src', - output: { - path: path.resolve(process.cwd(), 'dist'), - filename: `simple-cms-core.js`, - library: 'SimpleCmsCore', - libraryTarget: 'umd', - libraryExport: 'SimpleCmsCore', - umdNamedDefine: true, - globalObject: 'window', - }, - module: { - rules: flatMap(Object.values(rules()), rule => rule()), - }, - resolve: { - extensions: ['.ts', '.tsx', '.js', '.jsx', '.json'], - alias: { - moment$: 'moment/moment.js', - 'react-dom': '@hot-loader/react-dom', - }, - }, - devtool: isTest ? '' : 'source-map', - target: 'web', - stats: stats(), - plugins: [ - ...Object.values(plugins()).map(plugin => plugin()), - new webpack.DefinePlugin({ - SIMPLE_CMS_CORE_VERSION: JSON.stringify(`${pkg.version}${isProduction ? '' : '-dev'}`), - }), - new FriendlyErrorsWebpackPlugin({ - compilationSuccessInfo: { - messages: [`Simple CMS is now running at http://localhost:${devServerPort}`], - }, - }), - ], - devServer: { - contentBase: './dev-test', - watchContentBase: true, - publicPath: './dist', - quiet: true, - host: '0.0.0.0', - port: devServerPort, - }, -}; diff --git a/yarn.lock b/yarn.lock index 83de0cce..ef61b342 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,11 +2,6 @@ # yarn lockfile v1 -"@adobe/css-tools@^4.0.1": - version "4.0.1" - resolved "https://registry.yarnpkg.com/@adobe/css-tools/-/css-tools-4.0.1.tgz#b38b444ad3aa5fedbb15f2f746dcd934226a12dd" - integrity sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g== - "@ampproject/remapping@^2.1.0": version "2.2.0" resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" @@ -31,7 +26,7 @@ "@nicolo-ribaudo/chokidar-2" "2.1.8-no-fsevents.3" chokidar "^3.4.0" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.18.6": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== @@ -64,7 +59,7 @@ json5 "^2.2.1" semver "^6.3.0" -"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.17.9", "@babel/core@^7.4.5", "@babel/core@^7.7.2", "@babel/core@^7.8.0": +"@babel/core@^7.17.9", "@babel/core@^7.4.5": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.19.3.tgz#2519f62a51458f43b682d61583c3810e7dcee64c" integrity sha512-WneDJxdsjEvyKtXKsaBGbDeiyOjR5vYq4HcShxnIbG0qixpoHjI3MqeZM9NDvsojNCEBItQE4juOo/bU6e72gQ== @@ -85,7 +80,7 @@ json5 "^2.2.1" semver "^6.3.0" -"@babel/generator@^7.19.0", "@babel/generator@^7.19.3", "@babel/generator@^7.7.2": +"@babel/generator@^7.19.0", "@babel/generator@^7.19.3": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.19.3.tgz#d7f4d1300485b4547cb6f94b27d10d237b42bf59" integrity sha512-fqVZnmp1ncvZU757UzDheKZpfPgatqY59XtW2/j/18H7u76akb8xqvjw82f+i2UKd/ksYsSick/BCLQUUtJ/qQ== @@ -304,7 +299,7 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.0.0", "@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.18.10", "@babel/parser@^7.19.1", "@babel/parser@^7.19.3", "@babel/parser@^7.8.3": +"@babel/parser@^7.0.0", "@babel/parser@^7.18.10", "@babel/parser@^7.19.1", "@babel/parser@^7.19.3", "@babel/parser@^7.8.3": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.19.3.tgz#8dd36d17c53ff347f9e55c328710321b49479a9a" integrity sha512-pJ9xOlNWHiy9+FuFP09DEAFbAn4JskgRsVcc169w2xRBC3FRGuQEwjeIMMND9L2zc0iEhO/tGv4Zq+km+hxNpQ== @@ -469,14 +464,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-bigint@^7.8.3": - version "7.8.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" - integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== - dependencies: - "@babel/helper-plugin-utils" "^7.8.0" - -"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.12.13": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== @@ -518,13 +506,6 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-import-meta@^7.8.3": - version "7.10.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" - integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== - dependencies: - "@babel/helper-plugin-utils" "^7.10.4" - "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" @@ -539,7 +520,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": +"@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== @@ -553,7 +534,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-numeric-separator@^7.10.4", "@babel/plugin-syntax-numeric-separator@^7.8.3": +"@babel/plugin-syntax-numeric-separator@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== @@ -588,14 +569,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-top-level-await@^7.14.5", "@babel/plugin-syntax-top-level-await@^7.8.3": +"@babel/plugin-syntax-top-level-await@^7.14.5": version "7.14.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== dependencies: "@babel/helper-plugin-utils" "^7.14.5" -"@babel/plugin-syntax-typescript@^7.18.6", "@babel/plugin-syntax-typescript@^7.7.2": +"@babel/plugin-syntax-typescript@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.18.6.tgz#1c09cd25795c7c2b8a4ba9ae49394576d4133285" integrity sha512-mAWAuq4rvOepWCBid55JuRNvpTNf2UGVgoz4JV0fXEKolsVZDzsa4NqCef758WZJj/GDu0gVGItjKFiClTAmZA== @@ -1017,7 +998,7 @@ dependencies: regenerator-runtime "^0.13.4" -"@babel/template@^7.18.10", "@babel/template@^7.3.3": +"@babel/template@^7.18.10": version "7.18.10" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.18.10.tgz#6f9134835970d1dbf0835c0d100c9f38de0c5e71" integrity sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA== @@ -1026,7 +1007,7 @@ "@babel/parser" "^7.18.10" "@babel/types" "^7.18.10" -"@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.19.3", "@babel/traverse@^7.7.2", "@babel/traverse@^7.8.3": +"@babel/traverse@^7.19.0", "@babel/traverse@^7.19.1", "@babel/traverse@^7.19.3", "@babel/traverse@^7.8.3": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.19.3.tgz#3a3c5348d4988ba60884e8494b0592b2f15a04b4" integrity sha512-qh5yf6149zhq2sgIXmwjnsvmnNQC2iw70UFjp4olxucKrWd/dvlUsBI88VSLUsnMNF7/vnOiA+nk1+yLoCqROQ== @@ -1042,7 +1023,7 @@ debug "^4.1.0" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.0.0-beta.49", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.3", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.4": +"@babel/types@^7.0.0-beta.49", "@babel/types@^7.18.10", "@babel/types@^7.18.6", "@babel/types@^7.18.9", "@babel/types@^7.19.0", "@babel/types@^7.19.3", "@babel/types@^7.4.4": version "7.19.3" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.19.3.tgz#fc420e6bbe54880bce6779ffaf315f5e43ec9624" integrity sha512-hGCaQzIY22DJlDh9CH7NOxgKkFjBk0Cw9xDO1Xmh2151ti7wiGfQ3LauXzL4HP1fmFlTX6XjpRETTpUcv7wQLw== @@ -1051,53 +1032,11 @@ "@babel/helper-validator-identifier" "^7.19.1" to-fast-properties "^2.0.0" -"@bcoe/v8-coverage@^0.2.3": - version "0.2.3" - resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" - integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== - -"@colors/colors@1.5.0": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" - integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== - "@csstools/selector-specificity@^2.0.2": version "2.0.2" resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz#1bfafe4b7ed0f3e4105837e056e0a89b108ebe36" integrity sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg== -"@cypress/request@^2.88.10": - version "2.88.10" - resolved "https://registry.yarnpkg.com/@cypress/request/-/request-2.88.10.tgz#b66d76b07f860d3a4b8d7a0604d020c662752cce" - integrity sha512-Zp7F+R93N0yZyG34GutyTNr+okam7s/Fzc1+i3kcqOP8vk6OuajuE9qZJ6Rs+10/1JFtXFYMdyarnU1rZuJesg== - dependencies: - 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" - http-signature "~1.3.6" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.19" - 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 "^8.3.2" - -"@cypress/xvfb@^1.2.4": - version "1.2.4" - resolved "https://registry.yarnpkg.com/@cypress/xvfb/-/xvfb-1.2.4.tgz#2daf42e8275b39f4aa53c14214e557bd14e7748a" - integrity sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q== - dependencies: - debug "^3.1.0" - lodash.once "^4.1.1" - "@discoveryjs/json-ext@^0.5.0": version "0.5.7" resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" @@ -1259,18 +1198,6 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@hapi/hoek@^9.0.0": - version "9.3.0" - resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" - integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== - -"@hapi/topo@^5.0.0": - version "5.1.0" - resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012" - integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== - dependencies: - "@hapi/hoek" "^9.0.0" - "@hot-loader/react-dom@17.0.2": version "17.0.2" resolved "https://registry.yarnpkg.com/@hot-loader/react-dom/-/react-dom-17.0.2.tgz#0b24e484093e8f97eb5c72bebdda44fc20bc8400" @@ -1314,253 +1241,6 @@ resolved "https://registry.yarnpkg.com/@icons/material/-/material-0.2.4.tgz#e90c9f71768b3736e76d7dd6783fc6c2afa88bc8" integrity sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw== -"@istanbuljs/load-nyc-config@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" - integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== - dependencies: - camelcase "^5.3.1" - find-up "^4.1.0" - get-package-type "^0.1.0" - js-yaml "^3.13.1" - resolve-from "^5.0.0" - -"@istanbuljs/schema@^0.1.2": - version "0.1.3" - resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" - integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== - -"@jest/console@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-24.9.0.tgz#79b1bc06fb74a8cfb01cbdedf945584b1b9707f0" - integrity sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ== - dependencies: - "@jest/source-map" "^24.9.0" - chalk "^2.0.1" - slash "^2.0.0" - -"@jest/console@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-27.5.1.tgz#260fe7239602fe5130a94f1aa386eff54b014bba" - integrity sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg== - dependencies: - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - jest-message-util "^27.5.1" - jest-util "^27.5.1" - slash "^3.0.0" - -"@jest/core@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-27.5.1.tgz#267ac5f704e09dc52de2922cbf3af9edcd64b626" - integrity sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ== - dependencies: - "@jest/console" "^27.5.1" - "@jest/reporters" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - emittery "^0.8.1" - exit "^0.1.2" - graceful-fs "^4.2.9" - jest-changed-files "^27.5.1" - jest-config "^27.5.1" - jest-haste-map "^27.5.1" - jest-message-util "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-resolve-dependencies "^27.5.1" - jest-runner "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - jest-watcher "^27.5.1" - micromatch "^4.0.4" - rimraf "^3.0.0" - slash "^3.0.0" - strip-ansi "^6.0.0" - -"@jest/environment@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-27.5.1.tgz#d7425820511fe7158abbecc010140c3fd3be9c74" - integrity sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA== - dependencies: - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - -"@jest/expect-utils@^29.1.0": - version "29.1.0" - resolved "https://registry.yarnpkg.com/@jest/expect-utils/-/expect-utils-29.1.0.tgz#598cc7fea83b1bf84249b3b98683575cee888894" - integrity sha512-YcD5CF2beqfoB07WqejPzWq1/l+zT3SgGwcqqIaPPG1DHFn/ea8MWWXeqV3KKMhTaOM1rZjlYplj1GQxR0XxKA== - dependencies: - jest-get-type "^29.0.0" - -"@jest/fake-timers@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-27.5.1.tgz#76979745ce0579c8a94a4678af7a748eda8ada74" - integrity sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ== - dependencies: - "@jest/types" "^27.5.1" - "@sinonjs/fake-timers" "^8.0.1" - "@types/node" "*" - jest-message-util "^27.5.1" - jest-mock "^27.5.1" - jest-util "^27.5.1" - -"@jest/globals@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-27.5.1.tgz#7ac06ce57ab966566c7963431cef458434601b2b" - integrity sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/types" "^27.5.1" - expect "^27.5.1" - -"@jest/reporters@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-27.5.1.tgz#ceda7be96170b03c923c37987b64015812ffec04" - integrity sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw== - dependencies: - "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - collect-v8-coverage "^1.0.0" - exit "^0.1.2" - glob "^7.1.2" - graceful-fs "^4.2.9" - istanbul-lib-coverage "^3.0.0" - istanbul-lib-instrument "^5.1.0" - istanbul-lib-report "^3.0.0" - istanbul-lib-source-maps "^4.0.0" - istanbul-reports "^3.1.3" - jest-haste-map "^27.5.1" - jest-resolve "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - slash "^3.0.0" - source-map "^0.6.0" - string-length "^4.0.1" - terminal-link "^2.0.0" - v8-to-istanbul "^8.1.0" - -"@jest/schemas@^29.0.0": - version "29.0.0" - resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.0.0.tgz#5f47f5994dd4ef067fb7b4188ceac45f77fe952a" - integrity sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA== - dependencies: - "@sinclair/typebox" "^0.24.1" - -"@jest/source-map@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-24.9.0.tgz#0e263a94430be4b41da683ccc1e6bffe2a191714" - integrity sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.1.15" - source-map "^0.6.0" - -"@jest/source-map@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-27.5.1.tgz#6608391e465add4205eae073b55e7f279e04e8cf" - integrity sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg== - dependencies: - callsites "^3.0.0" - graceful-fs "^4.2.9" - source-map "^0.6.0" - -"@jest/test-result@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-24.9.0.tgz#11796e8aa9dbf88ea025757b3152595ad06ba0ca" - integrity sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA== - dependencies: - "@jest/console" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/istanbul-lib-coverage" "^2.0.0" - -"@jest/test-result@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-27.5.1.tgz#56a6585fa80f7cdab72b8c5fc2e871d03832f5bb" - integrity sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag== - dependencies: - "@jest/console" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/istanbul-lib-coverage" "^2.0.0" - collect-v8-coverage "^1.0.0" - -"@jest/test-sequencer@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz#4057e0e9cea4439e544c6353c6affe58d095745b" - integrity sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ== - dependencies: - "@jest/test-result" "^27.5.1" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-runtime "^27.5.1" - -"@jest/transform@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-27.5.1.tgz#6c3501dcc00c4c08915f292a600ece5ecfe1f409" - integrity sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw== - dependencies: - "@babel/core" "^7.1.0" - "@jest/types" "^27.5.1" - babel-plugin-istanbul "^6.1.1" - chalk "^4.0.0" - convert-source-map "^1.4.0" - fast-json-stable-stringify "^2.0.0" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-regex-util "^27.5.1" - jest-util "^27.5.1" - micromatch "^4.0.4" - pirates "^4.0.4" - slash "^3.0.0" - source-map "^0.6.1" - write-file-atomic "^3.0.0" - -"@jest/types@^24.9.0": - version "24.9.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" - integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^13.0.0" - -"@jest/types@^27.5.1": - version "27.5.1" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.5.1.tgz#3c79ec4a8ba61c170bf937bcf9e98a9df175ec80" - integrity sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^16.0.0" - chalk "^4.0.0" - -"@jest/types@^29.1.0": - version "29.1.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.1.0.tgz#db23d727ce0a95500749551d8724fb3526d1e903" - integrity sha512-lE30u3z4lbTOqf5D7fDdoco3Qd8H6F/t73nLOswU4x+7VhgDQMX5y007IMqrKjFHdnpslaYymVFhWX+ttXNARQ== - dependencies: - "@jest/schemas" "^29.0.0" - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^3.0.0" - "@types/node" "*" - "@types/yargs" "^17.0.8" - chalk "^4.0.0" - "@jridgewell/gen-mapping@^0.1.0": version "0.1.1" resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz#e5d2e450306a9491e3bd77e323e38d7aff315996" @@ -1916,42 +1596,6 @@ redux-thunk "^2.4.1" reselect "^4.1.5" -"@sideway/address@^4.1.3": - version "4.1.4" - resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.4.tgz#03dccebc6ea47fdc226f7d3d1ad512955d4783f0" - integrity sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw== - dependencies: - "@hapi/hoek" "^9.0.0" - -"@sideway/formula@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.0.tgz#fe158aee32e6bd5de85044be615bc08478a0a13c" - integrity sha512-vHe7wZ4NOXVfkoRb8T5otiENVlT7a3IAiw7H5M2+GO+9CDgcVUUsX1zalAztCmwyOr2RUTGJdgB+ZvSVqmdHmg== - -"@sideway/pinpoint@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df" - integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== - -"@sinclair/typebox@^0.24.1": - version "0.24.44" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.24.44.tgz#0a0aa3bf4a155a678418527342a3ee84bd8caa5c" - integrity sha512-ka0W0KN5i6LfrSocduwliMMpqVgohtPFidKdMEOUjoOFCHcOOYkKsPRxfs5f15oPNHTm6ERAm0GV/+/LTKeiWg== - -"@sinonjs/commons@^1.7.0": - version "1.8.3" - resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" - integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== - dependencies: - type-detect "4.0.8" - -"@sinonjs/fake-timers@^8.0.1": - version "8.1.0" - resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz#3fdc2b6cb58935b21bfb8d1625eb1300484316e7" - integrity sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg== - dependencies: - "@sinonjs/commons" "^1.7.0" - "@stylelint/postcss-css-in-js@0.37.3": version "0.37.3" resolved "https://registry.yarnpkg.com/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.3.tgz#d149a385e07ae365b0107314c084cb6c11adbf49" @@ -1959,92 +1603,11 @@ dependencies: "@babel/core" "^7.17.9" -"@testing-library/dom@8.18.1", "@testing-library/dom@^8.0.0": - version "8.18.1" - resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-8.18.1.tgz#80f91be02bc171fe5a3a7003f88207be31ac2cf3" - integrity sha512-oEvsm2B/WtcHKE+IcEeeCqNU/ltFGaVyGbpcm4g/2ytuT49jrlH9x5qRKL/H3A6yfM4YAbSbC0ceT5+9CEXnLg== - dependencies: - "@babel/code-frame" "^7.10.4" - "@babel/runtime" "^7.12.5" - "@types/aria-query" "^4.2.0" - aria-query "^5.0.0" - chalk "^4.1.0" - dom-accessibility-api "^0.5.9" - lz-string "^1.4.4" - pretty-format "^27.0.2" - -"@testing-library/jest-dom@5.16.5": - version "5.16.5" - resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-5.16.5.tgz#3912846af19a29b2dbf32a6ae9c31ef52580074e" - integrity sha512-N5ixQ2qKpi5OLYfwQmUb/5mSV9LneAcaUfp32pn4yCnpb8r/Yz0pXFPck21dIicKmi+ta5WRAknkZCfA8refMA== - dependencies: - "@adobe/css-tools" "^4.0.1" - "@babel/runtime" "^7.9.2" - "@types/testing-library__jest-dom" "^5.9.1" - aria-query "^5.0.0" - chalk "^3.0.0" - css.escape "^1.5.1" - dom-accessibility-api "^0.5.6" - lodash "^4.17.15" - redent "^3.0.0" - -"@testing-library/react@12.1.5": - version "12.1.5" - resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-12.1.5.tgz#bb248f72f02a5ac9d949dea07279095fa577963b" - integrity sha512-OfTXCJUFgjd/digLUuPxa0+/3ZxsQmE7ub9kcbW/wi96Bh3o/p5vrETcBGfP17NWPGqeYYl5LTRpwyGoMC4ysg== - dependencies: - "@babel/runtime" "^7.12.5" - "@testing-library/dom" "^8.0.0" - "@types/react-dom" "<18.0.0" - -"@tootallnate/once@1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" - integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== - "@trysound/sax@0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== -"@types/aria-query@^4.2.0": - version "4.2.2" - resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-4.2.2.tgz#ed4e0ad92306a704f9fb132a0cfcf77486dbe2bc" - integrity sha512-HnYpAE1Y6kRyKM/XkEuiRQhTHvkzMBurTHnpFLYLBGPIylZNPs9jJcuOOYWxPLJCSEtmZT0Y8rHDokKN7rRTig== - -"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.14": - version "7.1.19" - resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.19.tgz#7b497495b7d1b4812bdb9d02804d0576f43ee460" - integrity sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - "@types/babel__generator" "*" - "@types/babel__template" "*" - "@types/babel__traverse" "*" - -"@types/babel__generator@*": - version "7.6.4" - resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.4.tgz#1f20ce4c5b1990b37900b63f050182d28c2439b7" - integrity sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg== - dependencies: - "@babel/types" "^7.0.0" - -"@types/babel__template@*": - version "7.4.1" - resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" - integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== - dependencies: - "@babel/parser" "^7.1.0" - "@babel/types" "^7.0.0" - -"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": - version "7.18.2" - resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.18.2.tgz#235bf339d17185bdec25e024ca19cce257cc7309" - integrity sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg== - dependencies: - "@babel/types" "^7.3.0" - "@types/body-parser@*": version "1.19.2" resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.2.tgz#aea2059e28b7658639081347ac4fab3de166e6f0" @@ -2132,13 +1695,6 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/graceful-fs@^4.1.2": - version "4.1.5" - resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" - integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== - dependencies: - "@types/node" "*" - "@types/hast@^2.0.0": version "2.3.4" resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.4.tgz#8aa5ef92c117d20d974a82bdfb6a648b08c0bafc" @@ -2166,49 +1722,6 @@ dependencies: "@types/node" "*" -"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": - version "2.0.4" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz#8467d4b3c087805d63580480890791277ce35c44" - integrity sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g== - -"@types/istanbul-lib-report@*": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" - integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== - dependencies: - "@types/istanbul-lib-coverage" "*" - -"@types/istanbul-reports@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" - integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== - dependencies: - "@types/istanbul-lib-coverage" "*" - "@types/istanbul-lib-report" "*" - -"@types/istanbul-reports@^3.0.0": - version "3.0.1" - resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" - integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== - dependencies: - "@types/istanbul-lib-report" "*" - -"@types/jest@*": - version "29.1.0" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-29.1.0.tgz#9cfbe1b0d4408f9732aaf37447460f10f2c71ce6" - integrity sha512-CqlKkMNaUhFSRvqVKniNhbcy9fc/Rj2cmFD5t8Jtu4HlHzSit27h7XKfP5kkxBeROQ8WAvQQmy93FIz9or8jKg== - dependencies: - expect "^29.0.0" - pretty-format "^29.0.0" - -"@types/jest@27.5.2": - version "27.5.2" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-27.5.2.tgz#ec49d29d926500ffb9fd22b84262e862049c026c" - integrity sha512-mpT8LJJ4CMeeahobofYWIjFo0xonRS/HfxnVEPMPFSQdGUt1uHCnoPT7Zhb+sjDU2wz0oKV0OLUR0WzrHNgfeA== - dependencies: - jest-matcher-utils "^27.0.0" - pretty-format "^27.0.0" - "@types/js-base64@3.3.1": version "3.3.1" resolved "https://registry.yarnpkg.com/@types/js-base64/-/js-base64-3.3.1.tgz#36c2d6dc126277ea28a4d0599d0cafbf547b51e6" @@ -2263,11 +1776,6 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.7.23.tgz#75c580983846181ebe5f4abc40fe9dfb2d65665f" integrity sha512-DWNcCHolDq0ZKGizjx2DZjR/PqsYwAcYUJmfMWqtVU2MBMG5Mo+xFZrhGId5r/O5HOuMPyQEcM6KUBp5lBZZBg== -"@types/node@^14.14.31": - version "14.18.31" - resolved "https://registry.yarnpkg.com/@types/node/-/node-14.18.31.tgz#4b873dea3122e71af4f77e65ec5841397ff254d3" - integrity sha512-vQAnaReSQkEDa8uwAyQby8bYGKu84R/deEc6mg5T8fX6gzCn8QW6rziSgsti1fNvsrswKUKPnVTi7uoB+u62Mw== - "@types/normalize-package-data@^2.4.0": version "2.4.1" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" @@ -2278,11 +1786,6 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/prettier@^2.1.5": - version "2.7.1" - resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.1.tgz#dfd20e2dc35f027cdd6c1908e80a5ddc7499670e" - integrity sha512-ri0UmynRRvZiiUJdiz38MmIblKK+oH30MztdBVR95dv/Ubw6neWSb8u1XpRb72L4qsZOhz+L+z9JD40SJmfWow== - "@types/prop-types@*", "@types/prop-types@^15.7.5": version "15.7.5" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf" @@ -2303,7 +1806,7 @@ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc" integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw== -"@types/react-dom@17.0.17", "@types/react-dom@<18.0.0": +"@types/react-dom@17.0.17": version "17.0.17" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.17.tgz#2e3743277a793a96a99f1bf87614598289da68a1" integrity sha512-VjnqEmqGnasQKV0CWLevqMTXBYG9GbwuE6x3VetERLh0cq2LTptFE73MrQi2S7GkKXCf2GgwItB/melLnxfnsg== @@ -2391,16 +1894,6 @@ "@types/mime" "*" "@types/node" "*" -"@types/sinonjs__fake-timers@8.1.1": - version "8.1.1" - resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz#b49c2c70150141a15e0fa7e79cf1f92a72934ce3" - integrity sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g== - -"@types/sizzle@^2.3.2": - version "2.3.3" - resolved "https://registry.yarnpkg.com/@types/sizzle/-/sizzle-2.3.3.tgz#ff5e2f1902969d305225a047c8a0fd5c915cebef" - integrity sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ== - "@types/sockjs@^0.3.33": version "0.3.33" resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.33.tgz#570d3a0b99ac995360e3136fd6045113b1bd236f" @@ -2408,23 +1901,6 @@ dependencies: "@types/node" "*" -"@types/stack-utils@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-1.0.1.tgz#0a851d3bd96498fa25c33ab7278ed3bd65f06c3e" - integrity sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw== - -"@types/stack-utils@^2.0.0": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" - integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== - -"@types/testing-library__jest-dom@^5.9.1": - version "5.14.5" - resolved "https://registry.yarnpkg.com/@types/testing-library__jest-dom/-/testing-library__jest-dom-5.14.5.tgz#d113709c90b3c75fdb127ec338dad7d5f86c974f" - integrity sha512-SBwbxYoyPIvxHbeHxTZX2Pe/74F/tX2/D3mMvzabdeJ25bBojfW0TyB8BHrbq/9zaaKICJZjLP+8r6AeZMFCuQ== - dependencies: - "@types/jest" "*" - "@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": version "2.0.6" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.6.tgz#250a7b16c3b91f672a24552ec64678eeb1d3a08d" @@ -2468,39 +1944,6 @@ dependencies: "@types/node" "*" -"@types/yargs-parser@*": - version "21.0.0" - resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" - integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== - -"@types/yargs@^13.0.0": - version "13.0.12" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.12.tgz#d895a88c703b78af0465a9de88aa92c61430b092" - integrity sha512-qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ== - dependencies: - "@types/yargs-parser" "*" - -"@types/yargs@^16.0.0": - version "16.0.4" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-16.0.4.tgz#26aad98dd2c2a38e421086ea9ad42b9e51642977" - integrity sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw== - dependencies: - "@types/yargs-parser" "*" - -"@types/yargs@^17.0.8": - version "17.0.13" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.13.tgz#34cced675ca1b1d51fcf4d34c3c6f0fa142a5c76" - integrity sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg== - dependencies: - "@types/yargs-parser" "*" - -"@types/yauzl@^2.9.1": - version "2.10.0" - resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.0.tgz#b3248295276cf8c6f153ebe6a9aba0c988cb2599" - integrity sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw== - dependencies: - "@types/node" "*" - "@types/zen-observable@^0.8.0": version "0.8.3" resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.8.3.tgz#781d360c282436494b32fe7d9f7f8e64b3118aa3" @@ -2749,7 +2192,7 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== -abab@^2.0.3, abab@^2.0.5, abab@^2.0.6: +abab@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== @@ -2769,14 +2212,6 @@ accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: mime-types "~2.1.34" negotiator "0.6.3" -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - acorn-import-assertions@^1.7.6: version "1.8.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" @@ -2787,36 +2222,11 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - -acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.2.4, acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: +acorn@^8.5.0, acorn@^8.7.1, acorn@^8.8.0: version "8.8.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8" integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== -agent-base@6: - version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" - integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== - dependencies: - debug "4" - -aggregate-error@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" - integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== - dependencies: - clean-stack "^2.0.0" - indent-string "^4.0.0" - ajv-errors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" @@ -2861,26 +2271,6 @@ ajv@^8.0.0, ajv@^8.0.1, ajv@^8.8.0: require-from-string "^2.0.2" uri-js "^4.2.2" -ally.js@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/ally.js/-/ally.js-1.4.1.tgz#9fb7e6ba58efac4ee9131cb29aa9ee3b540bcf1e" - integrity sha512-ZewdfuwP6VewtMN36QY0gmiyvBfMnmEaNwbVu2nTS6zRt069viTgkYgaDiqu6vRJ1VJCriNqV0jGMu44R8zNbA== - dependencies: - css.escape "^1.5.0" - platform "1.3.3" - -ansi-colors@^4.1.1: - version "4.1.3" - resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" - integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== - -ansi-escapes@^4.1.0, ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: - version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" - ansi-html-community@^0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" @@ -2891,11 +2281,6 @@ ansi-regex@^2.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== -ansi-regex@^4.0.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" - integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== - ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" @@ -2906,7 +2291,7 @@ ansi-styles@^2.2.1: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== -ansi-styles@^3.2.0, ansi-styles@^3.2.1: +ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== @@ -2920,12 +2305,7 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" -ansi-styles@^5.0.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-5.2.0.tgz#07449690ad45777d1924ac2abb2fc8895dba836b" - integrity sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA== - -anymatch@^3.0.3, anymatch@~3.1.2: +anymatch@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== @@ -3012,18 +2392,6 @@ apollo-utilities@1.3.4, apollo-utilities@^1.3.0, apollo-utilities@^1.3.4: ts-invariant "^0.4.0" tslib "^1.10.0" -app-path@^3.2.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/app-path/-/app-path-3.3.0.tgz#0342a909db37079c593979c720f99e872475eba3" - integrity sha512-EAgEXkdcxH1cgEePOSsmUtw9ItPl0KTxnh/pj9ZbhvbKbij9x0oX6PWpGnorDr0DS5AosLgoa5n3T/hZmKQpYA== - dependencies: - execa "^1.0.0" - -arch@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/arch/-/arch-2.2.0.tgz#1bc47818f305764f23ab3306b0bfc086c5a29d11" - integrity sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ== - argparse@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" @@ -3036,26 +2404,6 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -aria-query@^5.0.0: - version "5.0.2" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.0.2.tgz#0b8a744295271861e1d933f8feca13f9b70cfdc1" - integrity sha512-eigU3vhqSO+Z8BKDnVLN/ompjhf3pYzecKXz8+whRy+9gZu8n1TCGfwzQUUPnqdHl9ax1Hr9031orZ+UOEYr7Q== - -arr-diff@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" - integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== - -arr-flatten@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" - integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== - -arr-union@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" - integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== - array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -3092,11 +2440,6 @@ array-union@^3.0.1: resolved "https://registry.yarnpkg.com/array-union/-/array-union-3.0.1.tgz#da52630d327f8b88cfbfb57728e2af5cd9b6b975" integrity sha512-1OvF9IbWwaeiM9VhzYXVQacMibxpXOMYVNIvMtKRyX9SImBXpKcFr8XvFDeEslCyuH/t6KRt7HEO94AlP8Iatw== -array-unique@^0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" - integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== - array.prototype.flat@^1.2.5: version "1.3.0" resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz#0b0c1567bf57b38b56b4c97b8aa72ab45e4adc7b" @@ -3150,23 +2493,6 @@ asap@^2.0.0: resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== -asn1@~0.2.3: - version "0.2.6" - resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" - integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== - dependencies: - safer-buffer "~2.1.0" - -assert-plus@1.0.0, assert-plus@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" - integrity sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw== - -assign-symbols@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" - integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== - astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" @@ -3179,41 +2505,16 @@ async@^2.6.4: dependencies: lodash "^4.17.14" -async@^3.2.0: - version "3.2.4" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.4.tgz#2d22e00f8cddeb5fde5dd33522b56d1cf569a81c" - integrity sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ== - asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -at-least-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" - integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== - atob-lite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" integrity sha512-LEeSAWeh2Gfa2FtlQE1shxQ8zi5F9GHarrGKz08TMdODD5T4eH6BMsvtnhbWZ+XQn+Gb6om/917ucvRu7l7ukw== -atob@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" - integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== - -aws-sign2@~0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" - integrity sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA== - -aws4@^1.8.0: - version "1.11.0" - resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" - integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== - axios@0.26.1: version "0.26.1" resolved "https://registry.yarnpkg.com/axios/-/axios-0.26.1.tgz#1ede41c51fcf51bbbd6fd43669caaa4f0495aaa9" @@ -3221,13 +2522,6 @@ axios@0.26.1: dependencies: follow-redirects "^1.14.8" -axios@^0.21.1: - version "0.21.4" - resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" - integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== - dependencies: - follow-redirects "^1.14.0" - babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" @@ -3251,20 +2545,6 @@ babel-eslint@11.0.0-beta.2: eslint-visitor-keys "^1.1.0" semver "^6.3.0" -babel-jest@27.5.1, babel-jest@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-27.5.1.tgz#a1bf8d61928edfefd21da27eb86a695bfd691444" - integrity sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg== - dependencies: - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/babel__core" "^7.1.14" - babel-plugin-istanbul "^6.1.1" - babel-preset-jest "^27.5.1" - chalk "^4.0.0" - graceful-fs "^4.2.9" - slash "^3.0.0" - babel-loader@8.2.5: version "8.2.5" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.5.tgz#d45f585e654d5a5d90f5350a779d7647c5ed512e" @@ -3312,27 +2592,6 @@ babel-plugin-inline-react-svg@2.0.1: resolve "^1.20.0" svgo "^2.0.3" -babel-plugin-istanbul@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" - integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== - dependencies: - "@babel/helper-plugin-utils" "^7.0.0" - "@istanbuljs/load-nyc-config" "^1.0.0" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-instrument "^5.0.4" - test-exclude "^6.0.0" - -babel-plugin-jest-hoist@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz#9be98ecf28c331eb9f5df9c72d6f89deb8181c2e" - integrity sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ== - dependencies: - "@babel/template" "^7.3.3" - "@babel/types" "^7.3.3" - "@types/babel__core" "^7.0.0" - "@types/babel__traverse" "^7.0.6" - babel-plugin-lodash@3.3.4: version "3.3.4" resolved "https://registry.yarnpkg.com/babel-plugin-lodash/-/babel-plugin-lodash-3.3.4.tgz#4f6844358a1340baed182adbeffa8df9967bc196" @@ -3416,32 +2675,6 @@ babel-plugin-transform-inline-environment-variables@0.4.4: resolved "https://registry.yarnpkg.com/babel-plugin-transform-inline-environment-variables/-/babel-plugin-transform-inline-environment-variables-0.4.4.tgz#974245008b3cbbd646bd81707af147aea3acca43" integrity sha512-bJILBtn5a11SmtR2j/3mBOjX4K3weC6cq+NNZ7hG22wCAqpc3qtj/iN7dSe9HDiS46lgp1nHsQgeYrea/RUe+g== -babel-preset-current-node-syntax@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" - integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== - dependencies: - "@babel/plugin-syntax-async-generators" "^7.8.4" - "@babel/plugin-syntax-bigint" "^7.8.3" - "@babel/plugin-syntax-class-properties" "^7.8.3" - "@babel/plugin-syntax-import-meta" "^7.8.3" - "@babel/plugin-syntax-json-strings" "^7.8.3" - "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" - "@babel/plugin-syntax-numeric-separator" "^7.8.3" - "@babel/plugin-syntax-object-rest-spread" "^7.8.3" - "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" - "@babel/plugin-syntax-optional-chaining" "^7.8.3" - "@babel/plugin-syntax-top-level-await" "^7.8.3" - -babel-preset-jest@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz#91f10f58034cb7989cb4f962b69fa6eef6a6bc81" - integrity sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag== - dependencies: - babel-plugin-jest-hoist "^27.5.1" - babel-preset-current-node-syntax "^1.0.0" - babel-runtime@^6.2.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" @@ -3511,24 +2744,11 @@ balanced-match@^2.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-2.0.0.tgz#dc70f920d78db8b858535795867bf48f820633d9" integrity sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA== -base64-js@^1.3.1, base64-js@^1.5.1: +base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== -base@^0.11.1: - version "0.11.2" - resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" - integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== - dependencies: - 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" - basic-auth@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/basic-auth/-/basic-auth-2.0.1.tgz#b998279bf47ce38344b4f3cf916d4679bbf51e3a" @@ -3541,13 +2761,6 @@ batch@0.6.1: resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw== -bcrypt-pbkdf@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" - integrity sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w== - dependencies: - tweetnacl "^0.14.3" - before-after-hook@^2.0.0: version "2.2.2" resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" @@ -3563,16 +2776,6 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== -blob-util@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/blob-util/-/blob-util-2.0.2.tgz#3b4e3c281111bb7f11128518006cdc60b403a1eb" - integrity sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ== - -bluebird@3.7.2, bluebird@^3.7.2: - version "3.7.2" - resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" - integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== - body-parser@1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.0.tgz#3de69bd89011c11573d7bfee6a64f11b6bd27cc5" @@ -3621,22 +2824,6 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" -braces@^2.3.1: - version "2.3.2" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" - integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== - dependencies: - arr-flatten "^1.1.0" - array-unique "^0.3.2" - 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" - braces@^3.0.2, braces@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -3649,11 +2836,6 @@ browser-or-node@~2.0.0: resolved "https://registry.yarnpkg.com/browser-or-node/-/browser-or-node-2.0.0.tgz#808ea90282a670931cdc0ea98166538a50dd0d89" integrity sha512-3Lrks/Okgof+/cRguUNG+qRXSeq79SO3hY4QrXJayJofwJwHiGC0qi99uDjsfTwULUFSr1OGVsBkdIkygKjTUA== -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: version "4.21.4" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.4.tgz#e7496bbc67b9e39dd0f98565feccdcb0d4ff6987" @@ -3664,36 +2846,16 @@ browserslist@^4.14.5, browserslist@^4.21.3, browserslist@^4.21.4: node-releases "^2.0.6" update-browserslist-db "^1.0.9" -bser@2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" - integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== - dependencies: - node-int64 "^0.4.0" - btoa-lite@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" integrity sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA== -buffer-crc32@~0.2.3: - version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== - buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer@^5.6.0: - version "5.7.1" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" - integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== - dependencies: - base64-js "^1.3.1" - ieee754 "^1.1.13" - buffer@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" @@ -3724,21 +2886,6 @@ bytes@3.1.2: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -cache-base@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" - integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== - dependencies: - collection-visit "^1.0.0" - component-emitter "^1.2.1" - 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" - cache-me-outside@0.0.10: version "0.0.10" resolved "https://registry.yarnpkg.com/cache-me-outside/-/cache-me-outside-0.0.10.tgz#8dc3345fb36f40e268cebb74474e9814e1ff2286" @@ -3747,11 +2894,6 @@ cache-me-outside@0.0.10: is-invalid-path "^1.0.2" rimraf "^2.6.2" -cachedir@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cachedir/-/cachedir-2.3.0.tgz#0c75892a052198f0b21c7c1804d8331edfcae0e8" - integrity sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw== - call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" @@ -3784,21 +2926,11 @@ camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.2.0: - version "6.3.0" - resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" - integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== - caniuse-lite@^1.0.30001400: version "1.0.30001414" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001414.tgz#5f1715e506e71860b4b07c50060ea6462217611e" integrity sha512-t55jfSaWjCdocnFdKQoO+d2ct9C59UZg4dY3OnUlSZ447r8pUtIKdp0hpAzrGFultmTC+Us+KpKi4GZl/LXlFg== -caseless@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" - integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== - ccount@^1.0.0, ccount@^1.0.3: version "1.1.0" resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" @@ -3820,7 +2952,7 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -3845,11 +2977,6 @@ chalk@^4.0.0, chalk@^4.1.0, chalk@^4.1.2: ansi-styles "^4.1.0" supports-color "^7.1.0" -char-regex@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" - integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== - character-entities-html4@^1.0.0: version "1.1.4" resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.4.tgz#0e64b0a3753ddbf1fdc044c5fd01d0199a02e125" @@ -3875,11 +3002,6 @@ character-reference-invalid@^1.0.0: resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz#083329cda0eae272ab3dbbf37e9a382c13af1560" integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== -check-more-types@2.24.0, check-more-types@^2.24.0: - version "2.24.0" - resolved "https://registry.yarnpkg.com/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600" - integrity sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA== - chokidar@^3.4.0, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" @@ -3900,26 +3022,11 @@ chrome-trace-event@^1.0.2: resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== -ci-info@^3.2.0, ci-info@^3.3.0: +ci-info@^3.3.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.4.0.tgz#b28484fd436cbc267900364f096c9dc185efb251" integrity sha512-t5QdPT5jq3o262DOQ8zA6E1tlH2upmUc4Hlvrbx1pGYJuiiHl7O7rvVNI+l8HTVhd/q3Qc9vqimkNk5yiXsAug== -cjs-module-lexer@^1.0.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz#9f84ba3244a512f3a54e5277e8eef4c489864e40" - integrity sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA== - -class-utils@^0.3.5: - version "0.3.6" - resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" - integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== - dependencies: - arr-union "^3.1.0" - define-property "^0.2.5" - isobject "^3.0.0" - static-extend "^0.1.1" - clean-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clean-regexp/-/clean-regexp-1.0.0.tgz#8df7c7aae51fd36874e8f8d05b9180bc11a3fed7" @@ -3934,11 +3041,6 @@ clean-stack@4.2.0: dependencies: escape-string-regexp "5.0.0" -clean-stack@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" - integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== - cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -3951,32 +3053,6 @@ cli-spinners@^2.2.0: resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.7.0.tgz#f815fd30b5f9eaac02db604c7a231ed7cb2f797a" integrity sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw== -cli-table3@~0.6.1: - version "0.6.3" - resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.3.tgz#61ab765aac156b52f222954ffc607a6f01dbeeb2" - integrity sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg== - dependencies: - string-width "^4.2.0" - optionalDependencies: - "@colors/colors" "1.5.0" - -cli-truncate@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" - integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== - dependencies: - slice-ansi "^3.0.0" - string-width "^4.2.0" - -cliui@^7.0.2: - version "7.0.4" - resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== - dependencies: - string-width "^4.2.0" - strip-ansi "^6.0.0" - wrap-ansi "^7.0.0" - clone-deep@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" @@ -3996,11 +3072,6 @@ clsx@^1.2.1: resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== -co@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" - integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== - coa@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" @@ -4020,19 +3091,6 @@ collapse-white-space@^1.0.0, collapse-white-space@^1.0.2: resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-1.0.6.tgz#e63629c0016665792060dbbeb79c42239d2c5287" integrity sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ== -collect-v8-coverage@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" - integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== - -collection-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" - integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== - dependencies: - map-visit "^1.0.0" - object-visit "^1.0.0" - color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -4062,12 +3120,12 @@ colord@^2.9.3: resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw== -colorette@^2.0.10, colorette@^2.0.14, colorette@^2.0.16: +colorette@^2.0.10, colorette@^2.0.14: version "2.0.19" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz#cdf044f47ad41a0f4b56b3a0d5b4e6e1a2d5a798" integrity sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ== -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -4089,11 +3147,6 @@ commander@^4.0.1: resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== -commander@^5.1.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" - integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== - commander@^7.0.0, commander@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" @@ -4104,11 +3157,6 @@ common-tags@1.8.1: resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.1.tgz#ebf4973edf7d476a9c19646f5f04a45f95796029" integrity sha512-uOZd85rJqrdEIE/JjhW5YAeatX8iqjjvVzIyfx7JL7G5r9Tep6YpYT9gEJWhWpVyDQEyzukWd6p2qULpJ8tmBw== -common-tags@^1.8.0: - version "1.8.2" - resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.8.2.tgz#94ebb3c076d26032745fd54face7f688ef5ac9c6" - integrity sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA== - commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" @@ -4129,11 +3177,6 @@ commonmark@0.30.0: minimist ">=1.2.2" string.prototype.repeat "^0.2.0" -component-emitter@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" - integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== - compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -4181,7 +3224,7 @@ content-type@~1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== -convert-source-map@^1.1.0, convert-source-map@^1.4.0, convert-source-map@^1.5.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: +convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: version "1.8.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== @@ -4198,11 +3241,6 @@ cookie@0.5.0: resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.5.0.tgz#d1f5d71adec6558c58f389987c366aa47e994f8b" integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== -copy-descriptor@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" - integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== - copy-text-to-clipboard@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.0.1.tgz#8cbf8f90e0a47f12e4a24743736265d157bce69c" @@ -4220,11 +3258,6 @@ core-js@^2.4.0: resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== -core-util-is@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" - integrity sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ== - core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" @@ -4272,7 +3305,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.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: +cross-spawn@^7.0.1, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -4357,11 +3390,6 @@ css-what@^6.0.1: resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4" integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw== -css.escape@^1.5.0, css.escape@^1.5.1: - version "1.5.1" - resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb" - integrity sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg== - csscolorparser@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/csscolorparser/-/csscolorparser-1.0.3.tgz#b34f391eea4da8f3e98231e2ccd8df9c041f171b" @@ -4379,110 +3407,11 @@ csso@^4.0.2, csso@^4.2.0: dependencies: css-tree "^1.1.2" -cssom@^0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" - integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - csstype@^3.0.2, csstype@^3.1.0, csstype@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.1.tgz#841b532c45c758ee546a11d5bd7b7b473c8c30b9" integrity sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw== -cypress-file-upload@5.0.8: - version "5.0.8" - resolved "https://registry.yarnpkg.com/cypress-file-upload/-/cypress-file-upload-5.0.8.tgz#d8824cbeaab798e44be8009769f9a6c9daa1b4a1" - integrity sha512-+8VzNabRk3zG6x8f8BWArF/xA/W0VK4IZNx3MV0jFWrJS/qKn8eHfa5nU73P9fOQAgwHFJx7zjg4lwOnljMO8g== - -cypress-image-snapshot@4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/cypress-image-snapshot/-/cypress-image-snapshot-4.0.1.tgz#59084e713a8d03500c8e053ad7a76f3f18609648" - integrity sha512-PBpnhX/XItlx3/DAk5ozsXQHUi72exybBNH5Mpqj1DVmjq+S5Jd9WE5CRa4q5q0zuMZb2V2VpXHth6MjFpgj9Q== - dependencies: - chalk "^2.4.1" - fs-extra "^7.0.1" - glob "^7.1.3" - jest-image-snapshot "4.2.0" - pkg-dir "^3.0.0" - term-img "^4.0.0" - -cypress-jest-adapter@0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/cypress-jest-adapter/-/cypress-jest-adapter-0.1.1.tgz#d1aa9d84393b6a5007022d1d33b3cdd3ce9672af" - integrity sha512-5dSB03utqDTBG5pi1LaAvYQD5uSMtSwurSzodpM+3XS/RdrjR/644oPnFUxPRvX4FVBaIY8avRs/f/GmIAiu8w== - dependencies: - expect "^24.5.0" - jest-get-type "^24.3.0" - jest-jquery-matchers "^2.1.0" - jquery "^3.4.0" - -cypress-plugin-tab@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/cypress-plugin-tab/-/cypress-plugin-tab-1.0.5.tgz#a40714148104004bb05ed62b1bf46bb544f8eb4a" - integrity sha512-QtTJcifOVwwbeMP3hsOzQOKf3EqKsLyjtg9ZAGlYDntrCRXrsQhe4ZQGIthRMRLKpnP6/tTk6G0gJ2sZUfRliQ== - dependencies: - ally.js "^1.4.1" - -cypress@9.5.3: - version "9.5.3" - resolved "https://registry.yarnpkg.com/cypress/-/cypress-9.5.3.tgz#7c56b50fc1f1aa69ef10b271d895aeb4a1d7999e" - integrity sha512-ItelIVmqMTnKYbo1JrErhsGgQGjWOxCpHT1TfMvwnIXKXN/OSlPjEK7rbCLYDZhejQL99PmUqul7XORI24Ik0A== - dependencies: - "@cypress/request" "^2.88.10" - "@cypress/xvfb" "^1.2.4" - "@types/node" "^14.14.31" - "@types/sinonjs__fake-timers" "8.1.1" - "@types/sizzle" "^2.3.2" - arch "^2.2.0" - blob-util "^2.0.2" - bluebird "^3.7.2" - buffer "^5.6.0" - cachedir "^2.3.0" - chalk "^4.1.0" - check-more-types "^2.24.0" - cli-cursor "^3.1.0" - cli-table3 "~0.6.1" - commander "^5.1.0" - common-tags "^1.8.0" - dayjs "^1.10.4" - debug "^4.3.2" - enquirer "^2.3.6" - eventemitter2 "^6.4.3" - execa "4.1.0" - executable "^4.1.1" - extract-zip "2.0.1" - figures "^3.2.0" - fs-extra "^9.1.0" - getos "^3.2.1" - is-ci "^3.0.0" - is-installed-globally "~0.4.0" - lazy-ass "^1.6.0" - listr2 "^3.8.3" - lodash "^4.17.21" - log-symbols "^4.0.0" - minimist "^1.2.6" - ospath "^1.2.2" - pretty-bytes "^5.6.0" - proxy-from-env "1.0.0" - request-progress "^3.0.0" - semver "^7.3.2" - supports-color "^8.1.1" - tmp "~0.2.1" - untildify "^4.0.0" - yauzl "^2.10.0" - d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -4491,48 +3420,13 @@ d@1, d@^1.0.1: es5-ext "^0.10.50" type "^1.0.1" -dashdash@^1.12.0: - version "1.14.1" - resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" - integrity sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g== - dependencies: - assert-plus "^1.0.0" - -data-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" - integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== - dependencies: - abab "^2.0.3" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.0.0" - -dayjs@^1.10.4: - version "1.11.5" - resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.5.tgz#00e8cc627f231f9499c19b38af49f56dc0ac5e93" - integrity sha512-CAdX5Q3YW3Gclyo5Vpqkgpj8fSdLQcRuzfX6mC6Phy0nfJ0eGYOeS7m4mt2plDWLAtA4TqTakvbboHvUxfe4iA== - -debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -debug@4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" - integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== - dependencies: - ms "2.1.2" - debug@^3.1.0, debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -4540,6 +3434,13 @@ debug@^3.1.0, debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + decache@^4.5.1: version "4.6.1" resolved "https://registry.yarnpkg.com/decache/-/decache-4.6.1.tgz#5928bfab97a6fcf22a65047a3d07999af36efaf0" @@ -4560,11 +3461,6 @@ decamelize@^1.1.0, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== -decimal.js@^10.2.1: - version "10.4.1" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.1.tgz#be75eeac4a2281aace80c1a8753587c27ef053e7" - integrity sha512-F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw== - decode-named-character-reference@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz#daabac9690874c394c81e4162a0304b35d824f0e" @@ -4577,17 +3473,12 @@ decode-uri-component@^0.2.0: resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" integrity sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og== -dedent@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" - integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== - -deep-is@^0.1.3, deep-is@~0.1.3: +deep-is@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== -deepmerge@4.2.2, deepmerge@^4.2.2: +deepmerge@4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== @@ -4619,28 +3510,6 @@ define-properties@^1.1.3, define-properties@^1.1.4: has-property-descriptors "^1.0.0" object-keys "^1.1.1" -define-property@^0.2.5: - version "0.2.5" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" - integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== - dependencies: - is-descriptor "^0.1.0" - -define-property@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" - integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== - dependencies: - is-descriptor "^1.0.0" - -define-property@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" - integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== - dependencies: - is-descriptor "^1.0.2" - isobject "^3.0.1" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -4678,11 +3547,6 @@ detab@^2.0.0: dependencies: repeat-string "^1.5.4" -detect-newline@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" - integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== - detect-node@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" @@ -4693,21 +3557,6 @@ diacritics@1.3.0: resolved "https://registry.yarnpkg.com/diacritics/-/diacritics-1.3.0.tgz#3efa87323ebb863e6696cebb0082d48ff3d6f7a1" integrity sha512-wlwEkqcsaxvPJML+rDh/2iS824jbREk6DUMUKkEaSlxdYHeS43cClJtsWglvw2RfeXGm6ohKDqsXteJ5sP5enA== -diff-sequences@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-24.9.0.tgz#5715d6244e2aa65f48bba0bc972db0b0b11e95b5" - integrity sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew== - -diff-sequences@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-27.5.1.tgz#eaecc0d327fd68c8d9672a1e64ab8dccb2ef5327" - integrity sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ== - -diff-sequences@^29.0.0: - version "29.0.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-29.0.0.tgz#bae49972ef3933556bcb0800b72e8579d19d9e4f" - integrity sha512-7Qe/zd1wxSDL4D/X/FPjOMB+ZMDt71W94KYaq05I2l0oQqgXgs7s4ftYYmV38gBSrPz2vcygxfs1xn0FT+rKNA== - diff@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/diff/-/diff-5.1.0.tgz#bc52d298c5ea8df9194800224445ed43ffc87e40" @@ -4760,11 +3609,6 @@ doctrine@^3.0.0: dependencies: esutils "^2.0.2" -dom-accessibility-api@^0.5.6, dom-accessibility-api@^0.5.9: - version "0.5.14" - resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.14.tgz#56082f71b1dc7aac69d83c4285eef39c15d93f56" - integrity sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg== - dom-helpers@^5.0.1: version "5.2.1" resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-5.2.1.tgz#d9400536b2bf8225ad98fe052e029451ac40e902" @@ -4805,13 +3649,6 @@ domelementtype@^2.0.1, domelementtype@^2.2.0: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d" integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw== -domexception@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" - integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== - dependencies: - webidl-conversions "^5.0.0" - domhandler@^4.2.0, domhandler@^4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" @@ -4846,19 +3683,6 @@ dotenv@10.0.0: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81" integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q== -duplexer@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" - integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== - -ecc-jsbn@~0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" - integrity sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw== - dependencies: - jsbn "~0.1.0" - safer-buffer "^2.1.0" - ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" @@ -4869,11 +3693,6 @@ electron-to-chromium@^1.4.251: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.268.tgz#5a902075f0209a628837e508a66d40ace04d54ab" integrity sha512-PO90Bv++vEzdln+eA9qLg1IRnh0rKETus6QkTzcFm5P3Wg3EQBZud5dcnzkpYXuIKWBjKe5CO8zjz02cicvn1g== -emittery@^0.8.1: - version "0.8.1" - resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.8.1.tgz#bb23cc86d03b30aa75a7f734819dee2e1ba70860" - integrity sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg== - emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -4904,13 +3723,6 @@ enhanced-resolve@^5.0.0, enhanced-resolve@^5.10.0: graceful-fs "^4.2.4" tapable "^2.2.0" -enquirer@^2.3.6: - version "2.3.6" - resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" - integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== - dependencies: - ansi-colors "^4.1.1" - entities@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" @@ -5035,28 +3847,11 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== -escape-string-regexp@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" - integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== - escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== -escodegen@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" - integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== - dependencies: - esprima "^4.0.1" - estraverse "^5.2.0" - esutils "^2.0.2" - optionator "^0.8.1" - optionalDependencies: - source-map "~0.6.1" - eslint-config-prettier@8.5.0: version "8.5.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz#5a81680ec934beca02c7b1a61cf8ca34b66feab1" @@ -5262,7 +4057,7 @@ espree@^9.4.0: acorn-jsx "^5.3.2" eslint-visitor-keys "^3.3.0" -esprima@^4.0.0, esprima@^4.0.1: +esprima@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== @@ -5306,29 +4101,11 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -event-stream@=3.3.4: - version "3.3.4" - resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571" - integrity sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g== - dependencies: - duplexer "~0.1.1" - from "~0" - map-stream "~0.1.0" - pause-stream "0.0.11" - split "0.3" - stream-combiner "~0.0.4" - through "~2.3.1" - event-target-shim@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== -eventemitter2@^6.4.3: - version "6.4.9" - resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-6.4.9.tgz#41f2750781b4230ed58827bc119d293471ecb125" - integrity sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg== - eventemitter3@^4.0.0: version "4.0.7" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" @@ -5339,21 +4116,6 @@ events@^3.2.0: resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -execa@4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" - integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== - dependencies: - cross-spawn "^7.0.0" - get-stream "^5.0.0" - human-signals "^1.1.1" - 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" - strip-final-newline "^2.0.0" - execa@5.1.1, execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -5382,69 +4144,11 @@ execa@^1.0.0: signal-exit "^3.0.0" strip-eof "^1.0.0" -executable@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/executable/-/executable-4.1.1.tgz#41532bff361d3e57af4d763b70582db18f5d133c" - integrity sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg== - dependencies: - pify "^2.2.0" - exenv@^1.2.0: version "1.2.2" resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" integrity sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw== -exit@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" - integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== - -expand-brackets@^2.1.4: - version "2.1.4" - resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" - integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== - dependencies: - debug "^2.3.3" - define-property "^0.2.5" - 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" - -expect@^24.5.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-24.9.0.tgz#b75165b4817074fa4a157794f46fe9f1ba15b6ca" - integrity sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q== - dependencies: - "@jest/types" "^24.9.0" - ansi-styles "^3.2.0" - jest-get-type "^24.9.0" - jest-matcher-utils "^24.9.0" - jest-message-util "^24.9.0" - jest-regex-util "^24.9.0" - -expect@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/expect/-/expect-27.5.1.tgz#83ce59f1e5bdf5f9d2b94b61d2050db48f3fef74" - integrity sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw== - dependencies: - "@jest/types" "^27.5.1" - jest-get-type "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - -expect@^29.0.0: - version "29.1.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-29.1.0.tgz#0e20a72cf4b2cfb8ca5e2ab138c23c5078c37460" - integrity sha512-1NCfR0FEArn9Vq1KEjhPd1rggRLiWgo87gfMK4iKn6DcVzJBRMyDNX22hyND5KiSRPIPQ5KtsY6HLxsQ0MU86w== - dependencies: - "@jest/expect-utils" "^29.1.0" - jest-get-type "^29.0.0" - jest-matcher-utils "^29.1.0" - jest-message-util "^29.1.0" - jest-util "^29.1.0" - express@^4.17.3: version "4.18.1" resolved "https://registry.yarnpkg.com/express/-/express-4.18.1.tgz#7797de8b9c72c857b9cd0e14a5eea80666267caf" @@ -5496,54 +4200,11 @@ extend-shallow@^2.0.1: dependencies: is-extendable "^0.1.0" -extend-shallow@^3.0.0, extend-shallow@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" - integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== - dependencies: - assign-symbols "^1.0.0" - is-extendable "^1.0.1" - -extend@^3.0.0, extend@~3.0.2: +extend@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== -extglob@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" - integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== - dependencies: - array-unique "^0.3.2" - define-property "^1.0.0" - 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" - -extract-zip@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" - integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== - dependencies: - debug "^4.1.1" - get-stream "^5.1.0" - yauzl "^2.10.0" - optionalDependencies: - "@types/yauzl" "^2.9.1" - -extsprintf@1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" - integrity sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g== - -extsprintf@^1.2.0: - version "1.4.1" - resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" - integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== - fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -5570,7 +4231,7 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== -fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: +fast-levenshtein@^2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== @@ -5594,27 +4255,6 @@ faye-websocket@^0.11.3: dependencies: websocket-driver ">=0.5.1" -fb-watchman@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" - integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== - dependencies: - bser "2.1.1" - -fd-slicer@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" - integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== - dependencies: - pend "~1.2.0" - -figures@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - file-entry-cache@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" @@ -5622,16 +4262,6 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" -fill-range@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" - integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== - dependencies: - extend-shallow "^2.0.1" - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range "^2.1.0" - fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -5671,13 +4301,6 @@ find-root@^1.1.0: resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== -find-up@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" - integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== - dependencies: - locate-path "^3.0.0" - find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -5712,21 +4335,11 @@ focus-group@^0.3.1: resolved "https://registry.yarnpkg.com/focus-group/-/focus-group-0.3.1.tgz#e0f32ed86b0dabdd6ffcebdf898ecb32e47fedce" integrity sha512-IA01dzk2cStQso/qnt2rWhXCFBZlBfjZmohB9mXUx9feEaJcORAK0FQGvwaApsNNGwzEnqrp/2qTR4lq8PXfnQ== -follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.14.8, follow-redirects@~1.15.0: +follow-redirects@^1.0.0, follow-redirects@^1.14.8, follow-redirects@~1.15.0: version "1.15.2" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== -for-in@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" - integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== - -forever-agent@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" - integrity sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw== - form-data@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" @@ -5736,37 +4349,16 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" -form-data@~2.3.2: - version "2.3.3" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" - integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.6" - mime-types "^2.1.12" - forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== -fragment-cache@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" - integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== - dependencies: - map-cache "^0.2.2" - fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== -from@~0: - version "0.1.7" - resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe" - integrity sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g== - fs-extra@10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" @@ -5776,25 +4368,6 @@ fs-extra@10.1.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-extra@^7.0.1: - version "7.0.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-7.0.1.tgz#4f189c44aa123b895f722804f55ea23eadc348e9" - integrity sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw== - dependencies: - graceful-fs "^4.1.2" - jsonfile "^4.0.0" - universalify "^0.1.0" - -fs-extra@^9.1.0: - version "9.1.0" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" - integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== - dependencies: - at-least-node "^1.0.0" - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-monkey@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.3.tgz#ae3ac92d53bb328efe0e9a1d9541f6ad8d48e2d3" @@ -5810,7 +4383,7 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@^2.3.2, fsevents@~2.3.2: +fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== @@ -5858,11 +4431,6 @@ geotiff@2.0.4: web-worker "^1.2.0" xml-utils "^1.0.2" -get-caller-file@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" - integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== - get-document@1: version "1.0.0" resolved "https://registry.yarnpkg.com/get-document/-/get-document-1.0.0.tgz#4821bce66f1c24cb0331602be6cb6b12c4f01c4b" @@ -5877,16 +4445,6 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1, get-intrinsic@ has "^1.0.3" has-symbols "^1.0.3" -get-package-type@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" - integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== - -get-stdin@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-5.0.1.tgz#122e161591e21ff4c52530305693f20e6393a398" - integrity sha512-jZV7n6jGE3Gt7fgSTJoz91Ak5MuTLwMwkoYdjxuJ/AmjIsE1UC03y/IWkZCQGEvVNS9qoRNwy5BCqxImv0FVeA== - get-stream@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" @@ -5894,13 +4452,6 @@ get-stream@^4.0.0: dependencies: pump "^3.0.0" -get-stream@^5.0.0, get-stream@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" - integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== - dependencies: - pump "^3.0.0" - get-stream@^6.0.0: version "6.0.1" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" @@ -5914,11 +4465,6 @@ get-symbol-description@^1.0.0: call-bind "^1.0.2" get-intrinsic "^1.1.1" -get-value@^2.0.3, get-value@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" - integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== - get-window@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/get-window/-/get-window-1.1.2.tgz#65fbaa999fb87f86ea5d30770f4097707044f47f" @@ -5926,20 +4472,6 @@ get-window@^1.1.1: dependencies: get-document "1" -getos@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/getos/-/getos-3.2.1.tgz#0134d1f4e00eb46144c5a9c0ac4dc087cbb27dc5" - integrity sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q== - dependencies: - async "^3.2.0" - -getpass@^0.1.1: - version "0.1.7" - resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" - integrity sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng== - dependencies: - assert-plus "^1.0.0" - gitlab@14.2.2: version "14.2.2" resolved "https://registry.yarnpkg.com/gitlab/-/gitlab-14.2.2.tgz#48eebf49865a6744c2dd33687fc95ed449dd173a" @@ -5974,7 +4506,7 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.2.0: +glob@^7.1.1, glob@^7.1.3, glob@^7.2.0: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -5997,13 +4529,6 @@ glob@~8.0.1: minimatch "^5.0.1" once "^1.3.0" -global-dirs@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.0.tgz#70a76fe84ea315ab37b1f5576cbde7d48ef72686" - integrity sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA== - dependencies: - ini "2.0.0" - global-modules@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" @@ -6074,11 +4599,6 @@ globjoin@^0.1.4: resolved "https://registry.yarnpkg.com/globjoin/-/globjoin-0.1.4.tgz#2f4494ac8919e3767c5cbb691e9f463324285d43" integrity sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg== -glur@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/glur/-/glur-1.1.2.tgz#f20ea36db103bfc292343921f1f91e83c3467689" - integrity sha512-l+8esYHTKOx2G/Aao4lEQ0bnHWg4fWtJbVoZZT9Knxi01pB8C80BR85nONLFwkkQoFRCmXY+BUcGZN3yZ2QsRA== - gotrue-js@0.9.29: version "0.9.29" resolved "https://registry.yarnpkg.com/gotrue-js/-/gotrue-js-0.9.29.tgz#08e62184d4eaadcd87f95cb6e49e3c4a9742a052" @@ -6086,7 +4606,7 @@ gotrue-js@0.9.29: dependencies: micro-api-client "^3.2.1" -graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: +graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== @@ -6169,37 +4689,6 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-value@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" - integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== - dependencies: - get-value "^2.0.3" - has-values "^0.1.4" - isobject "^2.0.0" - -has-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" - integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== - dependencies: - get-value "^2.0.6" - has-values "^1.0.0" - isobject "^3.0.0" - -has-values@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" - integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== - -has-values@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" - integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== - dependencies: - is-number "^3.0.0" - kind-of "^4.0.0" - has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -6360,13 +4849,6 @@ hpack.js@^2.1.6: readable-stream "^2.0.1" wbuf "^1.1.0" -html-encoding-sniffer@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" - integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== - dependencies: - whatwg-encoding "^1.0.5" - html-encoding-sniffer@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" @@ -6379,11 +4861,6 @@ html-entities@^2.3.2: resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== -html-escaper@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" - integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== - html-tags@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.2.0.tgz#dbb3518d20b726524e4dd43de397eb0a95726961" @@ -6425,15 +4902,6 @@ http-parser-js@>=0.5.1: resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" integrity sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q== -http-proxy-agent@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" - integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== - dependencies: - "@tootallnate/once" "1" - agent-base "6" - debug "4" - http-proxy-middleware@^2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz#e1a4dd6979572c7ab5a4e4b55095d1f32a74963f" @@ -6473,28 +4941,6 @@ http-server@14.1.1: union "~0.5.0" url-join "^4.0.1" -http-signature@~1.3.6: - version "1.3.6" - resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.3.6.tgz#cb6fbfdf86d1c974f343be94e87f7fc128662cf9" - integrity sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw== - dependencies: - assert-plus "^1.0.0" - jsprim "^2.0.2" - sshpk "^1.14.1" - -https-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" - integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== - dependencies: - agent-base "6" - debug "4" - -human-signals@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" - integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== - human-signals@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" @@ -6521,7 +4967,7 @@ icss-utils@^4.0.0, icss-utils@^4.1.1: dependencies: postcss "^7.0.14" -ieee754@^1.1.12, ieee754@^1.1.13, ieee754@^1.2.1: +ieee754@^1.1.12, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -6641,20 +5087,6 @@ ipaddr.js@^2.0.1: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.0.1.tgz#eca256a7a877e917aeb368b0a7497ddf42ef81c0" integrity sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng== -is-accessor-descriptor@^0.1.6: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" - integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== - dependencies: - kind-of "^3.0.2" - -is-accessor-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" - integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== - dependencies: - kind-of "^6.0.0" - is-alphabetical@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" @@ -6700,11 +5132,6 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" -is-buffer@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" - integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== - is-buffer@^2.0.0: version "2.0.5" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" @@ -6722,13 +5149,6 @@ is-callable@^1.1.4, is-callable@^1.2.6: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== -is-ci@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867" - integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ== - dependencies: - ci-info "^3.2.0" - is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: version "2.10.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" @@ -6736,20 +5156,6 @@ is-core-module@^2.5.0, is-core-module@^2.8.1, is-core-module@^2.9.0: dependencies: has "^1.0.3" -is-data-descriptor@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" - integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== - dependencies: - kind-of "^3.0.2" - -is-data-descriptor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" - integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== - dependencies: - kind-of "^6.0.0" - is-date-object@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -6762,41 +5168,16 @@ is-decimal@^1.0.0: resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== -is-descriptor@^0.1.0: - version "0.1.6" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" - integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== - dependencies: - is-accessor-descriptor "^0.1.6" - is-data-descriptor "^0.1.4" - kind-of "^5.0.0" - -is-descriptor@^1.0.0, is-descriptor@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" - integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== - dependencies: - is-accessor-descriptor "^1.0.0" - is-data-descriptor "^1.0.0" - kind-of "^6.0.2" - is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== -is-extendable@^0.1.0, is-extendable@^0.1.1: +is-extendable@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== -is-extendable@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" - integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== - dependencies: - is-plain-object "^2.0.4" - is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -6807,11 +5188,6 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-generator-fn@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" - integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== - is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -6839,14 +5215,6 @@ is-in-browser@^1.1.3: resolved "https://registry.yarnpkg.com/is-in-browser/-/is-in-browser-1.1.3.tgz#56ff4db683a078c6082eb95dad7dc62e1d04f835" integrity sha512-FeXIBgG/CPGd/WUxuEyvgGTEfwiG9Z4EKGxjNMRqviiIIfsmgrpnHLffEDdwUHqNva1VEW91o3xBT/m8Elgl9g== -is-installed-globally@~0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" - integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ== - dependencies: - global-dirs "^3.0.0" - is-path-inside "^3.0.2" - is-interactive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" @@ -6869,23 +5237,11 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" -is-number@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" - integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== - dependencies: - kind-of "^3.0.2" - is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-path-inside@^3.0.2: - version "3.0.3" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" - integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== - is-plain-obj@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" @@ -6906,7 +5262,7 @@ is-plain-obj@^4.0.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== -is-plain-object@^2.0.3, is-plain-object@^2.0.4: +is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -6918,11 +5274,6 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" @@ -6962,16 +5313,11 @@ is-symbol@^1.0.2, is-symbol@^1.0.3: dependencies: has-symbols "^1.0.2" -is-typedarray@^1.0.0, is-typedarray@~1.0.0: +is-typedarray@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== -is-unicode-supported@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" - integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== - is-weakref@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz#9529f383a9338205e89765e0392efc2f100f06f2" @@ -6989,11 +5335,6 @@ is-window@^1.0.2: resolved "https://registry.yarnpkg.com/is-window/-/is-window-1.0.2.tgz#2c896ca53db97de45d3c33133a65d8c9f563480d" integrity sha512-uj00kdXyZb9t9RcAUAwMZAnkBUwdYGhYlt7djMXhfyhUCzwNba50tIiBKR7q0l7tdoBtFVw/3JmLY6fI3rmZmg== -is-windows@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" - integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== - is-word-character@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/is-word-character/-/is-word-character-1.0.4.tgz#ce0e73216f98599060592f62ff31354ddbeb0230" @@ -7011,7 +5352,7 @@ isarray@0.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== -isarray@1.0.0, isarray@~1.0.0: +isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== @@ -7021,14 +5362,7 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== -isobject@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" - integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== - dependencies: - isarray "1.0.0" - -isobject@^3.0.0, isobject@^3.0.1: +isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== @@ -7038,570 +5372,7 @@ isomorphic-base64@^1.0.2: resolved "https://registry.yarnpkg.com/isomorphic-base64/-/isomorphic-base64-1.0.2.tgz#f426aae82569ba8a4ec5ca73ad21a44ab1ee7803" integrity sha512-pQFyLwShVPA1Qr0dE1ZPguJkbOsFGDfSq6Wzz6XaO33v74X6/iQjgYPozwkeKGQxOI1/H3Fz7+ROtnV1veyKEg== -isstream@~0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" - integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== - -istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" - integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== - -istanbul-lib-instrument@^5.0.4, istanbul-lib-instrument@^5.1.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz#31d18bdd127f825dd02ea7bfdfd906f8ab840e9f" - integrity sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A== - dependencies: - "@babel/core" "^7.12.3" - "@babel/parser" "^7.14.7" - "@istanbuljs/schema" "^0.1.2" - istanbul-lib-coverage "^3.2.0" - semver "^6.3.0" - -istanbul-lib-report@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" - integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== - dependencies: - istanbul-lib-coverage "^3.0.0" - make-dir "^3.0.0" - supports-color "^7.1.0" - -istanbul-lib-source-maps@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" - integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== - dependencies: - debug "^4.1.1" - istanbul-lib-coverage "^3.0.0" - source-map "^0.6.1" - -istanbul-reports@^3.1.3: - version "3.1.5" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.5.tgz#cc9a6ab25cb25659810e4785ed9d9fb742578bae" - integrity sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w== - dependencies: - html-escaper "^2.0.0" - istanbul-lib-report "^3.0.0" - -iterm2-version@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/iterm2-version/-/iterm2-version-4.2.0.tgz#b78069f747f34a772bc7dc17bda5bd9ed5e09633" - integrity sha512-IoiNVk4SMPu6uTcK+1nA5QaHNok2BMDLjSl5UomrOixe5g4GkylhPwuiGdw00ysSCrXAKNMfFTu+u/Lk5f6OLQ== - dependencies: - app-path "^3.2.0" - plist "^3.0.1" - -jest-changed-files@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-27.5.1.tgz#a348aed00ec9bf671cc58a66fcbe7c3dfd6a68f5" - integrity sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw== - dependencies: - "@jest/types" "^27.5.1" - execa "^5.0.0" - throat "^6.0.1" - -jest-circus@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-circus/-/jest-circus-27.5.1.tgz#37a5a4459b7bf4406e53d637b49d22c65d125ecc" - integrity sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - dedent "^0.7.0" - expect "^27.5.1" - is-generator-fn "^2.0.0" - jest-each "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - slash "^3.0.0" - stack-utils "^2.0.3" - throat "^6.0.1" - -jest-cli@27.5.1, jest-cli@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-27.5.1.tgz#278794a6e6458ea8029547e6c6cbf673bd30b145" - integrity sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw== - dependencies: - "@jest/core" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - chalk "^4.0.0" - exit "^0.1.2" - graceful-fs "^4.2.9" - import-local "^3.0.2" - jest-config "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - prompts "^2.0.1" - yargs "^16.2.0" - -jest-config@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-27.5.1.tgz#5c387de33dca3f99ad6357ddeccd91bf3a0e4a41" - integrity sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA== - dependencies: - "@babel/core" "^7.8.0" - "@jest/test-sequencer" "^27.5.1" - "@jest/types" "^27.5.1" - babel-jest "^27.5.1" - chalk "^4.0.0" - ci-info "^3.2.0" - deepmerge "^4.2.2" - glob "^7.1.1" - graceful-fs "^4.2.9" - jest-circus "^27.5.1" - jest-environment-jsdom "^27.5.1" - jest-environment-node "^27.5.1" - jest-get-type "^27.5.1" - jest-jasmine2 "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-runner "^27.5.1" - jest-util "^27.5.1" - jest-validate "^27.5.1" - micromatch "^4.0.4" - parse-json "^5.2.0" - pretty-format "^27.5.1" - slash "^3.0.0" - strip-json-comments "^3.1.1" - -jest-diff@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da" - integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ== - dependencies: - chalk "^2.0.1" - diff-sequences "^24.9.0" - jest-get-type "^24.9.0" - pretty-format "^24.9.0" - -jest-diff@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-27.5.1.tgz#a07f5011ac9e6643cf8a95a462b7b1ecf6680def" - integrity sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw== - dependencies: - chalk "^4.0.0" - diff-sequences "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - -jest-diff@^29.1.0: - version "29.1.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-29.1.0.tgz#952639cd73fcf4d34173e2d98a0cd1c20c71ba88" - integrity sha512-ZJyWG30jpVHwxLs8xxR1so4tz6lFARNztnFlxssFpQdakaW0isSx9rAKs/6aQUKQDZ/DgSpY6HjUGLO9xkNdRw== - dependencies: - chalk "^4.0.0" - diff-sequences "^29.0.0" - jest-get-type "^29.0.0" - pretty-format "^29.1.0" - -jest-docblock@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-27.5.1.tgz#14092f364a42c6108d42c33c8cf30e058e25f6c0" - integrity sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ== - dependencies: - detect-newline "^3.0.0" - -jest-each@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-27.5.1.tgz#5bc87016f45ed9507fed6e4702a5b468a5b2c44e" - integrity sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ== - dependencies: - "@jest/types" "^27.5.1" - chalk "^4.0.0" - jest-get-type "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - -jest-emotion@11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/jest-emotion/-/jest-emotion-11.0.0.tgz#0131e60f5067c65c73981cd0565f777672cafb28" - integrity sha512-nw+iYPcHM+H5huUIsDh53uEIp6SrN5v+MOxa7qyXReae9foCTACDkFuF/1Hfkik/R8mDMir7q5QEiVMRJ0/f2Q== - -jest-environment-jsdom@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" - integrity sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - jest-util "^27.5.1" - jsdom "^16.6.0" - -jest-environment-node@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-27.5.1.tgz#dedc2cfe52fab6b8f5714b4808aefa85357a365e" - integrity sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - jest-mock "^27.5.1" - jest-util "^27.5.1" - -jest-get-type@^24.3.0, jest-get-type@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-24.9.0.tgz#1684a0c8a50f2e4901b6644ae861f579eed2ef0e" - integrity sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q== - -jest-get-type@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-27.5.1.tgz#3cd613c507b0f7ace013df407a1c1cd578bcb4f1" - integrity sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw== - -jest-get-type@^29.0.0: - version "29.0.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-29.0.0.tgz#843f6c50a1b778f7325df1129a0fd7aa713aef80" - integrity sha512-83X19z/HuLKYXYHskZlBAShO7UfLFXu/vWajw9ZNJASN32li8yHMaVGAQqxFW1RCFOkB7cubaL6FaJVQqqJLSw== - -jest-haste-map@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-27.5.1.tgz#9fd8bd7e7b4fa502d9c6164c5640512b4e811e7f" - integrity sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng== - dependencies: - "@jest/types" "^27.5.1" - "@types/graceful-fs" "^4.1.2" - "@types/node" "*" - anymatch "^3.0.3" - fb-watchman "^2.0.0" - graceful-fs "^4.2.9" - jest-regex-util "^27.5.1" - jest-serializer "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - micromatch "^4.0.4" - walker "^1.0.7" - optionalDependencies: - fsevents "^2.3.2" - -jest-image-snapshot@4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/jest-image-snapshot/-/jest-image-snapshot-4.2.0.tgz#559d7ade69e9918517269cef184261c80029a69e" - integrity sha512-6aAqv2wtfOgxiJeBayBCqHo1zX+A12SUNNzo7rIxiXh6W6xYVu8QyHWkada8HeRi+QUTHddp0O0Xa6kmQr+xbQ== - dependencies: - chalk "^1.1.3" - get-stdin "^5.0.1" - glur "^1.1.2" - lodash "^4.17.4" - mkdirp "^0.5.1" - pixelmatch "^5.1.0" - pngjs "^3.4.0" - rimraf "^2.6.2" - ssim.js "^3.1.1" - -jest-jasmine2@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz#a037b0034ef49a9f3d71c4375a796f3b230d1ac4" - integrity sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/source-map" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - co "^4.6.0" - expect "^27.5.1" - is-generator-fn "^2.0.0" - jest-each "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-runtime "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - pretty-format "^27.5.1" - throat "^6.0.1" - -jest-jquery-matchers@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/jest-jquery-matchers/-/jest-jquery-matchers-2.1.1.tgz#74c174b60bd0be550d285bf3ae65ffc5e19a8d30" - integrity sha512-WoYq+ZGvs2AS9PA7gD/obXn82RtjpQva2VZwq7PDLFz+6uXD5x/KMbVdMgeISeNcYWoDhuv9uTwW8qTNIrhUNQ== - -jest-leak-detector@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz#6ec9d54c3579dd6e3e66d70e3498adf80fde3fb8" - integrity sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ== - dependencies: - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - -jest-matcher-utils@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073" - integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA== - dependencies: - chalk "^2.0.1" - jest-diff "^24.9.0" - jest-get-type "^24.9.0" - pretty-format "^24.9.0" - -jest-matcher-utils@^27.0.0, jest-matcher-utils@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz#9c0cdbda8245bc22d2331729d1091308b40cf8ab" - integrity sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw== - dependencies: - chalk "^4.0.0" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - pretty-format "^27.5.1" - -jest-matcher-utils@^29.1.0: - version "29.1.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-29.1.0.tgz#60f53cc199921ece9170d3d20500ae0b93294928" - integrity sha512-pfthsLu27kZg+T1XTUGvox0r3gP3KtqdMPliVd/bs6iDrZ9Z6yJgLbw6zNc4DHtCcyzq9UW0jmszCX8DdFU/wA== - dependencies: - chalk "^4.0.0" - jest-diff "^29.1.0" - jest-get-type "^29.0.0" - pretty-format "^29.1.0" - -jest-message-util@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-24.9.0.tgz#527f54a1e380f5e202a8d1149b0ec872f43119e3" - integrity sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw== - dependencies: - "@babel/code-frame" "^7.0.0" - "@jest/test-result" "^24.9.0" - "@jest/types" "^24.9.0" - "@types/stack-utils" "^1.0.1" - chalk "^2.0.1" - micromatch "^3.1.10" - slash "^2.0.0" - stack-utils "^1.0.1" - -jest-message-util@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-27.5.1.tgz#bdda72806da10d9ed6425e12afff38cd1458b6cf" - integrity sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g== - dependencies: - "@babel/code-frame" "^7.12.13" - "@jest/types" "^27.5.1" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - micromatch "^4.0.4" - pretty-format "^27.5.1" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-message-util@^29.1.0: - version "29.1.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-29.1.0.tgz#0bb50a8064aa49999a6c313827e43bf51bd71dd1" - integrity sha512-NzGXD9wgCxUy20sIvyOsSA/KzQmkmagOVGE5LnT2juWn+hB88gCQr8N/jpu34CXRIXmV7INwrQVVwhnh72pY5A== - dependencies: - "@babel/code-frame" "^7.12.13" - "@jest/types" "^29.1.0" - "@types/stack-utils" "^2.0.0" - chalk "^4.0.0" - graceful-fs "^4.2.9" - micromatch "^4.0.4" - pretty-format "^29.1.0" - slash "^3.0.0" - stack-utils "^2.0.3" - -jest-mock@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-27.5.1.tgz#19948336d49ef4d9c52021d34ac7b5f36ff967d6" - integrity sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og== - dependencies: - "@jest/types" "^27.5.1" - "@types/node" "*" - -jest-pnp-resolver@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" - integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== - -jest-regex-util@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-24.9.0.tgz#c13fb3380bde22bf6575432c493ea8fe37965636" - integrity sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA== - -jest-regex-util@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-27.5.1.tgz#4da143f7e9fd1e542d4aa69617b38e4a78365b95" - integrity sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg== - -jest-resolve-dependencies@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz#d811ecc8305e731cc86dd79741ee98fed06f1da8" - integrity sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg== - dependencies: - "@jest/types" "^27.5.1" - jest-regex-util "^27.5.1" - jest-snapshot "^27.5.1" - -jest-resolve@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-27.5.1.tgz#a2f1c5a0796ec18fe9eb1536ac3814c23617b384" - integrity sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw== - dependencies: - "@jest/types" "^27.5.1" - chalk "^4.0.0" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-pnp-resolver "^1.2.2" - jest-util "^27.5.1" - jest-validate "^27.5.1" - resolve "^1.20.0" - resolve.exports "^1.1.0" - slash "^3.0.0" - -jest-runner@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-27.5.1.tgz#071b27c1fa30d90540805c5645a0ec167c7b62e5" - integrity sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ== - dependencies: - "@jest/console" "^27.5.1" - "@jest/environment" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - emittery "^0.8.1" - graceful-fs "^4.2.9" - jest-docblock "^27.5.1" - jest-environment-jsdom "^27.5.1" - jest-environment-node "^27.5.1" - jest-haste-map "^27.5.1" - jest-leak-detector "^27.5.1" - jest-message-util "^27.5.1" - jest-resolve "^27.5.1" - jest-runtime "^27.5.1" - jest-util "^27.5.1" - jest-worker "^27.5.1" - source-map-support "^0.5.6" - throat "^6.0.1" - -jest-runtime@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-27.5.1.tgz#4896003d7a334f7e8e4a53ba93fb9bcd3db0a1af" - integrity sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A== - dependencies: - "@jest/environment" "^27.5.1" - "@jest/fake-timers" "^27.5.1" - "@jest/globals" "^27.5.1" - "@jest/source-map" "^27.5.1" - "@jest/test-result" "^27.5.1" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - chalk "^4.0.0" - cjs-module-lexer "^1.0.0" - collect-v8-coverage "^1.0.0" - execa "^5.0.0" - glob "^7.1.3" - graceful-fs "^4.2.9" - jest-haste-map "^27.5.1" - jest-message-util "^27.5.1" - jest-mock "^27.5.1" - jest-regex-util "^27.5.1" - jest-resolve "^27.5.1" - jest-snapshot "^27.5.1" - jest-util "^27.5.1" - slash "^3.0.0" - strip-bom "^4.0.0" - -jest-serializer@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-27.5.1.tgz#81438410a30ea66fd57ff730835123dea1fb1f64" - integrity sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w== - dependencies: - "@types/node" "*" - graceful-fs "^4.2.9" - -jest-snapshot@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-27.5.1.tgz#b668d50d23d38054a51b42c4039cab59ae6eb6a1" - integrity sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA== - dependencies: - "@babel/core" "^7.7.2" - "@babel/generator" "^7.7.2" - "@babel/plugin-syntax-typescript" "^7.7.2" - "@babel/traverse" "^7.7.2" - "@babel/types" "^7.0.0" - "@jest/transform" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/babel__traverse" "^7.0.4" - "@types/prettier" "^2.1.5" - babel-preset-current-node-syntax "^1.0.0" - chalk "^4.0.0" - expect "^27.5.1" - graceful-fs "^4.2.9" - jest-diff "^27.5.1" - jest-get-type "^27.5.1" - jest-haste-map "^27.5.1" - jest-matcher-utils "^27.5.1" - jest-message-util "^27.5.1" - jest-util "^27.5.1" - natural-compare "^1.4.0" - pretty-format "^27.5.1" - semver "^7.3.2" - -jest-util@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-27.5.1.tgz#3ba9771e8e31a0b85da48fe0b0891fb86c01c2f9" - integrity sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw== - dependencies: - "@jest/types" "^27.5.1" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - -jest-util@^29.1.0: - version "29.1.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.1.0.tgz#e8a971dfb900bb85f090c752aa321b6912e81002" - integrity sha512-5haD8egMAEAq/e8ritN2Gr1WjLYtXi4udAIZB22GnKlv/2MHkbCjcyjgDBmyezAMMeQKGfoaaDsWCmVlnHZ1WQ== - dependencies: - "@jest/types" "^29.1.0" - "@types/node" "*" - chalk "^4.0.0" - ci-info "^3.2.0" - graceful-fs "^4.2.9" - picomatch "^2.2.3" - -jest-validate@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-27.5.1.tgz#9197d54dc0bdb52260b8db40b46ae668e04df067" - integrity sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ== - dependencies: - "@jest/types" "^27.5.1" - camelcase "^6.2.0" - chalk "^4.0.0" - jest-get-type "^27.5.1" - leven "^3.1.0" - pretty-format "^27.5.1" - -jest-watcher@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-27.5.1.tgz#71bd85fb9bde3a2c2ec4dc353437971c43c642a2" - integrity sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw== - dependencies: - "@jest/test-result" "^27.5.1" - "@jest/types" "^27.5.1" - "@types/node" "*" - ansi-escapes "^4.2.1" - chalk "^4.0.0" - jest-util "^27.5.1" - string-length "^4.0.1" - -jest-worker@^27.4.5, jest-worker@^27.5.1: +jest-worker@^27.4.5: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0" integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg== @@ -7610,27 +5381,7 @@ jest-worker@^27.4.5, jest-worker@^27.5.1: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-27.5.1.tgz#dadf33ba70a779be7a6fc33015843b51494f63fc" - integrity sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ== - dependencies: - "@jest/core" "^27.5.1" - import-local "^3.0.2" - jest-cli "^27.5.1" - -joi@^17.4.0: - version "17.6.2" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.6.2.tgz#00ac55ce6495596545cce45309f38738cfbd7cd3" - integrity sha512-+gqqdh1xc1wb+Lor0J9toqgeReyDOCqOdG8QSdRcEvwrcRiFQZneUCGKjFjuyBWUb3uaFOgY56yMaZ5FIc+H4w== - dependencies: - "@hapi/hoek" "^9.0.0" - "@hapi/topo" "^5.0.0" - "@sideway/address" "^4.1.3" - "@sideway/formula" "^3.0.0" - "@sideway/pinpoint" "^2.0.0" - -jquery@^3.4.0, jquery@^3.6.0: +jquery@^3.6.0: version "3.6.1" resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.6.1.tgz#fab0408f8b45fc19f956205773b62b292c147a16" integrity sha512-opJeO4nCucVnsjiXOE+/PcCgYw9Gwpvs/a6B1LL/lQhwWwpbVEVYDZ1FokFr8PRc7ghYlrFPuyHuiiDNTQxmcw== @@ -7675,44 +5426,6 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -jsbn@~0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" - integrity sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg== - -jsdom@^16.6.0: - version "16.7.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" - integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== - dependencies: - abab "^2.0.5" - acorn "^8.2.4" - acorn-globals "^6.0.0" - cssom "^0.4.4" - cssstyle "^2.3.0" - data-urls "^2.0.0" - decimal.js "^10.2.1" - domexception "^2.0.1" - escodegen "^2.0.0" - form-data "^3.0.0" - html-encoding-sniffer "^2.0.1" - http-proxy-agent "^4.0.1" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^2.0.0" - webidl-conversions "^6.1.0" - whatwg-encoding "^1.0.5" - whatwg-mimetype "^2.3.0" - whatwg-url "^8.5.0" - ws "^7.4.6" - xml-name-validator "^3.0.0" - jsesc@^2.5.1: version "2.5.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" @@ -7743,11 +5456,6 @@ json-schema-traverse@^1.0.0: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== -json-schema@0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" - integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== - json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -7758,7 +5466,7 @@ json-stringify-pretty-compact@^2.0.0: resolved "https://registry.yarnpkg.com/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz#e77c419f52ff00c45a31f07f4c820c2433143885" integrity sha512-WRitRfs6BGq4q8gTgOy4ek7iPFXjbra0H3PmDLKm2xnZ+Gh1HUhiKGgCZkSPNULlP7mvfu6FV/mOLhCarspADQ== -json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: +json-stringify-safe@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== @@ -7775,13 +5483,6 @@ json5@^2.1.2, json5@^2.2.1: resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== -jsonfile@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" - integrity sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg== - optionalDependencies: - graceful-fs "^4.1.6" - jsonfile@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" @@ -7791,16 +5492,6 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" -jsprim@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-2.0.2.tgz#77ca23dbcd4135cd364800d22ff82c2185803d4d" - integrity sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ== - dependencies: - assert-plus "1.0.0" - extsprintf "1.3.0" - json-schema "0.4.0" - verror "1.10.0" - "jsx-ast-utils@^2.4.1 || ^3.0.0": version "3.3.3" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz#76b3e6e6cece5c69d49a5792c3d01bd1a0cdc7ea" @@ -7814,35 +5505,11 @@ jwt-decode@3.1.2: resolved "https://registry.yarnpkg.com/jwt-decode/-/jwt-decode-3.1.2.tgz#3fb319f3675a2df0c2895c8f5e9fa4b67b04ed59" integrity sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A== -kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: - version "3.2.2" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" - integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== - dependencies: - is-buffer "^1.1.5" - -kind-of@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" - integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== - dependencies: - is-buffer "^1.1.5" - -kind-of@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" - integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== - kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== -kleur@^3.0.3: - version "3.0.3" - resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" - integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== - kleur@^4.0.3: version "4.1.5" resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" @@ -7866,21 +5533,11 @@ ky@^0.16.0: resolved "https://registry.yarnpkg.com/ky/-/ky-0.16.2.tgz#e3652262ab659b27780dd025d1524e40572034a8" integrity sha512-4/Xcb0hqeueNX9sa+G2jREiam9yb+I2Y3p3J42lIeitAenHXUZwpyejEgeQcQsaGl+hbuA0s7c3u+nlcIYFtog== -lazy-ass@1.6.0, lazy-ass@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/lazy-ass/-/lazy-ass-1.6.0.tgz#7999655e8646c17f089fdd187d150d3324d54513" - integrity sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw== - lerc@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lerc/-/lerc-3.0.0.tgz#36f36fbd4ba46f0abf4833799fff2e7d6865f5cb" integrity sha512-Rm4J/WaHhRa93nCN2mwWDZFoRVF18G1f47C+kvQWyHGEZxFpTUi73p7lMVSAndyxGt6lJ2/CFbOcf9ra5p8aww== -leven@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" - integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -7889,14 +5546,6 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -levn@~0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" - integrity sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA== - dependencies: - prelude-ls "~1.1.2" - type-check "~0.3.2" - li@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/li/-/li-1.3.0.tgz#22c59bcaefaa9a8ef359cf759784e4bf106aea1b" @@ -7914,20 +5563,6 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -listr2@^3.8.3: - version "3.14.0" - resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.14.0.tgz#23101cc62e1375fd5836b248276d1d2b51fdbe9e" - integrity sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g== - dependencies: - cli-truncate "^2.1.0" - colorette "^2.0.16" - log-update "^4.0.0" - p-map "^4.0.0" - rfdc "^1.3.0" - rxjs "^7.5.1" - through "^2.3.8" - wrap-ansi "^7.0.0" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -7968,14 +5603,6 @@ localforage@1.10.0: dependencies: lie "3.1.1" -locate-path@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" - integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== - dependencies: - p-locate "^3.0.0" - path-exists "^3.0.0" - locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -8020,11 +5647,6 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.once@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" - integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== - lodash.set@^4.3.2: version "4.3.2" resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" @@ -8040,7 +5662,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash@4.17.21, lodash@^4.0.1, lodash@^4.1.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0: +lodash@4.17.21, lodash@^4.0.1, lodash@^4.1.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.4: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -8052,24 +5674,6 @@ log-symbols@^3.0.0: dependencies: chalk "^2.4.2" -log-symbols@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" - integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== - dependencies: - chalk "^4.1.0" - is-unicode-supported "^0.1.0" - -log-update@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" - integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== - dependencies: - ansi-escapes "^4.3.0" - cli-cursor "^3.1.0" - slice-ansi "^4.0.0" - wrap-ansi "^6.2.0" - longest-streak@^2.0.1: version "2.0.4" resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-2.0.4.tgz#b8599957da5b5dab64dee3fe316fa774597d90e4" @@ -8094,11 +5698,6 @@ lru-cache@^6.0.0: dependencies: yallist "^4.0.0" -lz-string@^1.4.4: - version "1.4.4" - resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" - integrity sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ== - macos-release@^2.2.0: version "2.5.0" resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.5.0.tgz#067c2c88b5f3fb3c56a375b2ec93826220fa1ff2" @@ -8112,25 +5711,13 @@ make-dir@^2.1.0: pify "^4.0.1" semver "^5.6.0" -make-dir@^3.0.0, make-dir@^3.0.2, make-dir@^3.1.0: +make-dir@^3.0.2, make-dir@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== dependencies: semver "^6.0.0" -makeerror@1.0.12: - version "1.0.12" - resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" - integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== - dependencies: - tmpl "1.0.5" - -map-cache@^0.2.2: - version "0.2.2" - resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" - integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== - map-obj@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -8141,18 +5728,6 @@ map-obj@^4.0.0: resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== -map-stream@~0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194" - integrity sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g== - -map-visit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" - integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== - dependencies: - object-visit "^1.0.0" - mapbox-to-css-font@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/mapbox-to-css-font/-/mapbox-to-css-font-2.4.1.tgz#41bf38faed36b7dab069828aa3654e4bd91a1eda" @@ -8734,25 +6309,6 @@ micromark@~2.11.0: debug "^4.0.0" parse-entities "^2.0.0" -micromatch@^3.1.10: - version "3.1.10" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" - integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - 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" - micromatch@^4.0.0, micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5: version "4.0.5" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" @@ -8766,7 +6322,7 @@ mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -8838,20 +6394,12 @@ minimist-options@4.1.0: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@>=1.2.2, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6: +minimist@>=1.2.2, minimist@^1.2.0, minimist@^1.2.6: version "1.2.6" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== -mixin-deep@^1.2.0: - version "1.3.2" - resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" - integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== - dependencies: - for-in "^1.0.2" - is-extendable "^1.0.1" - -mkdirp@^0.5.1, mkdirp@^0.5.6, mkdirp@~0.5.1: +mkdirp@^0.5.6, mkdirp@~0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== @@ -8919,23 +6467,6 @@ nanoid@^3.3.4: resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab" integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw== -nanomatch@^1.2.9: - version "1.2.13" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" - integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== - dependencies: - arr-diff "^4.0.0" - array-unique "^0.3.2" - 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" - natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -8993,11 +6524,6 @@ node-gyp-build@^4.3.0: resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.5.0.tgz#7a64eefa0b21112f89f58379da128ac177f20e40" integrity sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg== -node-int64@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" - integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== - node-polyglot@2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/node-polyglot/-/node-polyglot-2.4.2.tgz#e4876e6710b70dc00b1351a9a68de4af47a5d61d" @@ -9061,7 +6587,7 @@ npm-run-path@^2.0.0: dependencies: path-key "^2.0.0" -npm-run-path@^4.0.0, npm-run-path@^4.0.1: +npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -9082,25 +6608,11 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" -nwsapi@^2.2.0: - version "2.2.2" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.2.tgz#e5418863e7905df67d51ec95938d67bf801f0bb0" - integrity sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw== - object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-copy@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" - integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== - dependencies: - copy-descriptor "^0.1.0" - define-property "^0.2.5" - kind-of "^3.0.3" - object-inspect@^1.12.2, object-inspect@^1.9.0: version "1.12.2" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.2.tgz#c0641f26394532f28ab8d796ab954e43c009a8ea" @@ -9111,13 +6623,6 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -object-visit@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" - integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== - dependencies: - isobject "^3.0.0" - object.assign@^4.1.0, object.assign@^4.1.3, object.assign@^4.1.4: version "4.1.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz#9673c7c7c351ab8c4d0b516f4343ebf4dfb7799f" @@ -9164,13 +6669,6 @@ object.hasown@^1.1.1: define-properties "^1.1.4" es-abstract "^1.19.5" -object.pick@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" - integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== - dependencies: - isobject "^3.0.1" - object.values@^1.1.0, object.values@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" @@ -9255,18 +6753,6 @@ optimism@^0.10.0: dependencies: "@wry/context" "^0.4.0" -optionator@^0.8.1: - version "0.8.3" - resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" - integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== - dependencies: - deep-is "~0.1.3" - fast-levenshtein "~2.0.6" - levn "~0.3.0" - prelude-ls "~1.1.2" - type-check "~0.3.2" - word-wrap "~1.2.3" - optionator@^0.9.1: version "0.9.1" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" @@ -9301,17 +6787,12 @@ os-name@^3.1.0: macos-release "^2.2.0" windows-release "^3.1.0" -ospath@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/ospath/-/ospath-1.2.2.tgz#1276639774a3f8ef2572f7fe4280e0ea4550c07b" - integrity sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA== - p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== -p-limit@^2.0.0, p-limit@^2.2.0: +p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -9325,13 +6806,6 @@ p-limit@^3.0.2: dependencies: yocto-queue "^0.1.0" -p-locate@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" - integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== - dependencies: - p-limit "^2.0.0" - p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -9346,13 +6820,6 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" -p-map@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" - integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== - dependencies: - aggregate-error "^3.0.0" - p-retry@^4.5.0: version "4.6.2" resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" @@ -9415,7 +6882,7 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parse-json@^5.0.0, parse-json@^5.2.0: +parse-json@^5.0.0: version "5.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== @@ -9425,11 +6892,6 @@ parse-json@^5.0.0, parse-json@^5.2.0: json-parse-even-better-errors "^2.3.0" lines-and-columns "^1.1.6" -parse5@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - parse5@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.1.tgz#f68e4e5ba1852ac2cadc00f4555fff6c2abb6178" @@ -9440,21 +6902,11 @@ parseurl@~1.3.2, parseurl@~1.3.3: resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -pascalcase@^0.1.1: - version "0.1.1" - resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" - integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== - path-browserify@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== -path-exists@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" - integrity sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ== - path-exists@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" @@ -9504,13 +6956,6 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== -pause-stream@0.0.11: - version "0.0.11" - resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445" - integrity sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A== - dependencies: - through "~2.3" - pbf@3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/pbf/-/pbf-3.2.1.tgz#b4c1b9e72af966cd82c6531691115cc0409ffe2a" @@ -9519,16 +6964,6 @@ pbf@3.2.1: ieee754 "^1.1.12" resolve-protobuf-schema "^2.1.0" -pend@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" - integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== - -performance-now@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" - integrity sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow== - picocolors@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-0.2.1.tgz#570670f793646851d1ba135996962abad587859f" @@ -9539,7 +6974,7 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== @@ -9549,11 +6984,6 @@ pidtree@^0.3.0: resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a" integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA== -pify@^2.2.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" - integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog== - pify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" @@ -9564,25 +6994,6 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pirates@^4.0.4: - version "4.0.5" - resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.5.tgz#feec352ea5c3268fb23a37c702ab1699f35a5f3b" - integrity sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ== - -pixelmatch@^5.1.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/pixelmatch/-/pixelmatch-5.3.0.tgz#5e5321a7abedfb7962d60dbf345deda87cb9560a" - integrity sha512-o8mkY4E/+LNUf6LzX96ht6k6CEDi65k9G2rjMtBe9Oo+VPKSvl+0GKHuH/AlG+GA5LPG/i5hrekkxUc3s2HU+Q== - dependencies: - pngjs "^6.0.0" - -pkg-dir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" - integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== - dependencies: - find-up "^3.0.0" - pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -9590,34 +7001,11 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" -platform@1.3.3: - version "1.3.3" - resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.3.tgz#646c77011899870b6a0903e75e997e8e51da7461" - integrity sha512-VJK1SRmXBpjwsB4YOHYSturx48rLKMzHgCqDH2ZDa6ZbMS/N5huoNqyQdK5Fj/xayu3fqbXckn5SeCS1EbMDZg== - -plist@^3.0.1: - version "3.0.6" - resolved "https://registry.yarnpkg.com/plist/-/plist-3.0.6.tgz#7cfb68a856a7834bca6dbfe3218eb9c7740145d3" - integrity sha512-WiIVYyrp8TD4w8yCvyeIr+lkmrGRd5u0VbRnU+tP/aRLxP/YadJUYOMZJ/6hIa3oUyVCsycXvtNRgd5XBJIbiA== - dependencies: - base64-js "^1.5.1" - xmlbuilder "^15.1.1" - pluralize@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-8.0.0.tgz#1a6fa16a38d12a1901e0320fa017051c539ce3b1" integrity sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== -pngjs@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-3.4.0.tgz#99ca7d725965fb655814eaf65f38f12bbdbf555f" - integrity sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w== - -pngjs@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-6.0.0.tgz#ca9e5d2aa48db0228a52c419c3308e87720da821" - integrity sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28K/m5bjBWKsC29KyoMfHbypayg== - pop-iterate@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/pop-iterate/-/pop-iterate-1.0.1.tgz#ceacfdab4abf353d7a0f2aaa2c1fc7b3f9413ba3" @@ -9632,11 +7020,6 @@ portfinder@^1.0.28: debug "^3.2.7" mkdirp "^0.5.6" -posix-character-classes@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" - integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== - postcss-media-query-parser@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" @@ -9725,11 +7108,6 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prelude-ls@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" - integrity sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w== - prettier-linter-helpers@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" @@ -9742,39 +7120,6 @@ prettier@2.7.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64" integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g== -pretty-bytes@^5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.6.0.tgz#356256f643804773c82f64723fe78c92c62beaeb" - integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg== - -pretty-format@^24.9.0: - version "24.9.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" - integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== - dependencies: - "@jest/types" "^24.9.0" - ansi-regex "^4.0.0" - ansi-styles "^3.2.0" - react-is "^16.8.4" - -pretty-format@^27.0.0, pretty-format@^27.0.2, pretty-format@^27.5.1: - version "27.5.1" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.5.1.tgz#2181879fdea51a7a5851fb39d920faa63f01d88e" - integrity sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ== - dependencies: - ansi-regex "^5.0.1" - ansi-styles "^5.0.0" - react-is "^17.0.1" - -pretty-format@^29.0.0, pretty-format@^29.1.0: - version "29.1.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-29.1.0.tgz#ea3de2feed5b8d19c537a12fe478ddc8b45da6b8" - integrity sha512-dZ21z0UjKVSiEkrPAt2nJnGfrtYMFBlNW4wTkJsIp9oB5A8SUQ8DuJ9EUgAvYyNfMeoGmKiDnpJvM489jkzdSQ== - dependencies: - "@jest/schemas" "^29.0.0" - ansi-styles "^5.0.0" - react-is "^18.0.0" - process-nextick-args@~2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" @@ -9785,14 +7130,6 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== -prompts@^2.0.1: - version "2.4.2" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" - integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== - dependencies: - kleur "^3.0.3" - sisteransi "^1.0.5" - prop-types@15.8.1, prop-types@^15.0.0, prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.7, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" @@ -9827,23 +7164,6 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" -proxy-from-env@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee" - integrity sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A== - -ps-tree@1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/ps-tree/-/ps-tree-1.2.0.tgz#5e7425b89508736cdd4f2224d028f7bb3f722ebd" - integrity sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA== - dependencies: - event-stream "=3.3.4" - -psl@^1.1.28, psl@^1.1.33: - version "1.9.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" - integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== - pump@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -9857,7 +7177,7 @@ punycode@1.3.2: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== -punycode@^2.1.0, punycode@^2.1.1: +punycode@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== @@ -9890,11 +7210,6 @@ qs@^6.4.0: dependencies: side-channel "^1.0.4" -qs@~6.5.2: - version "6.5.3" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" - integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== - query-string@^6.9.0: version "6.14.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" @@ -9910,11 +7225,6 @@ querystring@0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - queue-microtask@^1.2.2: version "1.2.3" resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" @@ -10058,12 +7368,12 @@ react-is@18.2.0, "react-is@^17.0.1 || ^18.0.0", react-is@^18.0.0, react-is@^18.2 resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== -react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0, react-is@^16.8.4, react-is@^16.8.6: +react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-is@^17.0.0, react-is@^17.0.1: +react-is@^17.0.0: version "17.0.2" resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== @@ -10217,16 +7527,6 @@ react-svg-loader@3.0.3: loader-utils "^1.2.3" react-svg-core "^3.0.3" -react-test-renderer@16.14.0: - version "16.14.0" - resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.14.0.tgz#e98360087348e260c56d4fe2315e970480c228ae" - integrity sha512-L8yPjqPE5CZO6rKsKXRO/rVPiaCOy0tQQJbC+UjPNlobl5mad59lvPjwFsQHTvL03caVDIVr9x9/OSgDe6I5Eg== - dependencies: - object-assign "^4.1.1" - prop-types "^15.6.2" - react-is "^16.8.6" - scheduler "^0.19.1" - react-textarea-autosize@8.3.4: version "8.3.4" resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.3.4.tgz#270a343de7ad350534141b02c9cb78903e553524" @@ -10409,14 +7709,6 @@ regenerator-transform@^0.15.0: dependencies: "@babel/runtime" "^7.8.4" -regex-not@^1.0.0, regex-not@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" - integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== - dependencies: - extend-shallow "^3.0.2" - safe-regex "^1.1.0" - regexp-tree@^0.1.24, regexp-tree@~0.1.1: version "0.1.24" resolved "https://registry.yarnpkg.com/regexp-tree/-/regexp-tree-0.1.24.tgz#3d6fa238450a4d66e5bc9c4c14bb720e2196829d" @@ -10586,11 +7878,6 @@ remark-stringify@6.0.4: unherit "^1.0.4" xtend "^4.0.1" -repeat-element@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" - integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== - repeat-string@^1.0.0, repeat-string@^1.5.4, repeat-string@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" @@ -10601,18 +7888,6 @@ replace-ext@1.0.0: resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" integrity sha512-vuNYXC7gG7IeVNBC1xUllqCcZKRbJoSPOBhnTEcAIiKCsbuef6zO3F0Rve3isPMMoNoQRWjQwbAgAjHUHniyEA== -request-progress@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" - integrity sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg== - dependencies: - throttleit "^1.0.0" - -require-directory@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" - integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== - require-from-string@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" @@ -10662,16 +7937,6 @@ resolve-protobuf-schema@^2.1.0: dependencies: protocol-buffers-schema "^3.3.1" -resolve-url@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" - integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== - -resolve.exports@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/resolve.exports/-/resolve.exports-1.1.0.tgz#5ce842b94b05146c0e03076985d1d0e7e48c90c9" - integrity sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ== - resolve@^1.10.0, resolve@^1.14.2, resolve@^1.19.0, resolve@^1.20.0, resolve@^1.22.0, resolve@^1.9.0: version "1.22.1" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" @@ -10698,11 +7963,6 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" -ret@~0.1.10: - version "0.1.15" - resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" - integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== - retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -10713,12 +7973,7 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rfdc@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b" - integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA== - -rimraf@3.0.2, rimraf@^3.0.0, rimraf@^3.0.2: +rimraf@3.0.2, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -10744,13 +7999,6 @@ rw@^1.3.3: resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4" integrity sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ== -rxjs@^7.1.0, rxjs@^7.5.1: - version "7.5.7" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.5.7.tgz#2ec0d57fdc89ece220d2e702730ae8f1e49def39" - integrity sha512-z9MzKh/UcOqB3i20H6rtrlaE/CgjLOvheWK/9ILrbhROGTweAi1BaFsTT9FbwZi5Trr1qNRs+MXkhmR06awzQA== - dependencies: - tslib "^2.1.0" - sade@^1.7.3: version "1.8.1" resolved "https://registry.yarnpkg.com/sade/-/sade-1.8.1.tgz#0a78e81d658d394887be57d2a409bf703a3b2701" @@ -10763,7 +8011,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -10777,13 +8025,6 @@ safe-regex-test@^1.0.0: get-intrinsic "^1.1.3" is-regex "^1.1.4" -safe-regex@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" - integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== - dependencies: - ret "~0.1.10" - safe-regex@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-2.1.1.tgz#f7128f00d056e2fe5c11e81a1324dd974aadced2" @@ -10791,7 +8032,7 @@ safe-regex@^2.1.1: dependencies: regexp-tree "~0.1.1" -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -10808,21 +8049,6 @@ sax@~1.2.4: resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - -scheduler@^0.19.1: - version "0.19.1" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" - integrity sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA== - dependencies: - loose-envify "^1.1.0" - object-assign "^4.1.1" - scheduler@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" @@ -10904,7 +8130,7 @@ semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== -semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7: +semver@^7.3.4, semver@^7.3.5, semver@^7.3.7: version "7.3.7" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== @@ -10960,16 +8186,6 @@ serve-static@1.15.0: parseurl "~1.3.3" send "0.18.0" -set-value@^2.0.0, set-value@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" - integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== - dependencies: - extend-shallow "^2.0.1" - is-extendable "^0.1.1" - is-plain-object "^2.0.3" - split-string "^3.0.1" - setprototypeof@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" @@ -11044,11 +8260,6 @@ simple-git@3.14.1: "@kwsites/promise-deferred" "^1.1.1" debug "^4.3.4" -sisteransi@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" - integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== - slash@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" @@ -11149,15 +8360,6 @@ slate@0.47.9: tiny-warning "^0.0.3" type-of "^2.0.1" -slice-ansi@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" - integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== - dependencies: - ansi-styles "^4.0.0" - astral-regex "^2.0.0" - is-fullwidth-code-point "^3.0.0" - slice-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" @@ -11167,36 +8369,6 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -snapdragon-node@^2.0.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" - integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== - dependencies: - define-property "^1.0.0" - isobject "^3.0.0" - snapdragon-util "^3.0.1" - -snapdragon-util@^3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" - integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== - dependencies: - kind-of "^3.2.0" - -snapdragon@^0.8.1: - version "0.8.2" - resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" - integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== - dependencies: - base "^0.11.1" - debug "^2.2.0" - 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" - sockjs@^0.3.24: version "0.3.24" resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce" @@ -11238,18 +8410,7 @@ source-map-loader@^4.0.0: iconv-lite "^0.6.3" source-map-js "^1.0.2" -source-map-resolve@^0.5.0: - version "0.5.3" - resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" - integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== - dependencies: - atob "^2.1.2" - decode-uri-component "^0.2.0" - resolve-url "^0.2.1" - source-map-url "^0.4.0" - urix "^0.1.0" - -source-map-support@^0.5.6, source-map-support@~0.5.20: +source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== @@ -11257,17 +8418,12 @@ source-map-support@^0.5.6, source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" -source-map-url@^0.4.0: - version "0.4.1" - resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" - integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== - -source-map@^0.5.6, source-map@^0.5.7: +source-map@^0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== -source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: +source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== @@ -11336,90 +8492,21 @@ split-on-first@^1.0.0: resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== -split-string@^3.0.1, split-string@^3.0.2: - version "3.1.0" - resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" - integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== - dependencies: - extend-shallow "^3.0.0" - -split@0.3: - version "0.3.3" - resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f" - integrity sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA== - dependencies: - through "2" - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -sshpk@^1.14.1: - version "1.17.0" - resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.17.0.tgz#578082d92d4fe612b13007496e543fa0fbcbe4c5" - integrity sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ== - dependencies: - 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" - -ssim.js@^3.1.1: - version "3.5.0" - resolved "https://registry.yarnpkg.com/ssim.js/-/ssim.js-3.5.0.tgz#d7276b9ee99b57a5ff0db34035f02f35197e62df" - integrity sha512-Aj6Jl2z6oDmgYFFbQqK7fght19bXdOxY7Tj03nF+03M9gCBAjeIiO8/PlEGMfKDwYpw4q6iBqVq2YuREorGg/g== - stable@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== -stack-utils@^1.0.1: - version "1.0.5" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.5.tgz#a19b0b01947e0029c8e451d5d61a498f5bb1471b" - integrity sha512-KZiTzuV3CnSnSvgMRrARVCj+Ht7rMbauGDK0LdVFRGyenwdylpajAp4Q0i6SX8rEmbTpMMf6ryq2gb8pPq2WgQ== - dependencies: - escape-string-regexp "^2.0.0" - -stack-utils@^2.0.3: - version "2.0.5" - resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" - integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== - dependencies: - escape-string-regexp "^2.0.0" - -start-server-and-test@1.14.0: - version "1.14.0" - resolved "https://registry.yarnpkg.com/start-server-and-test/-/start-server-and-test-1.14.0.tgz#c57f04f73eac15dd51733b551d775b40837fdde3" - integrity sha512-on5ELuxO2K0t8EmNj9MtVlFqwBMxfWOhu4U7uZD1xccVpFlOQKR93CSe0u98iQzfNxRyaNTb/CdadbNllplTsw== - dependencies: - bluebird "3.7.2" - check-more-types "2.24.0" - debug "4.3.2" - execa "5.1.1" - lazy-ass "1.6.0" - ps-tree "1.2.0" - wait-on "6.0.0" - state-toggle@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.3.tgz#e123b16a88e143139b09c6852221bc9815917dfe" integrity sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ== -static-extend@^0.1.1: - version "0.1.2" - resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" - integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== - dependencies: - define-property "^0.2.5" - object-copy "^0.1.0" - statuses@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -11438,27 +8525,12 @@ stream-browserify@3.0.0: inherits "~2.0.4" readable-stream "^3.5.0" -stream-combiner@~0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14" - integrity sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw== - dependencies: - duplexer "~0.1.1" - strict-uri-encode@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" integrity sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ== -string-length@^4.0.1: - version "4.0.2" - resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" - integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== - dependencies: - char-regex "^1.0.2" - strip-ansi "^6.0.0" - -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -11579,11 +8651,6 @@ strip-bom@^3.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" integrity sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA== -strip-bom@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" - integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== - strip-eof@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" @@ -11741,14 +8808,14 @@ supports-color@^7.0.0, supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^8.0.0, supports-color@^8.1.1: +supports-color@^8.0.0: version "8.1.1" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== dependencies: has-flag "^4.0.0" -supports-hyperlinks@^2.0.0, supports-hyperlinks@^2.3.0: +supports-hyperlinks@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== @@ -11803,11 +8870,6 @@ symbol-observable@^1.0.2: resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - sywac@^1.2.2: version "1.3.0" resolved "https://registry.yarnpkg.com/sywac/-/sywac-1.3.0.tgz#324789bdb8bd7d0d66625c9144fce81ab5ba6f99" @@ -11834,22 +8896,6 @@ teeny-tap@^0.2.0: resolved "https://registry.yarnpkg.com/teeny-tap/-/teeny-tap-0.2.0.tgz#167e645182d06ac222d62bb2ab67947a70a58a68" integrity sha512-HnA3I2sxRQe/SZgQTQgQvvA17DhfzhBJ1LfSOXZ5VUTbxGLvnAqUef84ZGNNSEbk1ZMEIDeghTHZagJ7LifAgg== -term-img@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/term-img/-/term-img-4.1.0.tgz#5b170961f7aa20b2f3b22deb8ad504beb963a8a5" - integrity sha512-DFpBhaF5j+2f7kheKFc1ajsAUUDGOaNPpKPtiIMxlbfud6mvfFZuWGnTRpaujUa5J7yl6cIw/h6nyr4mSsENPg== - dependencies: - ansi-escapes "^4.1.0" - iterm2-version "^4.1.0" - -terminal-link@^2.0.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" - integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== - dependencies: - ansi-escapes "^4.2.1" - supports-hyperlinks "^2.0.0" - terser-webpack-plugin@^5.1.3: version "5.3.6" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz#5590aec31aa3c6f771ce1b1acca60639eab3195c" @@ -11871,35 +8917,11 @@ terser@^5.14.1: commander "^2.20.0" source-map-support "~0.5.20" -test-exclude@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" - integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== - dependencies: - "@istanbuljs/schema" "^0.1.2" - glob "^7.1.4" - minimatch "^3.0.4" - text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== -throat@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/throat/-/throat-6.0.1.tgz#d514fedad95740c12c2d7fc70ea863eb51ade375" - integrity sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w== - -throttleit@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c" - integrity sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g== - -through@2, through@^2.3.8, through@~2.3, through@~2.3.1: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - integrity sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg== - thunky@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" @@ -11925,18 +8947,6 @@ tinycolor2@^1.4.1: resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803" integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA== -tmp@~0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.1.tgz#8457fc3037dcf4719c251367a1af6500ee1ccf14" - integrity sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ== - dependencies: - rimraf "^3.0.0" - -tmpl@1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" - integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== - to-fast-properties@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" @@ -11947,21 +8957,6 @@ to-fast-properties@^2.0.0: resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== -to-object-path@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" - integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== - dependencies: - kind-of "^3.0.2" - -to-regex-range@^2.1.0: - version "2.1.1" - resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" - integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== - dependencies: - is-number "^3.0.0" - repeat-string "^1.6.1" - to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -11969,16 +8964,6 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -to-regex@^3.0.1, to-regex@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" - integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== - dependencies: - define-property "^2.0.2" - extend-shallow "^3.0.2" - regex-not "^1.0.2" - safe-regex "^1.1.0" - to-string-loader@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/to-string-loader/-/to-string-loader-1.2.0.tgz#4364aa044b9aa876473f4d7a36ef7d216a276e9c" @@ -12001,31 +8986,6 @@ topbar@^0.1.3: resolved "https://registry.yarnpkg.com/topbar/-/topbar-0.1.4.tgz#d050e536ef5053d9629499ed71008b88cb2398fb" integrity sha512-P3n4WnN4GFd2mQXDo30rQmsAGe4V1bVkggtTreSbNyL50Fyc+eVkW5oatSLeGQmJoan2TLIgoXUZypN+6nw4MQ== -tough-cookie@^4.0.0: - version "4.1.2" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.2.tgz#e53e84b85f24e0b65dd526f46628db6c85f6b874" - integrity sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tough-cookie@~2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" - integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== - dependencies: - psl "^1.1.28" - punycode "^2.1.1" - -tr46@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" - integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== - dependencies: - punycode "^2.1.1" - tr46@~0.0.3: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" @@ -12117,18 +9077,6 @@ tsutils@^3.21.0: dependencies: tslib "^1.8.1" -tunnel-agent@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" - integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== - dependencies: - safe-buffer "^5.0.1" - -tweetnacl@^0.14.3, tweetnacl@~0.14.0: - version "0.14.5" - resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" - integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== - type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -12136,18 +9084,6 @@ type-check@^0.4.0, type-check@~0.4.0: dependencies: prelude-ls "^1.2.1" -type-check@~0.3.2: - version "0.3.2" - resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" - integrity sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg== - dependencies: - prelude-ls "~1.1.2" - -type-detect@4.0.8: - version "4.0.8" - resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" - integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== - type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -12158,11 +9094,6 @@ type-fest@^0.20.2: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== -type-fest@^0.21.3: - version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" - integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== - type-fest@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" @@ -12288,16 +9219,6 @@ unified@^9.0.0: trough "^1.0.0" vfile "^4.0.0" -union-value@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" - integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== - dependencies: - arr-union "^3.1.0" - get-value "^2.0.6" - is-extendable "^0.1.1" - set-value "^2.0.1" - union@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/union/-/union-0.5.0.tgz#b2c11be84f60538537b846edb9ba266ba0090075" @@ -12440,16 +9361,6 @@ universal-user-agent@^6.0.0: resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== -universalify@^0.1.0: - version "0.1.2" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" - integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== - -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -12465,19 +9376,6 @@ unquote@~1.1.1: resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" integrity sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg== -unset-value@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" - integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== - dependencies: - has-value "^0.3.1" - isobject "^3.0.0" - -untildify@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" - integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== - update-browserslist-db@^1.0.9: version "1.0.9" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.9.tgz#2924d3927367a38d5c555413a7ce138fc95fcb18" @@ -12506,24 +9404,11 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -urix@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" - integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== - url-join@4.0.1, url-join@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/url-join/-/url-join-4.0.1.tgz#b642e21a2646808ffa178c4c5fda39844e12cde7" integrity sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA== -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - url@0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -12554,11 +9439,6 @@ use-sync-external-store@^1.0.0: resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== -use@^3.1.0: - version "3.1.1" - resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" - integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== - utf-8-validate@^5.0.2: version "5.0.9" resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.9.tgz#ba16a822fbeedff1a58918f2a6a6b36387493ea3" @@ -12616,15 +9496,6 @@ v8-compile-cache@^2.3.0: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== -v8-to-istanbul@^8.1.0: - version "8.1.1" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz#77b752fd3975e31bbcef938f85e9bd1c7a8d60ed" - integrity sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.1" - convert-source-map "^1.6.0" - source-map "^0.7.3" - validate-color@2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/validate-color/-/validate-color-2.2.1.tgz#f97214883304f87eaa9dc1eb8e9d8cd8b606a5d1" @@ -12648,15 +9519,6 @@ vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -verror@1.10.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" - integrity sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw== - dependencies: - assert-plus "^1.0.0" - core-util-is "1.0.2" - extsprintf "^1.2.0" - vfile-location@^2.0.0: version "2.0.6" resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-2.0.6.tgz#8a274f39411b8719ea5728802e10d9e0dff1519e" @@ -12715,38 +9577,6 @@ vfile@^5.0.0: unist-util-stringify-position "^3.0.0" vfile-message "^3.0.0" -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" - integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== - dependencies: - xml-name-validator "^3.0.0" - -wait-on@6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/wait-on/-/wait-on-6.0.0.tgz#7e9bf8e3d7fe2daecbb7a570ac8ca41e9311c7e7" - integrity sha512-tnUJr9p5r+bEYXPUdRseolmz5XqJTTj98JgOsfBn7Oz2dxfE2g3zw1jE+Mo8lopM3j3et/Mq1yW7kKX6qw7RVw== - dependencies: - axios "^0.21.1" - joi "^17.4.0" - lodash "^4.17.21" - minimist "^1.2.5" - rxjs "^7.1.0" - -walker@^1.0.7: - version "1.0.8" - resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" - integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== - dependencies: - makeerror "1.0.12" - warning@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" @@ -12796,16 +9626,6 @@ webidl-conversions@^3.0.0: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== -webidl-conversions@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" - integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== - -webidl-conversions@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" - integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== - webpack-cli@4.10.0: version "4.10.0" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.10.0.tgz#37c1d69c8d85214c5a65e589378f53aec64dab31" @@ -12949,13 +9769,6 @@ what-the-diff@0.6.0: resolved "https://registry.yarnpkg.com/what-the-diff/-/what-the-diff-0.6.0.tgz#445cc56a9d8ee9aea0ee1ed943f4957ae009291e" integrity sha512-8BgQ4uo4cxojRXvCIcqDpH4QHaq0Ksn2P3LYfztylC5LDSwZKuGHf0Wf7sAStjPLTcB8eCB8pJJcPQSWfhZlkg== -whatwg-encoding@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" - integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== - dependencies: - iconv-lite "0.4.24" - whatwg-encoding@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" @@ -12963,11 +9776,6 @@ whatwg-encoding@^2.0.0: dependencies: iconv-lite "0.6.3" -whatwg-mimetype@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" - integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== - whatwg-url@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" @@ -12976,15 +9784,6 @@ whatwg-url@^5.0.0: tr46 "~0.0.3" webidl-conversions "^3.0.0" -whatwg-url@^8.0.0, whatwg-url@^8.5.0: - version "8.7.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" - integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== - dependencies: - lodash "^4.7.0" - tr46 "^2.1.0" - webidl-conversions "^6.1.0" - which-boxed-primitive@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" @@ -13022,44 +9821,16 @@ windows-release@^3.1.0: dependencies: execa "^1.0.0" -word-wrap@^1.2.3, word-wrap@~1.2.3: +word-wrap@^1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== -wrap-ansi@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" - integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== -write-file-atomic@^3.0.0: - version "3.0.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" - integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== - dependencies: - imurmurhash "^0.1.4" - is-typedarray "^1.0.0" - signal-exit "^3.0.2" - typedarray-to-buffer "^3.1.5" - write-file-atomic@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-4.0.2.tgz#a9df01ae5b77858a027fd2e80768ee433555fcfd" @@ -13068,11 +9839,6 @@ write-file-atomic@^4.0.2: imurmurhash "^0.1.4" signal-exit "^3.0.7" -ws@^7.4.6: - version "7.5.9" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" - integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== - ws@^8.4.2: version "8.9.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.9.0.tgz#2a994bb67144be1b53fe2d23c53c028adeb7f45e" @@ -13088,36 +9854,16 @@ xcase@^2.0.1: resolved "https://registry.yarnpkg.com/xcase/-/xcase-2.0.1.tgz#c7fa72caa0f440db78fd5673432038ac984450b9" integrity sha512-UmFXIPU+9Eg3E9m/728Bii0lAIuoc+6nbrNUKaRPJOFp91ih44qqGlWtxMB6kXFrRD6po+86ksHM5XHCfk6iPw== -xml-name-validator@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" - integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== - xml-utils@^1.0.2: version "1.3.0" resolved "https://registry.yarnpkg.com/xml-utils/-/xml-utils-1.3.0.tgz#f1043534e3ac3deda12ddab39f8442e16da98ebb" integrity sha512-i4PIrX33Wd66dvwo4syicwlwmnr6wuvvn4f2ku9hA67C2Uk62Xubczuhct+Evnd12/DV71qKNeDdJwES8HX1RA== -xmlbuilder@^15.1.1: - version "15.1.1" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-15.1.1.tgz#9dcdce49eea66d8d10b42cae94a79c3c8d0c2ec5" - integrity sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== - xtend@^4.0.0, xtend@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -y18n@^5.0.5: - version "5.0.8" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" - integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== - yaeti@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577" @@ -13133,32 +9879,11 @@ yaml@1.10.2, yaml@^1.10.0: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@^20.2.2, yargs-parser@^20.2.3: +yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== - dependencies: - cliui "^7.0.2" - escalade "^3.1.1" - get-caller-file "^2.0.5" - require-directory "^2.1.1" - string-width "^4.2.0" - y18n "^5.0.5" - yargs-parser "^20.2.2" - -yauzl@^2.10.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" - integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== - dependencies: - buffer-crc32 "~0.2.3" - fd-slicer "~1.1.0" - yocto-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"