From 419d67dbfc3ba2b2d6314e48752365b352f1857f Mon Sep 17 00:00:00 2001 From: Davidakanmu Date: Fri, 7 Jun 2024 21:13:42 +0100 Subject: [PATCH] Revert "added all files" This reverts commit 4678147d26b3e32a34b8b2447af17f4a840a984e. --- .gitignore | 1 - README.md | 13 - advanced.png | Bin 165328 -> 0 bytes beginner.png | Bin 58012 -> 0 bytes changelog/version1.0.0.md | 41 - changelog/version2.0.0.md | 41 - components/actions.md | 27 - components/components-overview.md | 31 - components/computed.md | 44 - components/handlers.md | 112 -- components/macros.md | 19 - components/roll.md | 35 - dispatch.md | 383 ------- gettingstarted/contributing.md | 87 -- gettingstarted/faq.md | 48 - gettingstarted/glossary.md | 46 - gettingstarted/installation.md | 53 - gettingstarted/introduction.md | 44 - gettingstarted/quickstart.md | 84 -- gettingstarted/quickstartadvance.md | 81 -- gettingstarted/releasesheet.md | 0 index.md | 25 - package-lock.json | 1627 --------------------------- package.json | 10 - types.md | 247 ---- 25 files changed, 3099 deletions(-) delete mode 100644 .gitignore delete mode 100644 advanced.png delete mode 100644 beginner.png delete mode 100644 changelog/version1.0.0.md delete mode 100644 changelog/version2.0.0.md delete mode 100644 components/actions.md delete mode 100644 components/components-overview.md delete mode 100644 components/computed.md delete mode 100644 components/handlers.md delete mode 100644 components/macros.md delete mode 100644 components/roll.md delete mode 100644 dispatch.md delete mode 100644 gettingstarted/contributing.md delete mode 100644 gettingstarted/faq.md delete mode 100644 gettingstarted/glossary.md delete mode 100644 gettingstarted/installation.md delete mode 100644 gettingstarted/introduction.md delete mode 100644 gettingstarted/quickstart.md delete mode 100644 gettingstarted/quickstartadvance.md delete mode 100644 gettingstarted/releasesheet.md delete mode 100644 index.md delete mode 100644 package-lock.json delete mode 100644 package.json delete mode 100644 types.md diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 3c3629e..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -node_modules diff --git a/README.md b/README.md index 9cb3ba8..ed61a99 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,2 @@ # beacon-docs Repository for public documentation of Beacon SDK. - -## Install dependencies -``` -npm install -``` - -## Run locally -The docs:dev script will start a local dev server with instant hot updates. -Run it with the following command: -``` -npm run docs:dev - -``` diff --git a/advanced.png b/advanced.png deleted file mode 100644 index 72491f206b085d68e4a7b283762598a77f98717b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165328 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 z 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%0DX*@l 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 XKlHOoZ-SG+Kp#0NWyv~mlhFSIs_s0I diff --git a/beginner.png b/beginner.png deleted file mode 100644 index 15b92994bf6dfa1f1c33a9580c9df747120538c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58012 zcmZU(1DK>iuP{2cZQHhO@0dHbZQI_lZQIt4cV@@7*`quAo&Wsj+NlOLBweYu zs*+S9l@ui5VQ^r8fPmnorNmT#fIt+#;Tb51@9zSlloTK!ECowZQ6*_nQ6eQLdoxQL zQy?JC&{R)ou2j9%uiiPIxL3S;zB!ZJW6xZ3l(^H3JuJ~kGUGxKDROMuR1tC#co}Rj zsU)c|nSw%*$IURW+-J|P)vvBzU%j`jzNV*j>zbYwf-6@$p!P~1Qqm!$7@!czVI_Py z_?OKM{+9-4AaG4!R3XqG22L);y*WAP0aMpcf>V=B0UYaPEVzxIU0+{18SkKl6F@?4 zOi%am6yZZJG(hD}PGsy5K+_O<4GY0SWYl^1%8GIl7j$YpvAZj4!OU9_M3v;M-1^LGHqpq|JoKj z0Q(4+>l0-0^$q^qsp+u6$VMjTVVQQH`AlfN15c43- zN6pYACTB4%r+gU60Je+XTS+nioe4}LfN*$l8Sw&wIN;8t*OcJ1W!V_S2N)eJ5QwNr z{*`~wwTTkMk0(g%23P`^2r$PLJhKIa1i9${USP*>Dzsx}zi||y#00wUU$31j5x$gyvNwZ7gsd4T1@*M(z# zJxh5>dmRd@aQJ*Ee%Y*@J&$dN`FnlVY~K)WJ%{T|`8$)aCd!Y$jVqWSHo~ugyd>g} ztD7+1tw4M>b#B?z)^4xkaa=-&9x8pxZeNevd9Y~L3SZT10MrfSga${k;o;mRuL@Lx zf{b4tcX5dWw)ukSXlLq(%JRYbM?V@}eSF>ibaN7|^!8aE1Ot^19<%yA+H1d<12GJE z=WPS*e?@S1e=q?p%_bOEIO?!1je^4Gp}^fJ>;rWRK}8JRD+AF8p`HL68v@$|qB=ls z)jtm0@RS94B*3W%LyQAU_B$%UC$REpG_ug3#+B zgpn``gQbulhan?{R1!dnAx?!x6VMNUIz$DOkkEifL?(U%Q$f;%$P}DnXp(3-AxuiA7?K4^TKr1Xj5InSbv$|;*C9KPgfiiN{F(|b zDr8S`qM!B;++hq!QK8bCQb)Op8hs`9a;#U>FERQ;zrxes8y3{f5bJoCVF)5)MXbNY zPplr;AM`vJ<%=|!u;6GV;EG_b#ogtgD4>(0xg#xyH%8$MOPQuL>C!-HLzhR_fBH5s z|AD)JzVNhxbVK5e{Rk@>xZOo_px{E(1!I8M2&o!t*@tj!YG>yo)d#B!Y#Vvof8M#j z{qchPBJj@U7uzp}L~4PW4MiNHCIY=nvddr;bCVesCXpbKGnyMF(v(*ka)dGi`b+xP zb+eeZw6>@=2T99?=Uq=5}6naS)w$g)Q{q>VoNi)CaflIXDDZcd+;O5 z>1aAJ3~~(2G_W+5G#xtBYAJPPb>|hP6`vK_>Y?f?8$KI=4X}-t4dxoeT5qFs!+8T_ zy?GO7BVt3H(~UEhbBGg~L$gEoftaI=)4KDhv%169VfOLQqlE(!XH#drU7SM+2U#ax z2TI4h!>dF6quoR1!^i{f0q1b@-1Jn9c+QY#EPLK-9RZX)1j5j3ECa}GUOx;!-%qAb zlux@)abP=O)^eduSb4N?1;)_^2K6 zC9xp!DDkUkA9Qq7S9E@|brK%RQ3f-HG^!OM4hjXzT3P~fed^D2FbNTP61BZzu|6^p z6)hIcM!7~s7~&EV@kAbKcB0rc_4K%e+7v$uQQ9I#RLVsnR_ZAlYw|3Lza(#t;Wr5J z_~5)(*Dus%beI$x+S_N{ujN&}vs3T}2>LcXj)FnVAFeS*Q zNsTRc#D@%rgfx{jYN^pQ_CG>@_^M6)$g5zkTB|s$#WMRho~OZ!c`f zr!K;-)T-kyBQHhI|53tTLSKGanl-(%IIky8StN*R;ei#bD_O#-Cq* z30izDDa|lV-4_Xr?ad9$1ow%q6D}OK6A#*_8nzrqCiF8us4HkKU@zz!)E&YZa@-ZzT_ue`EuXpw3uR+ki==PlAP&e+9#-O{}M6WoyO$m3}0xV@*hmxYpnLW1J;EOj-p z&YESB9c7$AXv0%WxvYAnnz1`XW{%f%}$x0U0|ch<$$Ycopsxkn>uJ86;X&ntoF z7^_`&7F+FZs!wL}SwcE%^l3V;mmyCNPX_pr_)~49_H*tKt_rS~XI_qDm$L?&Pn(KY z+FQO3a|c^FZ-8fB0t-Ql^ZApGPo+zvDbiHQnV!j>RRUVU-Y2m`Y3DpE1M5DouUO!k zz$f9&f!Q(%#p@5#&($L0tb#zJjaXC~)HaG(3U346UO#5>T(2(*zzo0z0JkYOPq%HenLVicS0}mc!X9tis;|no zukWmrrwgMmPLJ`G_;!C(aVpQaZ_xiE>Y)T+*9$|m8wCXiwxbFUkBW+ZcM65+YtQ_ z(UE5w@`(Ny@69`oeD+5zAs>`J9bsUeLI9N%+D~*dOe0iN%zcdG#GUkmbd(f~G~`tD zzr^&Ely&9#h2;gsRW{W>YprU{3hfGw3N6b^>S{`g3aW}Js~D~NjmK@om;k2lYbK)) z9a?psS>iQ^%2jCRNVuFj#=NH9%#aL{5|r7j3*b)T?FAdR1TndI`h&ct-Q;f2Z#S<_ zfQAI=&tV`HB5Nd#dLnTiG4>_0Y4U88#O^MpMw&CW7P3wv3Qi7M2HsBxk%`>(;iqCu z?*W0+6umda;$AMIjNUiHV`8~dr8JRN;W%SEL;bzop!apsHdqPR^mu0cbm~Sb1Uhbq z!omlyHN)4e*U=Z8SVZu0@cN#=0O=nI<4jgBmrYxVqsO5|%#6CDOZrZ|x`c%O%iNB3 zEa#6`)W@9Ki-R{bI+-8VS7(3s+^MgJjwT4l2}v=XFzV>(eOBI_%t9Yp4!V}kk{?s@ zaQgf{NIzl5xz&i*QHFv%BW(u{_ky7$*piyzn$KOD9!TLxW9l-tkOUJ1SnKNF4fTxQ z20oMbA&+5J&9A_7vA39eg+IGMR>7-6okE7hs>R4hZhl@5dy}1!HI+~;q_MCxx-`P_ zLLAgiV$zb)CZ%4a!mFXFfiFc^^(_fn#aKRBuv=@K9h{Axzn>LvN+2NxCfCU-Xlz)ql_cb+|M`A!$D-lu8o&n|9B zy5rwTKa~KK$9q2sfEB)1Eyq9_+7wcg(hSp@Lm*VzCR<{}_+z>K()GOH&w0mTj{>k* zeuc<+Y4HhLZ*vukr~8u0VoSn$>1ST7yhQhMo+eUjwl`}A=iEV~xAzEAPjL89#JFDW zr>cl1&5q$KF^kiIM%BX_$~W30g%7?VU1~@5uE{IB4xZK{C0l5p*+&jKT_Sxo8<%c0 zSMDzvQPt<=2J1X+rW(9ea(j!7W((&o^gjfPiB7yN_d=@!yx5!JS7uvNy?Jj$b(Gge zTSeVl8)MvxjR1tlGQ?tpD_@*vjiujLyW{4}q|$SUaRk1~+$#@vTQBz-gcJkTdnr4( zua-I3_gZ}&i}r%u8o7#q-=DX~g-0qIWzl)tbWL@de)6v?558`(-kZCUPjgq7FSw)+ ziM$Df$~h;ZSd!ITZqV-ddBP6)yQSD={IZw|b+ZA6Cnj>{jYKR+Z_<((wpv)41Wjg5 znf0OOu|!&mSS8gV{6g)^ygn%Z;mmip~7}+UVt;Qppv{vu%zDwgb)!P8n8pmRxpf_Lk6XUb|nCT2flw z4b}B`^=2)8R;m`~hLVlAt%AEdmsA%ov!{*Dh0zVP!RO^VE#A%Hfs{4J^{W**16wd# z)?HTsv=^^e>6e;>u8(+#7YG`Nf}pVAb82d0g@Og6lX{I^P7)cnG09E|OC`@D<@tMN z(S{ty*jseyS8o;6{bZ5kkLRn6x&PCzpn4EAB7SX1{CRHaEXV`lh zgw;b%!VXm?B`&{*eMhxKu?CHaL{xX#)k#xDzz;mZ$D0SQlEJlr$^~a%_Hyl-&KJOF z*fS;>V;I|tfp&Z0Li3lEJ*%Xwru8#?Zx*#}-QOCXb)LhnS$EmZ9-r-&S{ob(; zUr$g4Me*?do3}*HqHFyi4U*)p(lhhl&XLyx;g#Zd=9}m(*R$v3xVPH?LWd$lH6SiO zsDRinPrNgrael;rKLkL3b~YB{5P&FM1CW@&e>-6Y&^3Q;5F%xJpa4PN07>UVOz*t2 zz|B%e3zMDztL{J!BT$RRDY3cWS%vBka_6xPf+t2~M5&UpD)u`WAL}bxuWGG=$6`o z^~rURU?NIjw4fa(dr)iF99C5ma*?>`_Gk_XBO_ZQ{XujIT{kPfHh^#Iw0su|^M*z( z6E}%N<5QV%7NVU6V2(wSx25;0VZP+a!P3*?&)y2~OCIVxFgZ3!M_F}i<3>y>>(w}zmANJ+465rjKmzA!acz&`hYcA6+l`kH>Of#0Dkteiw5qgT4qC3y#><1W88cwq%{-$iVT1LAtbmgquQTes zdyQ-YJ;EmSi|UuOw)uLvOPI^$gZ4w)4&4)Q5&u3{cG)Kh0qH~%0jp$xra5gDBQCrS ztv3-Q?U?T@zwUx=^2P{XYd6;xL+{5s1PE5(Sdh3#?_lHLIZ00;`cLJ(Q50R2JTgL= zoK%Ix+mz)EV&XA|_;dpeO{HuVuhMs=!_qU)7L`X)95s1GdQn?xe2E;>P30c94~gKZ zFnJ03QBHXtxvm+4U(Y&xO+KdV);%UoX5mfdu1L;m?u~9w?rZ1TXKtImOZ(yJI|{JZ z8G2>DfOn$CD1R{_y&buFDsr*|rxUAoOR@Q@4l4Syt&=!Swd@~0j)QWAUJJViYrdn@ zEfo)z-U!o!$I||#;wv9`O&eQ72(PH%)RLa@n+z~?1%mV1NB&7_j@J)cGO0~@vwF3W zHH%jL*@T@QS1NbtbyYMo5A>?5bz6K6Q>DQlPbM0AoR7IHpf+`5<*boJa@=L8?0xSfS5-L?+*1ogcrMf*_2*uHPBR5G>>QLf=Cgg_iSg zEocDfqtIKI9Dj)Mu%Gb_#FQxI7PIr0i|~tN3y;gLjUvobOtOFSh(C}@C-kyxn^zdh z|GYO@-A~vvIWF9laHzYlzN@_l1*Ut4m?Wj6Eu=pq!XWE4*b6ye=epKUG2JL2I;QDU zERbnXw3HVYS=Osj@>NRKn$qi%F&9?U5uDpeO)PYbn<&mq^GqC}q~$$_ZEbcldP2k} z&vDA$?$B;u_TJ&A)_?91cgKIod}1ZjfFuI_2)ph}E-a&~m zsXJx=BO;e3V9xKWsppuj%GxUP4CUN>mRH}x8m%YA-?L=m?X1TvGmW$+n)AY5zgye_ z@xtPo%nf|QvNyWZ+`aE&U`aGmGG*&*EZH~v;|UZJvQEI4UkoeF`-n-z*UzK*Y9yzj zAf0tzwr+*8VD%66H10H8hJMZ~6R*JYi|u*W|L1TN9?~@tyrpQx@gMF@fh3NG8mcI|1@Rruyy!H0>tOR^9|aXx)>38*xJ}R^LX%+ z{HF)cH~bIHNJ8|VE-u#mB%1O{M56XirbHYJObkpU0x(2GM0`#rW;`ll690$%`xifn zg^P;=4e|1|Zm{2xhn&i`jv-vea)*TTrmz{L1}d4H4g z{loGoS$de-Xo*?ceyitOh5!o_JKul$|NmP4N8BTQjr@OU;=k1VAMCfD1z`9X|L>d$!0ZN3&I17n0ZEGq zt9bxl_(BHg{b+e|_s-ffU%(|JTM`nvE)Rf55=K@Fq2xe=eFD%aihC3WQDF$>1*H&* zAt4c?XhZdsK2OM%w(+)Yf4x0*m>*qak> zfdlhq&4MFcd73X?Gu-OobUi+L^+0f)(rL)`%{y+gJ=uHUF1;(@j^r>CB^ZX{ig__z8J1$P%i-FQ!gK(6($YDn+==| zNwNr8j1<{sYaz;pgZ-h~)YP=RoJ!KbfNzd_vY@OCbHc=`EYG-{WM8*DW_=w;Ro&Yg z(g#e)107wS-<%39V0a7ZuX~ZbW$;k~6TpCCk2x=LS zH<6Dl{_)Pv&amoQ#y?!02r#?`LOnHotkK_A4p6$g@x2h#_)%p^d|?0n=*M#ooUesO z6;>1&G7r9=P?(6pS4dpzdGpg5zt{uB`zIV4hy7S=(8~}M^h4i0qC!Z)P%mHhFa^W! z=L89}IPC{IUC))YwPlDX<_ojp(iMO^^PNA!=Q?zAcZMhGs;d4zkb)>rO7`2mu}zNo z66j4)=bmq{UGW>UdU4?muGHwj*Hl*0B+3=OJadW@ZM=o*!%xU8%#4_vV0KP2rLFe1>EPnkXrr2uLs%%oKJ$_a9n9nLu>m`HI1Kzn5OZ7VBImmoP3q}*>A_L^in*P{wjIFWYTdOj_@OC#A z5_Q6A!HAGWc;UqQFkCIIc0>A$W%~kDCda-qW zkGvTIzBB_u@z_}8Q7~XWU^oOrEz)HwV2Z@|a^d)$f*6EuSauzU7|w)nfCL$*d)X#)R86^e@2?>>;(th-7%HeLpo){in030Q$ zS`thrt8MQn>x=OItz+WnSqen=TXP%Ia5d*MNV8YVnjAvpfEY17t=t?RVqUneK<|`c z1W+i6@Q5tMVsX=YAl`n1UOBM`R8+9A2=KFdUB8PrKi`j)Zvxw_AxY@Q?;%HV3> zD}NLsu2d0T9wW5h#cOGI3Cm1Acb?2QuM2qwf*rXy`I zIh2X76ab|d`>zN?h?qlyRw=R!szV%5iJWmxNkB=z8(RI2C2x`@qHN%*3~;R4EDeKW zz`GyfcQkT*0?5yO=m*!qPVntQlt%r-u4H{p4ZQbEX7CUKKU&`B^cb@%z@+;t8+QJ; z(wwlMWq`ss;ZA0LxZy}l^!o&9un-eiAWqo z-`~F@7L-Da^n)mOGK}NnXP0W_C}cFJ=z67GC%*oWeb zDe>qC+vA#Ym3k|6FqTs<+`apwMzhHZoxt}2x;I{7iBsM9soGPs{<`-iK7Iu;kg_0J z%_(4m2AF&+v6p^^9^!$WojpNz**G9^K9NKSCd4NK8IQBg4uUz(F}aK_u@oEbfgFw= zyb|1ohGv*vR#|P`YVVXk1X{%#@TR0rVCoID_1w#fRW}__mb8GfKrD=dKypk<^l+RQ zRd(|^&~&SwEyaN1dX&+itsC`#Mi_+@uTcm*QrCTti1hn57b&ezD~!Uy{KapB&jS`G zs71;fRc@?xX-)Vl?k?qg@r@2SCH=`d(`<5;EhD#E|0wXbnHO z9%P4C*Vn_E<^5_P>m*UWC{ZrxrKXe+DF4kj$oT9L1hH zOioblW}4@+|Ll#LWC3_VE0pYu$LZ*Bu6MDN(^~iMp<=SkV({H>uu|Ci>hS}-_Rwa+ zpyNm=dO#GsrW(doQ(ofz8JKT}g_EU}?F{p?TrnfSR;t}j_K)8f3;eY4d?OAfZxBSv zz%#}PEBme z5TB5z#~c1mMnox34m&92rlZZRZbGX^!%7Ch;ER>UIJcy(cSa*}D_o3cy$PfCTWhY! z#LE#!S2 zIOuttBRV@VgEpoodc!(#LV@3C;s3q^xjhhtZhaFO@4s^JJfWx`farGu+J4n3$Z}Q3 zY`!8_t=)uC*7t_y^RWLFSSk%4=ABfS`+GEYru}KPZvfxFCwkdcESduKQ_8ZVsR`2m zb?PyL#g(PD^X$3(v-6z09JCMcI9G2mFS5e@lk3N=hoHXKDY?&0cl`dIq7RyRu45Rm zDW=~6NcVG$Gcrm0_hI4fc#7E@$>@8ElKr~HO0{)|65*LJQ390&aZ?9LFoY@ah0m54 zy}Z$ge(iNk{j%cT8))#pM>9m+d18!NP}&%E*e!Q!7@(V}a)dnGICfR0$t+eY7pB`a zw-aePm*1EK&;}#-f<*Z-$u4hoV2fbAQp5bb;CXg_StgaBi?y&fifhj%X-vA0O*t-1 zCBnS1+}92_hVRXnx+6QUsO0hW@w|_k*S!>>PVFnIqeFSBJL-PB{m1)?uQqoHrl;Cd zQsezWX2Ww#klL$CB4BS|Mu%g+G0z8dEYE=qeQD^%JNV=br+>!(mDcZN=!=8g;Q7q} z>vy*KX0GNFV$cCn9%;a}|Mgq@V;ZlLI;QxV5WLLmYP?-acNK8%C=pBDgYnLQ-`%f; z10m_{iD-rgB&kTw)FOkZ+r@_x1T0ZXBNnUsmSR}(iZ!4{u>GjRlJ-Bzr2bL)+qOfc zKcB`_`c(|&U^H*oD731}O8RG&`vc`m-eEd{WOFeXEXFitI~TC? z(KOM{nS}or&`;AJ62M(Oq;XOtF)sn6pTCyaLcRD8H9OAGU7nk<=Qn^M@uUJgkXLHg zqN?gXTd2!=dokXo|H2Y}y@aZ*)D94hsChbh($LbD)AdFcj^nwOHy*sWD7jEK5V;nW zW18Si2vd!h5d#_GaMx&09WHR~^uKaBd|`WBIQ9mUP&%MfP@R*9OEE|}mWzd%_dLrz zJUl69_GNDLE&urn@Z>t)Xlh6-oG1KTP4zj_QWLo*+xb8}=S4(hc*W%QI{&@&CtyEb z5J3=7N4Qf_ra**sYvg=y_73<(>oCiGJ(jFUKO`!f)|kx{#}DB0`Ml2)GVtfE1&k0v zm3mP{En7+E7xhG287}a`!kxO9j>F$8$7B`PX4;1#I>&9oD%KfG*^^&b1#*r*&*W|^`ZmL9WpO*@I?-t+ zEQ;1HI!v*cGzk9ZkW%_Sq?jXq_Iw{wVIT;r6Y|1BgY#q6UPb9HrflW*`qw9&WT+?w zT(lK;V2TAu=!GY(9BsrNR3kKMNolC=6w=6=qwLm7So6&|jG4s@aIU$!l&GM0vZ~of zopbtkmc|6Tum&$Ae%_n0wVVQv6VWjwZG28ku`Dp$5^|vLAGLiu^`r=6Evugdc^}j1 z%%K3@yUZ-&_DL;P#}$x&G?Gf&UJbFwSw>yl{uTgyj`pH&V(ooE3E$!wch0w8C}zKIyd6hR%l4mi zt_R*`dF`ok8Pw~v<6vjMmxajfSB+Ts8F4envo50JBm;HQ0?Z=NHw>EMj~HDo=0N+Vw0m7UKttDauGqKYyB zB}|_cpO;Nhvp41F8n9#bJ#n?C#@GnQc4FigvH#3isDJxQ5Z=?M%FcE{0H{w&aMN@) zC|U>j9?PRrx}*YVb3ACb7+)^PnB->^qaH5foYR7R(pHK~U{uaSGFn+cgIq#8`knJ) zuJ^2E2A?Slfx%NTu!8gPEW;nVyM1%PuR|p_gggpSz4Eu4W8B&iac&*&=n{ssAzJ^Gpq+A@T+jg6jTrHL+B zVE>Fq4-oH}?6BnRPY$`vjs8ydBu#~&g~8lCsET{kUteyb5Q$&q-0 zS)hFUx_(r4F&m$6SJv&K3)E9lX_YjVrVjxTV0>yy>E7p&<~!@#`hlczd_hFj1ouyC z;YQrGgR=WJG#1-0$GEqPw0N`W7dGG^!hC=iC(vvJE<^uj8_S^@_l-D0y-(0H?h(0M z0QcVbh{a|r_(!Ch?pEa&wKJQjsu2a zmS&S%s@A~jAErzfgOG4SEt&qBW9QBT-=|D#v1t4p{3X&UoJWUKa>q=d0{GM+@8mxs z3i^w{$w;+jAGARQtu>e9F2}#u7J@4dnJR`zmf-gGyaaZ)Z>HGd925gtqiH`v?vQ{iU!9W-FqUqI8oDx z!a^-C|H$%&&(=P=+N~_zCBKA8@}(?sgP3gnS?LJ@a$9g$zBRxMSsA6E=LaFrmV_|Em%@`BX(zz@r^?^pvW`*_My#IKn_ zLr%+hU=eh9S~FK7JgqvhI3FxI5UJ7b!Vv7bE7NRSVQ#Ki_GKB^QI|DT{yA_|lU0%R zNUZBJ@1GwRM)?NlqShx-+Eek>(%P1oPdfJjLj*|(42odEiACn(s#@>#?#u!1VJe+6 z3A~V*hzWKq?5Ty08Ro_&uf};Tflne;eP5Nzo-Z_*IbH;R$_do{^ncP!@8>C{%&-_6^SJP zGiRPn29ss;B~n+_rhU;&tfvv}EYpe`a;0hJE>nM6{bxYH{afG=%GK#5{e9xVar`KC z6ViQBMA91=9Z)qf-W7D!C68>c#_DYo{!iJKx?2MMz<-(5t;MYHe(MSy)B@c*dv*a+ zfg=?(<2dOt1YH%s{Y+b=<oyl5Zz9dm{tgY*Fi+OuD#klv!IF99S`gGyo+o1THatu2nrmh2Xt}j4*h=!FU zAH-q_gK7_I!uMg3I?Ix=nWh}*EEDd*(jAIclfWRuwIMg-fwHVoD;a94=L= z^OPG?B!#!}KpLYO5-cS z#ePgi&5ORrC*IqF`0V%(#Etk)&TzwtB+B{#nC(VzvX9bq1FZpcW5VK@f)3rBC#b73 zk%sJP0*`jE?d6=xirRd12gBvbh&W%#g@+vaSq9o4% znL!YF>(yFLKfoxSc~zD3 z)GOKTmKgS?gwY>iEXRRw%l&B$OwoXoc9V}=8>z=^p zGHZLRyXU#kF3mV^au>xi!aX~FPEN|`@T=!K1=FZTFy}n-9Gk+@~81 z-H8B%I4`fYLUWT37|E#O*8iY^vcXZ5_HnIrZ?^Aa=p}TVUj`;5#_85X5X1=k^-xH!u1ZLQaUSb$2&KPx3l*}D7$YqTV@3*oV^dhWJcy38@NqwRm+3_{_ z?-+;KU9?CilS?SasC%7MpbIGrnmY){ioH5dJ#8$vf)*^$_XwyTqP>hrYhhXKez|qP znKvb*^ZyGw#>jt1#Yan{A6w8oX3&Tr@_S{107A*-Xx+fiN*AuX;K%b=`_B#l%j*$X zMxH%3bcfwn!u~QrSLpQLlopqOxB`}aP&VIjbdB$G$oxH5^Rt=T|IJ&FrIT|)&55dZ z*DJ&E4=@Sm=7WZ=*J%mYNq(>e*j@0;GW#n0$j7=ypGmcgf#XQ3t|{gLO$S)6#~F4l zh)!6Zt{-{td+OYt_x2lut8Zs{_&pbfYUHb}Jumk2rZXXd=Yw+c+`eLWK+8Gj4i_sM zua>*RW9I7h$n+X(On5-D?k@=f@PNuH{D#9RT6LT+d;fElGs)BiGjt6C4Bgy~PB=tK zlT(k$!H%?xDN9&%Y~)zvF}~Yj)zLaOZL8tnu>0XL%=e`BhH&qXp66=T+Ydq?%++lN zP(SBO_=9)0EH;4WU!6D#!<_KeCv{!7k-3;Y8%yjf#XxH+1-UpN8HGZ1Ef4q2U_^nC zIVH%8Rvr6(%d$LP5U%eXNKuJeFwo%Rj`QW*;47>x$#47piSuS@ajM=bb;uOO!Rw88 zE66xb0HST%4^#M3+h(7GWzk%2@bsE5&`bR}tI#BqUk!u&I5KTY_O89)3!<9N8{G6` ziMgo66Lb~)YJ7s^tbkcwFS$!B^bSurA6nxtkp``>Z*^HKe=rB(Hu{j0Ck`i(;X?v! zC6!EBu;7*Pdec9njq6|R5pPh_UN$hNEC4%bdWUgd&fb8rgMq#MU@^TgaIa2Pfj@F` zT=w_+f}E1@EHdQ27VC3i1a-)^?!C9}^BXRc^C(=?#mA?2`c6=Mwmrn^p`u^}TxupQ zZRJEP73(djktCtCD;xwV8YGICQv9Urs{Xgl_GoP|>fU=#pY46cJsOrQG_uiiv^V!{ zt3_gzj?;-$?W3EfMyO=Fyqan_J{kb!eO(+oemwS#9rrp=e|8)wyx;oQ?h|+%|D?B7 zadmOUI^TJ_XyQ~~BpZzPd(We&J5*$l#5~lwE>)Q4bMpAvfI|1Wsv_`)>3HRNJ&*_n ztw`rRzC@~yBO+~?!6Uj+6q`1zcU;uyMutbKiIN^3w<8Wg4K8u``B*1;J0C3&MVaS6 zsfm+5QxVPB3l`7!-p*{EKrSh}rxac#%1?eKj_>jNvwF_P=T4Q7yiIXs3A_#@gRf%C zVc+k*>s)RNkch=3W*4uRM(sN1q=$t}-ZMm}Xtz?0ebDWT3Q158M49UWqVMI|u@)q0 zRC0KjAz%w(*S;IyIYQ6*g&&RZi7I>n-hNGp_#0tK;{K`yek!FxH6}y73it4;=UU)b zlBOKfGpg=gsCtwdEj7kF@kn`Fz63xgMcECk%Rx`@9)USfzb!)#0`InZvU8eIZ^}U7 zSVXgJp)fj;}S*g$tVGF&U_`X;o5c6l#Z zvz_CYhhxFb!CP9%S!w(lI}OK3f9SwPIXlILXhuDNtL|-6711W?8e(N-B?nMtd}~;# z)3Pppjf-`CYQ*)i#%B^n)l|LNjMs+mYEP-Qv)LSnV;X~R3SMRzHN-Eor}RZX%hYBr zfmE42(IHxU(y2AV8;do1Sli zO3GRy4k`-$^CkhRDHwHxo(If6_vhOKXQ^4tuIpq`Fa}Idg~QmDMXt6rEIwBqm^X88 zglsxXa=+NXW95@G+*7KSv~TpB+I}{FEG=$^3w}&AP?o$OU-09~R%AW=F;>j*8V9t? zFsig*r#R1LeFpk%c>T2nE3!o!nc!)Cq1%WHxixL^mc2Jy&oBHFE%amZ zY`tFda7yYhnyuUO6RU3wA7kH6veUtjA3t`ODNy+i!&>2+<}T`>tTx zbBNcis+l*&{jSwk?!q~F&Mg}*uXU`KKz{)-1U>Ll#XJcwja$#V1MRJF^tx)2_E=>X zD&}m+l8r0|x&9ho2vXe{tosqAJx1|qLgAEB;-9@#bwv?pJFX$0DyyvEDa*>-H6O?Y;a^Z9TWoCcb4*V3y{Bv!!>nBVqW(6+8F=sgP)k{43!v5B zqY-wRZgs3mzSV^v80r_wmS7@93xr=CirxOLH1x62x@|QAzuHk-8uzo7OCIq7(Q`^c zl|;D2oSG*wOt;wVDSB!gPbe{2j1hyr;I5^e0`E!MyFt4f%?SG*scxY}-l~!`0G9|} zM8Zfg$9=fKtJWjiyDyQ$D;-4E2}O{?qDqzmon^yaabx5*o1#RECM4ZiCw)ezH3l;_ zOA__ZLIqt75#D8rfPyc%pzCCi);b944zYaW#ytb2at@ai#rz8*ZKV_?pR6wv;YgAn zd0|c&-bj$;g50hjz&q1kfkfy(x9y`P0T_N6xuZd4j+Q2%bl?<1z`hbr`-u7ivyUyS zIq_A$MVd`|tY)lqotG7FfwgP58cn}#)>kl2$lOTzjp66)XJ4$vQh8P{RbUXtOL9u3 zonst-?4c!V{*8bPmC}U;tjF{{DR>wQE>J%B^*%bbE1%>btQxl#GX_V`|;zA;O!ZoG1`QW!? z&x5Q1p}LhxDo(EBj!8c|&+k+QcA2d7ORFl}tZdH# zn756Xi>>C+T@J8D#`%*FQu~9^hDLId1(J-rBbGTK1ktk;MR&;UlFzQrSgD2n^h@R! z`o8ZK7X%VKX!sp&9GM1$aYLd8cN0P&A0BK(7Lnsb$4yECq#9JB?q2N3SW*_9X>-)& ztyGQ6Ob_ta9j^P~QYS-oOwtBucLqa2LGmgaF1%8c!nD`QmVd!qQ(7!S{PsNKljfYr zN{vHl`#NMj*2O1Br<=z;XC7?G76FgpY&uS(vtm||MNcTSN@=(~Fe(XJibkoQoXj4K zi1|<0M2Pv@X{IR+>uLRGjyXVTnPq^J-SM;vOf z&c`AY2-=w)fS4)kQdu_4Dh%pV%ymIECG|H0-PjL=bzBnC^{4|)bChPqO>Y=L%MsLX}9qP zlgP}MV_2>hhg`|IL2v%HyZjEIG3vPNc4Zct$!4CDq90c4XQ3}sDfSBu1T3!k&-=B4w_5wnHU4mmE2Wg-V)aW7ks)0LrHl$Km6c@+?h-GRGYeNgVb`O%0>yC!g%FS0V);3a0#Gn z#z$n@Te)(bcX9D2A%BoYN5oWLFQqW1Cq0y5G|H`Y zvmJ}zIc|-*+VyNe$qY4uq5Y^;uf-;t@PJ5Q{sV3y%BH-Tp#Z@SKPKtfAcs7QRF_cJ z4Xd!FC931}OVeEtk?{Tz%MN!SW%cGYL-$ej)2Z7{Ut(8V0BsT4C)43bobZ&3dq*P+ zEZW$@CWH0p#GF0yBL3TO777FbEZi-Y>4ZA|C7}b~;)2PTtETdHH%uyz=#tg%; zD3-I(?s!2aY})r;V3ai=-XH1<3@3H z;~{#Ehof^%?SF7-AoeQX(V_|u!@#+nV(2 ztbDL-q^J3Vof>P8mVfM9zjiz;MBVyHmbxsA8_aaOU61^0evMMZ5Bd3aDe$niw5`r^ zB(X9L>%?%$hYx|%X&E9QjrH;=SFnNcjwQe8T#eZ5)HKp7dUNRNN*-Zuwc^>(*@6VmQZs(p}>c7ppkTVG=4wvq=U8>r0? z87f1f`zOH-9uVV!XofP4vS=80Y`IafyV736h>j))6kH3_@9{rqgG4vj-El-K7yYh`9{io8*tM)ThfouE-U+wWIJLii@rdH&3L+xn7WC?R3hY&baA{a z#jYX(8AC88JlW-e*_owX0g*T6O%c-c(yb9Ktg0R ztX7;>ZR3UK!##FbEYe1@MWJWMjJR^giC7dNMw}FBb`<&60+fLhADLeFO{&DI zZyR-arb2e6Q2a~=EEE{1#XTP=H8wM?+zfxG<<;6Zl=}_lN@6JO6d=YOE%u6$p;9DD zBOoB8`Ho(BjZBJuRvR=5N1PAwvl39dx_W?-+Ryx{pN$ps0}E0u1z9KoKT;Q>keMA~ zg-mk14xPLl91A7J&%?At_0X3klL`Df41U&*|t z(S_?D09ImhhJ6@|IkY}9U(*`I^0=6D^Q*MXTfg|cM+)BRrtw+FCtdjDDhEz6B<&>s z`jEXwl{f)?Hc#k$WBI03F^voIojct0ly%aii0m5XP6$f~BRQuGtKKf11?;G-QbR5V z=!MGP;2PTS@#C@=V;@qmiVU;{?ZkE2dkW4LN(&1M2LTagVf8)xs`%~f{v@+2?J<|se{hz8q}O8aDFJ#MWJ&ajk%mZvO4_j_8(^(3!R@* zY5=%;i+=JB_NNyCXeJtG{S)d$h%F-+soRuq=Bu>;ZrpB+5{X#P)$tGi24RVWY`rf^-& zb5C6eiw#Z_KgqRBu8c+qrMS-+en8>cv0>S64qqU}b@6?H)!E9tYS^Yk+Z!L1DNnL= zWDYz!f?fWtkpoQ~JPa&GqjQ;*PNF_};y*6AA>X2^4xOWzRjg4-iP-Bl&3%vABz_H* z9#n2F6X%6@#08@|QBqt#UQ3sS*uv*#V~NfDJvdG zzG!-UmRT)TcK|$?^pPU<8JiCxARZ3as5PcCjYR(P)c^*~wN4RP-gqVz(6Yu1^|`$5 zk8ddm{He_5qU zsW00xceLs)p<>F;FR>FF#ed6}`6tHm(R22s`Iv=w>-3#)#rtD+-+QXr_mtfuVPV|; zRx+VEYv>(rHx>%XfkC;Kv~(li`c2t>{>(fr)aN(qS0y^SLxK|@yVGFqKGM`<;|Uiw zWLsL-O`ny#vyCa#*z69Z604F$ARMWcuV^Uj8neq4x#Nj8b&cmff8nUt``q$!Sd-xI z4hM+%FN(L>kf|ikq+0=@>RpgEL=`xN1+5}EbaQN@!!-76@<0fZ_Tflak|$azs>+i>8{03_qi#^ndaS)U!wubr0`3?NT7(Xi({=_y(q_gkc4@v5Z#SmP6s{=7uFUl& z`osUsfJc@*2JL+VWPZ3QT%BKt83{Tun(MI_SJ#5X@4)6K)ce`|!P6wr4VTQ(-1I0K zCs6~zVX|4{{ythS&`AKf*(1rT1g4}y=H`-{HNk7^&rh_0jXAv}t&k&eE;5}ec@RX()ek9_x^V0^jh;BbU2{2T(GsK-Bl5JvbGWDNA zdB|wW*|qd;j2qUhWdpuTCIkoLe|goghwM~oqMsqi%>>q1P3lH;72KZEmK3p`Y7O}D z>3YQbNxxpW+0c7=BVo>Q?DZ6>mAZ4lwMTF%eKYzT`j z9yw-=VTdo`VZYy8Gx-)eCIswT=7i+`9Lba8Q!^fZ=KA-g16uCuEW z-g?7pPaf{?$?Q@7kLV0IIeuqSr~+X*y*6aC_ydR%c@|&3$2_9^>gd#U%gm@oI0Hb4 zt`@|C0zV$dC~>f^WN$rH_h-=0T)kv4a(}dqND#I9-18sGHaW*?-l%weNk^Apg9UJhB68ML1a*1VwIBA20PCuTV0MDFC|dVj`9cU8`~jQ8z9@*Ky|zWiFo7} zj=9p*k9kVMxe_{=i;)(}u`$c(O!gKh;e&54k2wKvV=8%tgv9)}6jNzz;Ceg}Pv?`U z8C-<7z5MnQnuJ*q70wr~zu=a9Z-*`czL?~)W96}EM>I$Nk(#Uy$zeqpf_aBd_fNXk>O}51|qQz*6^Ge z#>>Y~>C*|f^bps@%MfbR0)DvxD!OQ$n}^;PMz@uME-`Vdu!OkNG3=IB=E}3feyEJ1 z?QmtplL)HO$RNT6>9viyfQiJjbn&Fgxm0~8bY6{K1a|hm)@I~|GK!w3v(z}iA&3GD z9yh*Hj6jp6B@LGeLv@8n9H*z_qSyRTzAe5cpsN9~?aF?Y(-Mp7PrBI?C;VKAq9U{Z zVUbGGJQ@QcUY%VjpiJhO#7!IRk(17wa*zcXXKcVmv-GhFm=OC&of@~^ z?2~6Aa?){8XCG|F%7B*cQ@Lgxfi&TF8GpWD+R(ZhJZEtWDP{s%d&`0$V+mmG+~^fn zCZSk}s37F@OMzX!dZhlZ02bvT&adV~7m`qHo%PvvUp65t%GRa=_fCrK+mt2vwM668gWO#cJ9gTrFW z!3TCi3VzI*y4x&P;6VlguGTZ}rq_uGYPRkJBFr$pIoWN*a|glTMmX1qJ@6xcw|;`g z^Eb-^0%Z&Kf0&4gO5Z0lZkeplAllAZVX|28LAYN6^cB7r>M@SWuyS?mo5I>rR@;x2 zAvqa3VVh52BZTX5M=fI*R*W^CH-bAWFM}u{_`%OsSydq&wZpcCY1zEpqXbz{OK6C3 z8LsS?c<(h-Y1bkU;`5-VGG2kaNK!hX-wk|;FFh3*%?5CCC0KvpU6jQ{w zM9Kk?@liY4)Kubl`a!|8jhdXiV{V$p5gYW5KLSnyGRCyAd_i_!I7xU!7j8{S;uXR# zIaO1Jz`OfpIS`_nxSEo@GD5!N|G0gY%ge$lsI|5?Qc!Q-G$zI#_f3#i_(D83$3L1p)6a4gCEH zd?{45{==LMdns1qVh)4k^8(z`kE9gyt9WzgYPhQ@oIfUU>Az+bH+XOiOGn1M#1rYo z-0X17K9UXcw!H!dAyBTY!6GGxiQh9io#cO}+VZ*(ZG#>=+ zL)x~c^{5((zg}dOo<$Pe8|oY=3@Lc8MbDY43Qg%&GIp)d5%HWEwCBkP^Zq{pM(HxCbKK3n3Xan1IM#Z_PXHH~c%B%~T-;&E26nKnPtD2NxWFm-M0{yPkq~ z0JaHo|8yLYOkpb@F0kgaV1d~s58+$%_nj#?(Xi*i^E0^Eyuf!mikCqp2#W8M8M-El z8 zKP1S-;^?DQAut84}^?isr{A>(Tr-p!v@+e8cVRg_9qf_ujFzAKD-@XtrIK!X{fJww=$>+1){~Z`A3s^>>N-rpH!)98%dx@y+clEfYC~Zv08T zo(y5;(g|~OogRiwlN-Yrk&$un;z64d3#qTH;J^H(?GK=ip`}GYDw>@vj9l>nc*4}Q z?fOfwh!Xg-`t5l=2GUT>ctZ~-0#@&9$7;s@7I@-*1wPOxd;4BOS^Z5AKkkSqj2X(F0~rPA z7nC*{VtEL(F0+l#Z&zAOsz&W_YtI|F?# z)|(i`J*WTg*G@M5rB>#C=47r-M$hm;(|tOy$t4$SHl&k+2wA~TTwS;Kt+uOtYM9ju zm;#)Y|3SyudHy}(T)e$M!na=a@M~B`Det>8!sGDGqZ+Axs(|J}j82(SOmH2n;{dBy z7!^Q!{sH*50H{f8ahkkXT`QsGmSA{BSm7uoR24vplWlIOg*F0Jhk-~BH6I<(;j_Nqayr|s{y?R#zU&5txB;+k9mb5;V}=dhwl{(HC~a^W z1A3med<$6HK_EhaP-I*@?m>0hKO!d>)3s~EPSA!8HMW*elT5WEkWz0ij(JR|5*-1_ zF5!AEg3$6v=6K<=`Y{DZ5vz;frxyozB0XhOH5B&8gA2^O7o9_X>BcGRqL65Ut$V8p zo5Q~>H48fYrfOr5M(GrCNi2+aXn?#zHA=kR>_P(2W5e^&oxN(mZc5-drQG&8<25^% z-6zByOKELDN}p(3-9e+d7omSrD;V6GBo=zsXgJq&-EaGR z9-bPHez|?c2BXeJNSa5|;u`eirmsGdnFGbMT@neo)0Q-q`UH%kDog(x_a|4+a#4S0 z$H%-Mob7H&lcr=Ytit*>v!ntyqdetmYlr_yZH~!H6Z#(=n)wkd+8zA=Spff0FjP{Y z_wATHJiZbVS&VuTsfm^S=D*1S8aYvw_L}(c@RqOWQ=*9l1KX}9l=Z%y%#bir05PeI z06y!JG98NDA-;7vaf&NRJwTu;pZS5(^`@$5S`lRWyimcG+2!!NJOqE{Z2ziyu$*vc zd*?#EZCzsO7aF9&F-ls6DZ#W?cDsGfejfp-3Yt#ir^O7CF}-kN>VcHHIZotEVnh%2H6T%96lXVg)8h`V*uytK-S9w5e8!FuaBms zMRr7WaF5N;N&Nbq1$yR-U~tq!wuOE43Mwv~1xVV6vwbxIgDo!qR4yBF%SjTjAP8rI z_f6@4j2~3COW!uj^M51G8A4(M?#7R1fZIi?JP-I8o(mi~0UMUD`#tK}``V?xe$|_7 zx7--S$`zw8{YI3Us=m+IAA^D2ScW@mjmlU^#%%4mt^92mem<_%XC(O0Xi|?#!LA=< z?2GDkzX3IEp9;Rv0^VOS8^Gl#?W~ul)`Ais>l>d%*W>UBa7hoj-pGk6UqLI2h6mV0 z;k%p@Wz!qFP%NNF*p9J7`E~3=-X>F3u47HASsPU*8ODlYnBw}s{f^W4^ z*V780b23g^VI$(Eo@AT8NxN(i%2hmwS+b3$?%ZxM6SUk9alPz6i2EYCvTgQIb&ix7 zD42&fy@!O( zYGQWURarQw%A?@kXL7QxsRz{F(q`ygkr$LO?76VA8{e|wAaf!^X@wcmdbvt?^evhD z>~!$9896(o*Y}FL@7S#C-%H}nVPx%YtluZ$28QN=Qm-8|F7?7#*f2)1p7S1$1r_#% zT?Duy_o>n)mkDV9jEU|M3G<=1q=eY4B*^kqGVi&+WhO%61#VcQ7BCB8UUTd78}fWv zLgb2%9SbWJ3 z(G$_b)@k3qKx$M+E+;GGKoM>8ll;I$&hu%sVAG<$t&?GvGc9f&9&9$42nfH;oE5Fg zqD3nd{l*|?K2QZ@{4k}eOh|{k}59ixC9TWbCf7c!)#&9f6eNEdSw zEexoU7wXSlnfKa^SM>~+LI_KH#l22e$Js$0cU@!tk;e`N_o70H`&&7^GYS9d%}1F% zDa9~%3S*$840SqWO=-w00*weUh%^8nm;5Fp*$vh)42ow8=BCV&CqD#=^RN&lS?<8N z%h8y&Px!lVB_J;84II8AO#lr&SGJri{g6%HMw*hnz9C^NN8}&9oX;d1 z*e5^5GZksCqvda<0u=k-ezv}=3faoo%J$m5v$l?mx~Ef3v`FcgG%R6I(a;_pl2y#i zY$#ekL6AZy((C8J)JBjLugB6t{9W-rhA*>CldJzrwTNcuQSPNSlFXfVtsi>KM?nUy zQ_F?3PjzMEG)fq4sY-p2f~~RZ!vqL(`U4;=&HhlZ(d~w7<$pr?x`AoWo5S;kN+7(q z4liYC?jeG{=F5dArh!5jsVfPg_fF{^;+%3En+u$>E(=1$Yi4+5r16Fvg)+p6hbv~|&Y8)9GC%7AtO_2QF$J)iQ<|pmuAaCd z*0bmd_pTq~{N2TyRn52vX}ty<+kW zjLPBFbzD<-KOJx8b}_>c{CdMiou%VlXN;uc(VD$e_n`zpCtg}`*$+cSBnWp8JbNFQ zbKBi+{{+|zY&$I~zpSP&)Omj(|m-|D&e?n?u|u> zzrmaxp14xkxs#T0XM~gcDV%<{)l(EZD5jgm|)5r?KoEJWCWZa zQlk_!lXxacmX5Zjr0VnsZ!n4wDHCOdVnoRv#<<{4*;Ovso=<_P1Dg&ULeJa$*ae8g zs6r}f8*p0=ukdj^p@@j1QI8G>5~sv_B&0V>V;NV2-$pP)4vpf=52wDm{AV(2nXZ7XqfdubB?B#aD^_Pa7pay`$>th-$^37`%u83wiR5qb%4CF&&0_#$m{nvMvg1I1*B*N4W*3Mx7)p#SL#Z>p(p zJU{gthjizFiy}(MLUz1V8wN(!j{dgoU%(MtTk3|uh46MIn6_U|Y+EV}{= zVvN@+qa|_C4f;$|(s15_f!~rO&Z#dd*dxa2)1@?~>&4;VRQL1{)0QTtCQ>J(Ci37+ zUqs{;R!({;xI^hLL#O*ntYX>+=!H2#KG(F9hv`6NCD zWGX!Vq^_hC!h@^pw(_9+T4C9MhZgPh-CeT$7To^YjxS~PL zoXROm$g?|;59io954}fmI01hTA*vd3cqlZ@n+Asl3csngWj60>WYwL*+VmSt=nvef zT)WH5)~?&E0%PRqm!t%EDU9Y;t@;y1^S2(kWP{?m)tYA7h57+7)DX0c{AsM;XfIYH zZ2TZO3Yl^$Ucj1f@y%T$?BcLY{c{nmyTul-FT)3o4A{5CoV}~A7&7}a%V^f0YMrm% z(CkM{v54D=5b@W^c&fu@)0%r;ameKscT5HkeD!BH`@LAF66{laGUdxye`H)V_04-} z&PbL8hP^=@@j#Q+*X0{x+eP|G84)EezF-e~FQ|#48MJ*ryRNTP)4IKlTioR149|k{ z3{)0bT10R`7XGWl0-OMNdrj#5Ay_S;sddnQ$BjM{T$$4zmrNqxObkTV(FvUae2zX7 z-an=z@*4~ak<;-~W7|Ak9=hjUM7`Ru26vHLvN`z{>;4Y zJFng-n_P@g)AJXFt4>VxN-9`7q196+7+;?*rkS%pANoK<4yQio(k+(kf>Jto1IpU*y&Z=pw`;5FY`O06{edB$lVsnQS_Gi8C$HfBnli$5eJ73;ZRpeg1tsHM1)25DCiqY%O1zVdQ0? zt1SBbPK*{bCy5C1I=5`J^f!hR!E$ZN@r~$)NyAb;R2RLTsdI>gMVwMHneE3i%$m98 zKNzwY4CJ(7&Fq+Ms3t_@z$BodA-j|TdSL>?a5DE{4ETow_3bvu^pFr4@XDGDa7HN& zx`{73Id|8#f2_WL466~J4Uqf2K=-Q(HrF;$0wHB$%0_mGd{KW?UG1gy<5eQ<^M~^l zkI*t=JU1LH8Da3cQkTgQT_53yHo_3dmVKIDz8vzrw1LR*aC01nxOja-S!RT-pL8+{ zWMLxmYzZ+akC`Zj*pi|ZX2iU-;i-w4RxQ7b;1@>8c141!Y0{^>^dnugM%=T~(rz4& zN#B*5Ow2SkA<}zl#zEQNP#`_eE$xI5m7XnghG7#Q9RfJEdn#1Ts~Vac6n0c-TYcxA zi$w3-11PG;=x3(DN;N4fqyHD8=f7jxuXS^%V$8)`Dfm>^cy%H!9ve$gf)Zk*l|h9Q z+$$(bgEj~z62nXGxG?F8pd`aEl61Tcs&H8rZ36uxJCZdgM7u2+vZ9@?mc@T)nVb5! zE7lw}r(akkDEw>@H`b?{M=qx-%GIAG2x~OM5bDR4-YV;C%ts5N`^u=Gzo?)y8E5rR z%O|yLF&*v;{huKhL|>E|5N)h+?}3DghaeK8Tdy#wN$sO~?>M=I5u>ExwC*Vcfu*u7 zX}pKrLgj4(VunMj#;gs3-)p*fp1piQ7mO@OfFA&R9E*B(r_UzFVGoLP08xO$7!!jR zB@_!v523MNRt>eJ-wBg5G4_-$E?nS-z52HQeD|hj;)~ITnlMbt(7oKXkw7Kk{%Wsc5fa_;U1X^xw>>S*9#CvIdn`p z-A+7MJPQ)t>S7SRea$!bQ?wJfVM+dcW0FbTuVW zFlR{$LBk*Cq^n5u-?apjGt5VsHV!T{s``3vLvB(X&bSJT?wc-$L}#T)EDn4}QKdn4GQL1JmtL{@&B*M?1%YWU(^-`1Iv_=*u%~aiczpzsfPfu&rMo*ebP($t zPt)L<(ymfOrCa=W8ic-uKY&#;{!@K}?4UDGehucOoCCk5V!c&>fv4G0U7^OoR-vYM z=35-{L98Nlkg)lilSz=MB>iqfInA;H(l0S@)-_o_jEZw6Y^rgjs&=bmD;i8cFeC2lrJQ?u%^_hdKwBD6 zoqcEuhKqR9Xs+Uu_lw2xI|gjkMi7lsQ)~7{S7dI?PRQOY49RP_SyP#C z#8w2oLxF-OqLMB(4{ZuQ(+H}-Tyqu=U*4ueR@zV=IY-rgjCP-1fxr>%tZCNAB8WP+ zN7|6WY+G-{;Naq)=%OKjoTx_Igb{8i`bd{vO?r5Zr*xO**yzg|@wei|7Ow8|%quSB zAA*;y50jZVaxbj*2Uo!v!YDit2&pke)tTYKOhk!P@)^eca=H=CmIIQI`&zCio2miN z{cu&1o_fcIP8M36u3_vxZPmNQhTc-$OaFz(reHFSC=_!}W@rtyfV}cD;XN zwNx`ek;1h@a?hghioiG0VAopYkC$}DV7U>Fyi4HOZbfoFc2t;py=lH$$2r71r;9b3 zH-rJM##nl4^OOZORc3$4e=ye*ZMisqYbbj6z6L1xfSKwWtcr>k$Z4i47YJ73!5rhW z$fjL`x5qq?=HZ%hY;O)8!d;lS*!B9-B5?R1O`E!6S{7^$M1xzGub~kgtg>A7>hCFo zS&$n^5g^FS4P`5UHj&686Jb-jIbhbr9VkX=SHd*&0}O}3rtNBcB5bml!_@veElWacbn8w#uw~9dBtON(+x2acOqx zn$*E`$JF8ck-R8hXx+Xqh2HL}V*Br+WJ!yVua`+nAk{aiFHxutfDwq=T5rw*KGGGl_T1QR2Uz&KdRBqp~`ef*Kujz6Zm^fBc+1pMASt4qiLY zByvY11#|wLK3spg-;Un9EyzDic~1okn?R4EO4Co>47ys5AUEqoQxfojZQ^Wu`^k|b z)%eG+75sjNEkXB>pUE3&6B_qt2%zB!AdglA6VLc4YHJhmjDEvK}~N&>f(q=EhMzI+PeN`iATGP>?dfb zb{fwhjwU63A$0=@t-3**fRx*8y0NW}dEm6`5z->C}E5M40FGIxsMBKzmZO3XrmFKZq}3h<;oMF zfBuxmL{OU3IB2)3RtoV# zI@KWaG>Ih~`Rt!hq-L3zYN`Rws=ucG*$pa{uUL_uN2T`TQ_^sI3M>tWwTPa{lQ$fN zY2HaO#p%|nTzdAYu_A|pz5;M=3!Ua%#PT?ISwEo1wq#^s_3-g7@E4Yux_z=v*`Un# z1r$iAo^%HvaX+IvLqC<5YP{koTMGAM8IQ=fZ#pPC`I;48awJqroOeJI`l^ zw=U&Z?q3*0u2Ihdb8nX#uNW{o+=z3XX)|w77&VxiycgBnR~b9l{i?so>}sh4d~0l` zagmVu4$zucNUZiLS34W=qRVNcCeHxlmDNoHP2xC3LnCfWvR!_lY$i!&Gl! zNSZyD+y!G<2R@o&>BbR^OefH`9wJ4}&7sRAG8L&7ua!u<#=+4pLWiY3<-pRy?3~^F8TRlmk$#oc>F|6ChuY*Z5pdD+4sFAtspLYq49CwuQNB7Bjlh1 zB`KFZStRxu`fEH?!eKbNKMSge;b<}KK^bNT=NHg3Ny&y9Nu5bJsZHCsc3w9y6(5sW z9z3vBu#G_RQ81FAU6mFORQLV?3Q+f923U0iK@t?W<8kvoF0Zqj2Aif5>Z zurnVqG!MO|w&Y8@ZdR#m)jFAK%gTZByfK%JG+J&=*yA*iCBbodG30h_U@cI1Prye! zJb$ijYkD}IxZriUG4^U3nEJF(_mJx?q2S4F2rCV96QwS>qPSP%^yw`4ru`g~>q}UH zIJ%Z2Fd=Hk9phB}PWUR{BtUf!+)lmoZ=^ms@Maoz#w&^T zhmk~6QFi@P*3obOCsC2S^Hj?4&W2!7J)l*v7ew`)9#^uvUAv`-0#DAANr}IcGtuoD zESQ@1cojoCi2jplH|j|{>thvww@Zp+f)gh2Rl#t6ey3=b-MrOJwaV&PSlx>Ta5S5* z{-qALkS(N|bHokglD|5H@TUAiUF0SU4;x|5VMppX&AQE|R?j9h?@yEs-@43Nh{W{Y z@4YwT>zy$lH*U!vUFB`JBRbIua(LyHyo|H9#tsT!IGX2}qXYDtV>4k(Y{kjSbV#>k8 zC(>}!bhEp~23^s#62lBz3wY90UkATGn3cb?6-tP#Q!VkczByR5m@Hdi zJ3JjmfbIAxAc_DZ3>|CTIX~V@ZbL&krnkZ6HE+W9()o@!J=S|9rqZ2vGXlF*HDlk) z{5Irl^{Cr}ygF@V_F5ZS6&)?ZUQO}BKWh&Vc8?nxT{x-s`#o!>nRdg+_Zd(jppX%7 zslI;diJW>7oMAx4sW@G68cA65_tbirlf^?LEz9cLXr>0qd<~>BijW zY2E&vMA+4-uk&h7(jVr}u$_?iF3%YPAoLDsuW;cfDZ%_)gv}PhC1LGgz~_=gZu3f2 z*|BNg&`EIiXM3(&px}h2Ezh)kC%e(A7iPaoJG7G*U0ob}=zi3~=$t%oGMd%`Yrxl_ zFigW7o)^}?oKZxWG=-);WIbdArCGXoNuY9_qRPqyQopKZKyZSGQ~D~{g)59`k{C+;C+sQD+!=Eu}3|%<)%m&#t}pB*haz;}0(chu1$+3l=|E zfDLVQjq835&O8WKU@W|jST(IssC{10%4Aui05_;?OO0f>CR43*Tm5GWy=4~ z7+(J~|I5G2z%$|W*Ub?r)68knN)tEVpIO8oM3w|M4kFDEKPtLC1vDOkxP>Xy`d^J- zpLq~C63MRq>}a=Pf^Fa!Sbz}dQ5(-+n+$?KQ#|H9C;y(x+4v*wx zYLh0m{CM}(bpcyj%U!_y?sIbc=9BJYu4>QZq{~CB+#c=elJPf*w<@_enfF*%dM=G* zHJa*N5mMoNVUL={P=_}Wg0pV$ky=17dGy5T3TPs2>vG1htMCQbCnpWyfbF)UC{<-i zR=5jCYINxqPpU|c-R%qIeEub@In`2biM4${BpphJBBU4etj!-59l-jQ&nH_xH%$$Z zkb1btmC};&9kq<#;Y`J^R>4M0n9`HAZc=$mrpbJk_)M~W@HcYCLh6QdshV8Kj4(L7rZl`IBNo`5F}RKf^*A;nZ+m{*@` zJcguh6AqqW-%OZ3M;Esw)g{WMOWj1szB^Ljp!-#0s)jC1B$)%q=ftRPIOiB_(e_N( z(%aInkxWgJT`gkFR`}J--dYx;b@BHC`*i_c)hG)}Q1;#Z&N)ZPf|ub6`L=PZ^uFY? zahiC(_{1XLl`Kb7{yt-ptTCHaf&bNfcUS4opWkzkC%`bVms@Q3Bk7>SY_*~}l zSHMj2iLjmn+jjPy!Wv$aV0-tr4hSyS3@HPvKXl1jGtN`(VJk7+q8V;A?qa z-yn3m*_wO$b0)WmVKPpR+)$0V(mt|B+sA-peSp;YNODqsOf^sC@)Z@_vOwONLT?4W zzoPEAA5TY#!-hX&pSS4V+(l-FXvf1^A8eP9;Xtets0VKSe&}m zFzMM}M4{D2D?i3hC00~${ie%L$SQN#@X&v>QQ??vbg0ZQ-uk@0iD(dtE{@O(1 z$N@?3bS^#~IehIlW~;UJDnrzj7XddyAIxexq-V2^*H>K$q_DD$qE-C3eMr);G8Tmic|&dzW;0=#3Ufd&1?}p zA3ud)jUx`^>HgJDygSpqE8u8%o}`bFVeMdCU*&i% zLO{`1qmdubHsX1~?Xc+Tdfjqf1E=F4o_IBJRo7CvKIJMSqE>3IQ9<#Jblo~LIH*zU zHGH|o>VxVPo~~S}vub0#)7BTWwQWT2XVM)-X-iV= zX-xCFwb;D6F657nO?5QhwT50sMsevR*J32S%_-wFNGUL{cCr)sXpK2D`56~+Rmc6V z3zCM+15RoxpZ|FQyJty$I-KPh$!t+fIh8&&q)5ZM%(@|)U$2F!a|J1isJX#O`>KgP z_iD&e3eKBGE!EOhTU@rfdskj_$|ADSx&k zVK$gz?j`HWLX?+ok^#;Sq=Nl|-MZUq@ewV(Js6%g^*rZydqOIvy)cu=#v#*KE)KM! zSk06W9_`0D$9=)CBJCl%Lh&FDKhf+vcgmw^J0cS1?NvAoIv4qTVKgz`wGT8Fq2!1C z6M+?jLbpxd&T7FccAa{gkS*7ZKeqYK1nzTpjz_}2f z>0-_xGrOWXn-1f02b=)n_>Q`uTv2R)048>?e&o6XWO*19Yk zuQpm0heU`i$ShIPYGxRzamZC5^LTr2yLRgMy`ERg^sV^uJYj=N^6Q5^y?(*hs3brb zd2LnJHmYkcz7qf2Bd)f!%uFoY-quego6~dUX}R z@D2kw*Yb0uug*WO%Bt6WsLC}R>+~x;`ttMUdbTFUkq{S+(s9WxLjIO2-}1*CLF2;b z<_iIYpCz7B9SRMPsrJn#twar?xp)oH#Dc1}a#yV_1H4bf&BaHu)sDFkaBor-n-%D_ zQyb@zD_TKv*q1L$3Y~|xsq416|3Yj#yc2W4%iREFF$FOK~U`+}+*X-61#>DDF}qxP0_}zV}yFuC=b5lQVMm%$nKLHVT1m8$GDb}XSoh4NjOiADq19&w(S#bF+qAeont_!EN|@-aYf#sq- zU~&v>8KcLq&|LHU78fsnbW9iNtnEEFNxyMo>maww8!7(=)hDl!`aO5vzATKN{^2H- zS%pX3L?_XPd%>sKyABXk%mjkt7(UcV80QDfmMq6lje-Qw@wda34@_IVtnC<@zYr7O zj?_Zm+GyEY&5m4qNOd{*I=MNHFCn=gBItBKgBLL!jh0a#;!W&2K5#NM$_}lBFeua9 z*pm)Qb8n*OP~pHZ$8>Xq@d+y=+gX>@ugm_;BHS>2@8pK{^g4HDu3hSWMY%20eEH4C z&lmXs_h@RC|0nhrOtaIV?8)(Q9r2o55ZR_UnSRrq9El(CJnuIYtwHuuh9TO;B*A5GrA?e_*9xqs* zR`Fk?#o7miA-6pDl0FCM>vr~CtKX8o{UyDHRQs>bMFGl!#M^?5>AfpI8~6>cZ5nPq z-Zl#`lDnR}LdD;cbfaLF8%xJ{niwcmckXjm*DiIQyWTeYKQ)sqI?B&Y?CIauC9lXC zJOX#LGw(f0Rsx{m5W7s^4ErFX6VS}_Uw09XP7r}iO4!`>A|g)Yf_}y+&~d(0L-2=_ zsR5-42$!l!DuKeqY&v4+BQ;J#trKF&u5Pp=rG$4|Sa#E4NjZdK#tzKmR=6_Chm+N% zRQedsTc>0Z)&^YPG~|?h{7b$5j=yDt(&YPzbjV-eTq~f7waN)A>ln0|>(^fQ(r>}# z`WA#!n-x+jhWXmjrgz3`wlQ6-*U(>@zHf<@>okv9u?-aO9|W08JjuS0$-UQ@22;`l z@F3mRYC}9OuBUDn&52uo1Q}A!sus3*d6oP$*(Y=TS=tUC?uF- zjeb`-j;|>0uMg9pvo1vM*+_j8d(Uy5jOX9XK-XDG+?BCJhO?*5w=O-8+$40&QUBB0 zVVjf1N|4>J)hO-_3nYlo>1Oxl2BgZp^=7Y>Qc+cprC*`NO6#?{*P)UKnDTH;@6$VnMjmYDw!&8gIRof*(fi}g`c!o{NoBte zg`XN#ncdD_Pp4leHePR=`BC3brM~+iz1y)*a^?HqK+@-)ji-&fRo}aH^YMWCl@B7B}VsYg_4f}nlm*2dgtU2^(-(T}_ASgz!$rG{< z>|7S6h)~P-^8<8tY#0;L%7Y4zF)mK5Gx^kyGiOVT5ug&ZU}E*d)$KGC z%aNPX*D9JXNr##!R0+4o<9nN8ikMW$HD&3d=Xf;BpW_s-dh9+Y0xxOERj$-}3>D8T zBE>0`00fPF8L!_&aBXv(!a1c2^YzTuQ$PK)QHX0;?__g^4D^o=i@W$rA418LcLp53H z(=0>`+Um+e!SSRAK>9O`@M!F1Z@EP`7b5kYackoC;5yNTV%SW`;4jbL1)Vw8R{@Bb zWxth@1@yITz8xv6N&2)~oEh;SG?>%9(|a{uG`5ra4un7k=e``R{z$*LBN&+U5hp{3 zXzAkiE4aEg-bPqgHAqs30CM}rvEC9j^^aJb^wWy7{n}oRHM_5H?=N1@FWMwv*gs)x z?L}e3fC3t*(37>)wsxuL1dP#nUEF_K+a|(j5A3}@UAT+&v99-{37-bR8abtfu(aNG zdf!>WUvsTBSjOA_Zkd(A1rq{bQ1|QrGe&VrBg2#2n>I^&?s_~?@l~iYvDKZo+BC!m z+5TO6?<};6QY4>f3;BIwS3io|3X=Z! z3oOSi5*s1odOgThd4_=K;uOygGRqTI_I*%1S;#&rDetLk>wcQ`>ARYzVpY8pf-Xl} zrr;c59_$lEMMd4dGxhg}vr(eu$@4B5_;F0*&;O$Jv9z7;Icd`bh^ z!k2$>LUpBzQu-vHd={qmX<&l)h5xU#ngsSXd1uZ*SHn{Nwszo^Dr~gzHfJWEYI+>- zu11jEXCC!TkT#u|;miev^O!P?c$q2JwmJI#bLrnxKsGI`3|0&*8m#6Jw^Zc>qi(~4 zytTDOEk<}CcN1g%Cy2sr=99na$|pX}!UXAJiyJkDw$_jjQB0P8qp^Q)AjPTMv16y3 z{ykj~(#_^UB#qU^rOs8aLbQ?b#?F`6;cM{j-l$w6E)6CIJc6GedZ_nB=MojBbTrZ5 z26W8rEJYf{gDN1OqR34rJ8pWeV*gExo) zGaCiVQushLc~e86yx`+uev@RRcRUME-z;t*Kx|5*TK~*5&O^n`+`KqD=B7%TI(!yM zB6jM1j8QveQ75y;QRsO1m0Q9k_KNIp;0MtrhkhVHdNpXLOL>|jSClVo$4?nI1j6%{ zD;}!r1oLtGRV=z+ndrb7TzbW`6iuw1rVH5#m%A<$3!^tT1Mu-IK97(R~0x|AJXcK>0Nu0r#o zIFz7Z{9EB&GRu12&zp?ho?81>BLg zw%1POy1Io@@wk>_%dbA!>s{87d_94;FDx&`>uv`uwo#dtwv#iM~jdEyXzet?U?C@im64Ebm@2r)B#ZqBy~s*ij!} zm&4a|ewuSedfc$?OMJVXq|j7lju3prP5q!6XdqWjU0?RJs1is*|4u-aa1kMzxL9b- zOJ7bb@2sj}K- z!2^C$2?%4I56@?WM+7qi==*bG6Q_O8ofS`CkE>tD3Qdrcf&OD6Z9z{X(n3ba-7inw zZ|%fFKFfswK>E+8G0iR`03vzAZoo4I)$a3e1_!d}j(Nwk)yCT*?#|IdEkFvHaYnpP zL9hw?>D@MN_wwu6=Idl_p0FHNlf!vSc9@9adpRQ3;4n5Z1x3T*MIh46Zvg2MLilRT z*A!)#;Tr5t;b%!`1cHSa+^Bh_3TkWV&$p{_86()H$1h0*szM6rvuZNL$t}tV>%w6x zLDzr%dKS@;km_aMM<0xO5LpC;Bk#F@-DTyLZjl^yW-J}j}BD{PTwoc)Ehlf$2(a)Gn zBBEu!Sf%Tb^fDVUJ|9ad=2TQ!Un2O3P9*L+!DY10AF`Ws$7JQ9z+S=YG~iczq4G3) z$#nuezzR7^VV?AgY0%pE3WzHCYU?7Ajf1;N?`{5Sq(hA(W)xqHbPbI!lRN*BL2wCJ zSRBoEG)$Se%0S<8OmSq&xwP`xSCmC}*($k$cg`x5DiJ6?JzBJ|`0DmFp|@EJcZ_BQ zP@#H)F5S*gSB1Y6Gxo5_D401OzY$B&7${pvYQN;=OSqroml%oL)*?!4Dz6@`Gk61A zxe4tz>9=0OqUfQqdYApdi}*=P7T#NE5RGgs3jfpPr$+%5vgDQrhH7>3v#EBGy$cg( z{ANxr#9Vmov{t&}Y76f9`pZ00-4B;Aa)yv@hamFA-0TA{a%xN5ZE{XgEk0zWqPb7P zOVf=po9XCZyUg!TtJ*Ooohh{dF+ZU-L$;u@g7OVMwe}X)q9X1Di93+^T#9y_m%xet z$hA4A+l3DmTB`PcvA#>T6S_{F_CSZZ&L@2-L8H=l8l{rdW1*l+=fYe6OO|7 zFz^eZ-^nn=z^`bET%=;6W4kPk`-DfDdgBs@H(OG+ZiqMyp z;3TzZ8GBq!;MHN{&%vi)N-?Y&pP-;*DbFpRj+U^U_0X4eCmCUKon3W^hoE1O;~ClG zyrWAo57h5=*#gD3>d0XNTZPOb4^+zhkuU|xPzgSs#WZ2$Mu-eYT4ik^1nDdzaoi?X zpRXPDNKOrwHQXSxym86iBa5j*n-;%S8yDz(qx1k3D+6sW@C~hai>=&SWeQc3sGjsr z!0gTZsrqy=%QlY(zdY72VKML~d$;frPx*mJ?kEEdI$?U)O2TEH3(mCekIQKKVi*Ng zWn45Ooob+S_YpDY!%5ZPNsXO897z?cY5}6v zgyxI-*(qc8iRBX93Y*q2*6&?8KvE=tK`cAj!w*Urik`?cTxyo@*eRZL*LgH3m=83ODtI&3TvQ~YRbOe0#>mySL z_)u7UChpb~>QR*~aNmniXuW}>E4;U+u02E8_j&HlawG;`=T@Z=Rc>Ga6 zmhO1kvsJ1}ux&^DN9v!B!1Ad^+K*99Ke8;5MHK!I$aNoYe~$Ke6qa%xME z3qoHX3|Xg~4q>Y7I?r3_HzGb| za4`gpLsCVWR>Q>^{bR_0iQW|Kz>qhGTBEXyjPv2mc*I=}l^PvpqN!2(!U$|gq=Ng2 zdn=p{LPS|zo za&vqU-6fbtcbBrhRI4dhVF7vEAK>`_``4mjV^9w2k9XHhVy2ru^Gj*2wi%dhP@A}9 zJhiTj<~X2WR!&J+Z4g&39MQCk$!+9Tr1107ay`ymXpLp?!zbYjj@c1=o#4PFCn`nev}_w4a0n?8*P9HX zgJZUHtMFHLGB1nP$R`%lun+HHLSKj4itt&LGF(CV3elsGfL~odrO}6g9}OZLEgDrH zfiNrZh!+EnmAYt#v9Rz6TS1?UBngO?2-S#0*b&~R(fDf(~`$4`=1yR;LvD9v09 zPCqk>46N&kh>znEX&8-is0PsBK8oJxmRddoX@gtGKZ778oF%h@_Gf10HVepMuj_7c zpKTjDw`W}=tmlvNsF8wa5=01{W)I?hg><>Mix+T87tX&7ej`qnD-vEe< z2y!2Z8reoC2EWw6Z4(%YR=F&JU!JT7Uj8v*71wi)-}`u;ryCCt>w2N zg1_-oI-a24*8(_%Ssce_iI<@Yjk9bEJyZBgARl^4S0X1uxq?|6bp`rfD|aKojK}MY zI5s+F20^sNW~9#x@#C6pP|>48y#A|)fJ1<4BivD6l zKRy5w_sH>A^FwmGMjL@}Q<&@W@IOFpZoTTUe52W9#crZ=-zU|yv&?>k;t>}-UpY+- zqXJ1n*znqN&_l-YKugZ2XzZpfCbYk^U3l*uM^~_f*G9p#DT%vr0$UujBk@}_BlRU2 z;5>kA+TlJ4lpl-XuF;nCuoqRaVOYc_4?+MSJiA>(rLaIqCLS1hxMb_!(w9|llOJWd zwGoO+++@B~t=R%3O3X}@)Na)VXY!++HLRY~dsnoslZ+8JK|kgZ5zHye*7Ip={UTOP zMV3kKjo8f)nDrDbL9}H{70q?>^ed=Wk=jWxdLRBIQUG^`G?}S9>6zovm!o(LzqiJ; zaH*K+3K=^1re~Y!DodU@RV@pmst98N_ct2Y59G4P(S&=J7xX8_@0QAAa@>@I20`k| zF4r&tVuVGGmmg}B`1w@LLi2D7ObHxbGfFBGWGI!+3t&1gkvz%O23-)HyOe3yu7SEB zN*U=cF(3N-T`yN5Ax1nmm(|%4M^~XX$qybAczvX^oJsns1lbvA-3*RfM$dJsOFyeB zidl4Z{)i%G9wI)-oOp&661Dy?wOvKX+nxQQmM5y#bAHVY?(pJ){i|SbbRo zJjCsGar(>%gsLgexltfpE7~3AU9=~3RWErDnUp0>!bw>7;XqMLg1{v#|B;<=LHu+; zR)q2dQ;a|1-%mvw&N(*AtCAdJWt>koFzreRmR0Im`AMk8eDsAduW{eruOUDm#a&zwbf;7l;ei-d#@QJL>-cbH=p3> zM)R52J#^i-Ao6-B&#PCZs2O1jb**E;qAX-f9B3~u$_9n5oZ2Nd$Iv<;!+?Y-Wd*9*Vd=tG1K7Vl`PeuN?>**DHG#9mzk{m<)K<^%PR#zs80|rf$Mf$FVhgV#Q7DJ%gSgQ4+#Za7$&wF!sP$lBb*aOz zG~h<@6N3op7^-aijRj|~cxL0JI}0#sft}AZ3=ii!zPP2u`}7IJZVNj!YkQBsUhCR|Q0>?vyY}RXneR-`=pF z*flfV42eigS?jmt1<~5#BwCd%VzN@mH|9yPe_}0amPP&gi9`3SOyc{Y{Wp3eWu({W z5gQRBJ%lJmKT2^=y@(UpQ83#AIHs&*;gnS74}yYJWjr4R)0H#BQta`1?iqN9%l~MP zvmQNHJ?3+m&1br@#5xC0&nQlH>q+Lxpb^V&pnCVa@%@$rWOC;~M41F!bsLv!sE@1I zT-rr0X$?I!qKe{eX-*+=Ienq|PF@M{K78G{DfE*&poSgdj%Y#RPX*f%etUQK@mkS} zIn|dwiDowQ5j;_csg_zs4|3VX4l=;`SI$VpFN`jPr(EO)^{f|GeKb+L_@Cc|CYG{6S`Bm`| zpe^+X$z~A+wKi=nwxU+N7plTU0ca2?)C;S@qg3pp+)Z5ruKf>=C)Rs% z1V3&GmgcU0@hy5wVKcJ%8r;LoF?MFWl2I5F6phOmW>o({L}^Vdh57>Buie;XP?R-h z8|9L(VWVwmTek_GSFRouk&L?ejv`0Ekt4~?-$=dCHDzbL=_L`d{Q}(9%gL3Z^W=NU z)5uW8EbTMMF*MaSgB^w}9$Oc=ik4URO~o2En&~mxTF${m=_mE&u*?~U^2caPK_=Rf zH|mEbJ48Qt<(!uj~k!W?D+RYRV^F8iZ;CHXZ!*Uu~7O?@X_4s z%C17O%z?twoTb^0()*`*Ja;B_raQeq-;3I7=~YpG@mM;lQgQZJwqo`zL#Mw-Nfe*s zwpKo}-#r3L!zVYGXuF+hBBB?~RkHsx2)HCsrzdK42G?=A_Rj|6y;73PW{*I+42-_~y zQKPn0OdVP+Yxg>BHMeg%5Izv&*Boc7@#<9a-5DqO*^l%q{;E-lO+W(q;;30fb`wea z^D-~PR1L&8vSRD<2Nus%5JG1VJDUj{@t7QaVXA-U3)q+-u9AI{NKHjuoWkKyUPaYL z>4>j>58wL2s@XRbbu}yqMUYn^E~_4`X03b%HV91BeoNRsza9^i)^GZc3M;%&f|vM-cqdx{`eF=fk**cb<0 z9>wUQjj5sxm$Xt@*u@oaRLF--r^9k=McfJ?jefM`6ZtF#obKoI6PkZr5RJ*M^QFFvpi6 zX4zQSSGnI4FGn|LKNA1LmZA!-; z*Ozo{S@`a>G-5vTktAi@FiHHW5IaEIrE@vfg+lvPT~@h~c~odh|2O5d?zv8BaS%6F z%v_?Y&`{(|OWj*!zEssa`b08q$R)ENmNgtgRk%~g(+QB0%z_PtJ5%m9gKE0KJsJxG zjGjjpnLR}g$i<{T1d6cRaGTPQFwZ|(@Lh-$AQHEBm+r9)F(9ZA?SNk?O&)Fed{>2i ztA>Y*t`+xbezCZBrDO;MQ@EUx(hVFPAhrg#jE*6!n5`-$COhc%Fz}{%@$2!{GX;W+ z8A9(@k~sf;F)n(XSaLE8{CeNU-g5iVnnvCP_1xnFqNie_ATH-Qg(tzV(fR%S>(IQ` zt))V%ITO!h(zp}PSV4bUZ%6e@O{LbVnR!!H4Pr<$$GBnt70#lsX!5%6v@x)cq-Fs~ zYd}+<28Nv#$uz5c@cX6)TS;5MbsP#Ao+yAl(?nBSk&H}QKB@K%&~qA+3eUd@FUPmd zn&Efx)%woRABsKS^ZYQgu|_~hUm;L8O=)ZAtqdt4_{@gs8jmkbqsVB-nCMLBd5|e! zJ1gs!m}creblg~%QEkX0lP<+6&s}CX7EtTQFEGPo>?61+T+(>%BnZS?Vicvzi?MnBIn9@W1X6KoNwLgUZ zQ}S(S&C2d z1vQ*eNV}W2U~z9>8IQ$ycA>qe+8p#oKS^A1z}Zt?TX|?9TX>X7@=2kvtMsh$XMPD> zT;cydt?!?<5H)g7I;1T@Sz}?KQH*a#i2LmVJm_{(eQUj_y*O3Ng+Wsh7!x63TA{8+ zr!tRy z$mx0-QRJUr-}?NV>YO5uE0;7=n9j^Flh5u|A}Y8Q=%(p%{psU56-tEdk*`8uJb=?J zh9=4{m-ur%LuIp!QYJQj1kzy8ju?o}y#UQp?!^SrF&;-bO{gG~k;rHS?V#<;Cx0H% zk^WduvLy0f0#u_2X^V;b3QJMHwmj;@ipB}ACX0k>Gm2pkZUi$>uaC~XM}~zO796T0 z_ZY}Z+-9UmaSh}>BD_m@aF6YUHisvP#DAbERECzrjy|ewSlNn3m) z!3U`S0S;qc1Z_)s@axJStV?DEZ-IBH4!*-3mu*xL((e0ugs{I#?aEZ7SL+DLlU`uCpA&UH&NDJSz=0Z-qiHQLN@w)izb~ZrRc;9bWITQg9az3CwCrRi?}rHkj*=}60vEZ0CnhMf^*KI$lR-g>})K3|-C zea{yNU};9JTuGj@muQnO(NbRoq=m4F6q%ePn1Y=4s1T>d&*x(Sy2X_Cfk0VO^;I4d znjZ({>1sC|1}t3qni6Cb4)hf0qjRMmnr0$-M2CUC5b^Ync+o$jK5t;h8Zf-aJC5Vp!^9 zVFKw{iW|kQ|ed(I;JKzA!syzfO=vWIJNb^Ob-;B^P0`*J9m<_rCRntu}i;jzWgt(gpb! zyaWsdloEVE_=_y1k`nwtu`pKiEL?T0z|rvW{$5&?2Dv46c}2VHhvoUh6izFJ7QVQ+ z3~()nw7w;uy6l?_SB8X(iHeMOg$R{g8S6=vQZA#wuX&3&rrKzJ zKHFhpv=yPkT22(M)q;So2vI^p?6@_$)I@kxxfik2k-_nbr9Fi-3|i2Dz1o2>!gpG1 zFD2hch_zu=)|eq7h{ET+&mv~DK^VktFiL_+<%sk6t;8eIQiGUY-B_EkQ92Tj^n5OM zBSm)Z$f?08CsFcFDA2~t0j5$!j2_b^B2=zQyoN;1w3oSr1q zDE&r9SKSnMJSs#rtElAJiB71$WR8V1axN|CByQK&`6t9@;!*N29`|nfazni13KCD5yGADRi`FNOFnP(^fB@s{}hFS zg~6JnJ`T;o+DE`FRh8D$I7lY4a`<+F6De;QqNiuu_&%3gG#H-D_OmVHY1l3Ux%ud? zp58bW>x+}7jSN{(m8yoi3}b>)fF5#IKK!qG!`Xe1HLZ(9mob*!yY`}E@ZiJ$x)Y2O z$VB#0a!UOzMBR*XgeAc8LSYjaBQuRKc%dR=piOVW-H}tT$9$!x|EZ6zRw`8StY46&Jrn6S<>!NCS9`6A7Bf*h6y38AIy5p1jX`y1uyG z7NKYus2j5nFbUGm!k-OO_V(VYC`Rmw8=fYZMG4)LO(%~xJtQL zL9xE&C=ABLNm|{4X;uGxSqp3k1!p}=wd7B|;}79rb|#b387Gbha+z)yJ>(toa0X_g zaxV$)Z1kMHafQ=O;i6Cn1c$|FswM1yl0ugNn8cBR1il4i=4G3UdHG9DH2 z%LM{x2h2fE8cEhmT+;D=ml^5tn2PYls}h7;-izu?jN&8R}ipnJ*(KkzEcFME)h=#*$V8upGZb$mML3HAkLB zGO;I1rS%6aT-;=7SgFtG%yNyqU!{FFpy46Wi|Emj2qvhLH4{> zZy;#en3}vxH+cE^ozib=`iY>Lo`Q7=J#5#qYMpHXmoE;>(*mSsNjqmA137E>6sXQc zyRF&UZIn=qNGm1 ziW|4ePK0MFH{_|v{aS7}5F=T_QNdG0Wj=KL-c`baNVBMp`j9_(Odw^VQKoxaVKo4Q zON(x)E%gu@{PE;9YP8G~$Zv(W{wzX94)!y){Ph=hI%bWanu3Cr20i8e==11YMvG-k zH6^G35d#)k&dsciQJ4%Ww>{Oiq=6XvjEjSZY!ob39zQ#QDB}^k2>3unw@?E?zFFCd z&QAji8&x(oCSiCIOpVDGg^ZCYYB8Ptv{FkAg9nxg4G4OvvN49N({d{wkpnXD7Ugd8 zEwqtOTRlHMIJ3V^qLY*lvY z2^#>&QbdkcvZU)E!P6gqs^G=IL(w$6F7<*hbVOMQ7j{7*sXsp^DX&Q4kdbTpu8e6p zaS4#>cVWj;u6#C9YfL-dT-G&~Za1Y+l_=~WI4hMX9y3*-u-qe9-AUgJT`O=O;B&^Y zlSZTnuB1l!ePk--$=lo?#33W@z(;B_Or?BfE}6vxY;0V3z&Y@QPgFxVN?E*v)H%sU zZs36FYK0YY1LaF$gAIkNBxMcsZ)*~Ehig`3v}qJiTO$tl385N%3rc4t-!D0gfa1>| zABislo*Uu>1RD>tTk1!bRZ>SJsy`o{ji73&Dg>%WekH^C$-QfG$j@RNFaDrX9;+gc zhhQR?gzO`#N68mvURG$cQ9z{}opi@gnY3p*lt#&uh{>yNR4oH$I_00W@zKa0!!mZ< z$%rMb@Qo4OCKINRXGGeO-9E)h>NvogSM_zNKpazAEx@NJG@^|oO^}X<6(q46sOac& zTJZttV^JfuaM3tu4>QL(B+6;Z$sWdv>fusOB5a0>^Cr2-lE)&i;n2X$(2^d&7c@%Z zVuZcRNs$ujhG8dD@!fS`t`(Osn$YhVkv?3}pCmSzp7gM-c$C!)f(?xDqI4!cNAylg z5$py4`=}{%Y0$|qYA~2SF!rgD2PPnA?oqA={1#FBo!2Z6ubdSMjMn7^Qw>_@yTtMw zg9eTU6jR6)f+%-o;2z!kc0Pq|E5n}6^vjeB_ere6v&2g<#!s%Xp|Ejjj@79}?SGIh z%|sfhaU&j3F}a8}!$Y+yu~UN;!{5m7p-pul+usU-{UY5@@A1N8_fIxqJu=eYjf$~G z=VaiXDKkV^&`!AxKg64U<1;n;?tP&$zQj@|naCbSCxh{`5Ye2RPx!8*#}?Bm*O<-_ zE2(;xgo|2b8X$#K@I4lYfgHnz7*arEfS0ElgqtY+Ama%N5IA!^G>L%WiEczPRD%ZZ z@To@ppxn}RkH{0~#vF-*E5*X6Pps{(-;5qXRqrYtJsw}sHAS+jVK;~V^2JSl;Apu- zW6XNKLL4V69!gC=ucGd!OC&Ha-2k4F$=pv*wIl5vVSGO)e+Q7i+szdfGyHqlDRc4T z^6s`e7-><=ZR3zlxU3xiJeFBa+Bt{B>yq0OoAbsd?Mh2%@X3pV7+e=(Rz+~?XjnE@ z&@zS%G^*qzj{oxbVB_{tdzX?c&?l*k=*Yv#08`LbsDzZFct25U8;L6Zrr*67C#{F} z?F0!ew5eGEkciPt3+b!L2P%?I$JLFC$Y-;i+GqqBX>9b{TT+GLDbGd;7oJ;7JgEL1 zdWJ~O{q5DN)D;Jf-Rgj>7=O(YVy=6O$!HV6t(4lXN$mOI+-R1w8VgEe+;s zO(;+6aopIYWMCmObL0nhgq$19kK{OFt3k#^#2rQS7>J&DY$WMc(h2-!4KP%^@z=5B zL|B@%(cftR%)PRxYTUr%y^_qOIA;qiWnbusGp~jSzDI#o&UrM;KoBglTxODd7S@ zdr$N+_)0sYJ%Y#b=s zCdAnhAmGRYQt#vV!6RcoGnSJt8dY)(N=f4>+8!c4xHm7`PAo7Bp>rS}Qkne%e8a0TG4 z%w2gZI#9o5goo}UxZ%iIkH1YMTp$l%F8Y@-MRb<`X?@sJTl5z~&m za_Y!^rsKes`Mo9O2t1V#(m_7yXdpB3-x)2yOU%xxMtKMryvtYlXAj4&Oo3QNo_2lH zSb;lxUg=h1V%;Z79scD{W7gkj(2+pJu1#n``BHxq+!XM z?HX|ylC-G5S`ZWaHd)RM8KvI4pKs(hu1MKl??*M6Movv$eW7pHQC)W&Phx6pYkS0m z+Ea1F`X^{GJaz*q&8=avOO)~6KcD;XQ{>`%1R`EdcKHYTSRRjj#Pw`0a%McCq=ji&$XUj@$q4>2`?wwJFncAK$Iy zCHCcMsf&6WXx9CpZZD5Zkc#~7PS);L7tyN#qN8)u) zj*+X-l;avFSmOMP?pfuRrh#oE9-YJq!x4fpl#t#-MV;lP7<8XX2i5)nzf6o8zpm|f_xN%f)`7XI`)_Di<;8cVUVYEh{`#1`s5ftyAZc``$Ak zYH}!~({9$N=edVNA=h5fTs)rTK04TBA(O7>y0Fk>Hp%xij`oJee{%ZuOz*<0ol+rY z_4U2is47@7YvZl!u4HH8y?vnVMBfru*P)A;w_*78N}ROe>AZ8=%j@YZ4~YfSa`kB7 zbmQrw9#$sbsX|$lSM zWwsV>*t|Vov#y-1tV&KK10H%HT@L(5nTeIDapylX@eJ;fs8UW4paSDU zWN9@cMQqm=&czK`d}bpnYD+~aOQvx{U$$cWOzgd`(<^FQd$YWcoGXi~htqVlPaCVf zI}1wLlzSsWWa#S)+CgD#lFZsLFzw6dpD(6v0H$+Es ztt8~$>e%{}v-^b)qX4?e`p#~RdQ>YEURTw*J`r*kxodhhlPj*Fqw|GVwI*7kwwA`t zVTYQ66%IX2>4d07rZxg2!2AQ$GV(n@M<<=ZWRA_!DQ!fx)fG@&T3R}rB)2-Zx@siN zAFZXSnf)?uZr?B%nY{W64L4XncDA!%qMpdcK@R{4GMREaf;ZmYC+~$4W+kY_u?nko$ zGj@Eze5@m&e!bK6V;F%>lWdHgI&k#6R-zX5|BoH8B0dm_3Nt~QrD$y{>!GyQ)=vwq zCAI}(!w%XMz2&n;TkESCcM{{@RqJ#Qxm~QDypD1)7aq%*O(qT*i~XoeW;8I7UgPJ` zu`f*+N5eInz%e^61xDhsG#E?saRyc^^t(uRq)etOHS15NSPOeBFIMRod%G#=!Lh%$ z$!P&){Y}JhjyW=#OI&l)MN-f)(EjaS74f5d^3CmSQOHthmVEp# zy|g&#W61d<`t?3B^dVo&*sQkaXbkyJjW`vZC8-8-=lz1w>cwU3aD$$0Ff*yiL9FdSWyg5 z*&_jkj^nyI#K}5BHywpNyvB)rNdSA6y@PW3+Bj7R3)UJ#%@>JNbh?iG&yo#R<}yP}*80ES@XJD#Igb#}&oo%MmIt zi&$RdJ8;?m3>6*+W%h{%4Pw%Wru1y$$j10TET;lPji_Hlsf3ORh?ZK}C6h9xpx>cE zktl7^#Fi+UFO*RrQ{L?jZrSA_*T1KuAr2KLg6orbbr8BOGzDeN%_NSEYjlSnP;s=q z-#dRwC4ZQ63QYHsW^Eo>Z=+pt3|Kz?X5;$bQjRc)FG{&T=ti+XBn1NE;^7Sl8(Wkn zMt&^RE?Fjas|=ZwL5cBF4t~)S-+*(F{rSb%`UkbjD*`(3bn1Hqoa2u zP+%G(J{@2%5+lsh2OcIDIREkw;sksMLcqPP?=E9qvuh(#tt&fXA8dJFf{cO{8fs@C zJZMff>t`o*5@&Ct1#d!D770^1ShL};M9cJ;YG|0Bnz=cRXo!&bd+X_w3bHADtcTe+ z)nezcz%OU?tXC+(SH%S-Ebjkcpg7sfUryfza>?*r%SRUkwsawdU;j((4M+A2pw&CZ zDar5x;#kEzS4@*v-aBa=`7b)IGk7{*A=S;@uP5ENEh0`cdOtp77VRkuT?U{nJ7--J z;rE?36WX=(z67%W9Gwt^S9@o_Ane%1Lzs*GWdtHMPDL+QHj{DPHhlj_=okR>*p-C; z{Mvh-G`uHa7lA!+t;I3_rTOi4^EC6qr*P89!>A1GKw*TE#DO z(R@eF+b@KclEor${+I1e2@?@D^f4mkVw3s5bk(PiLKBBRAhZTLDkV{q{^Tu)gSuC0DYQrdV=MC^_d01$FbkRkGD%2nH2K0tE;PJz!snP+ta4~zb@6r=4NmFL*Y-QnkC}D|C#x; z3k;d0D#{uTAID~tyWOHL6sN@G+}K?A40c>$yX}&-eBGe*Q_^E?4exUFV$l z`<(L*aR2iLVj7P&8!Zx!Y9}4HA9|Vr*dg~6UtIfqQ~)Zc8snUHZ>+{H&TmO-dW%)E z4f04eJzkFAthP6<fs_ZE%K$#flVHx?;qDwN->bQZUP0hafw7iQ&XA z1M#lJ`k!fHz_p3*(1sk5MBpNUWa4dL1-?i`7dul)is3Vz-92Zc1Ut_CJeUT> z1{%oylPT?@-bdv0O5l9qz^6c(YB@xD`N8A@8~=Nbv7~_maUn9cyWSeMlQCXeH88fK z|7I(59SzXM1;LDNNQ33|oPh(YqVvZeuQ0Q(X22u-E7H$Y%?5rk9!eY-Y56=czBnGD z$HxWJiLFvjts}})z{1%n^_ro&k?AydJGDO{!cAz)d}X-VK{d-tTXCtM$y=qRr60Zovc4;MKQiGVVItK3w9DSceQfpFZN5wv;|AAvJbbj~ zmeU1w(MEaCiFzIV~bhigRa5 zPjF>cugHnFwNyS~YhH4Y@lhf$+kL-#&>t|7 z@p0z&mtfM3Ft3vmzq!P-A>)dNPb>U(GB@U;`fCIB!{gK?jW)=y?(I;Hg;5qibkeDi z#t$fZZn+6mIvz~#oqig(b37(}K710r9W6iR$+jHZW_1@G`yoLK<=!qNVTgX*I*-;txh< zk+4gNw}D!yrAK;Y&Pp={cjZ`;RJ$zTG7ATs{><9xd=D<-bgaUYe8WaAZ=66eI5oAI z&Jl$gsIJ$u3|i=y-G96y`0w{=7-rkmtl2*FBMaO<_W-ZeIn)A(uzWmXK@CVY^lmeW zI}eP!m(oI)_#Xjnu2#QMOFIDHaCL2Yy>iOObMm@LQ-}Y~J4*&!_^Z%97!yNOTn@ny z-HHLcD%_K@f7uuelVSUVhg=fN+g1}-*TX64K1M_;!6R)z8-S|ItCP-vv*(R}+Q{D* z7f)|Co!pVK9+L1ps@SaVj7pi%Ok{G&#@zvvYvv>Rt~)Mx9^ zX7$%FNh#+)@h3ymXTc}auz;b4#)b{qGi+w9&z_80LIcqHxmkO1G~uw+m+kpmde6*5 z>!bAU@{Pu$9G{Id|CQ$ewN)8m66bgD{mfDJu$zCx1^;%+>x|g*yG{V>$=h&;Cr<{h z;B+QVzhAq;eS^T7z%4)n3^qcyJ_)CmE6SwS_-fR|@LLvcmhwdMyuDtq*iulV6mVfg zXhCvmc-};#mx6knR2-gGVgwI5`O-bvUX%4sNyVq?CeV<8*+gycv(i=j{!QZAXFr52 z%NJ(DSv>rTnWa1vEM#kT)<${#8u+dWT%C|;xV5*RAiDWU=g&ed)t0y6+nm!Vzc~VeO0xtpo!#?G zbAU1}n_KPOYq_liBz;=BW8~WYQMev8&rK5IXR3g3cOSksm}WbJ0Kr4T-D@VHAr!>v z7c9bM@Y~YT7g^dv_-_Sc`aM#D{r^w06+n6It`-&+j+f{nhv+=I4?XbiUE3unI5PL2 zA6A4AXJ$p=WnAURi1BkY%`a?%oOeGs#zw~C6Mv2v+aHPtPuSwpli-6@G11ZDF8S8h zC;i`-X0=2H8m9{WdM<6Wz%{Ex_f3d?kmX?oF)#UM#x`g zo=fT-$rNW-6;}*Hs*E2GwC88(=4NEvhU$X3=engFVLTRX`wWiDWomI6EX60RvF?eX zK8tmc1kkELGH2gd3|>c-0-yPWh=7U-EC5YJpTtrYwxvCsdNN-*>ZkLR^xjV_2`P>! zLB3&ld>qNo&o6)ovWG|qi4(w-N9O>eQ`6wPK+)~kSStSS`Wq`I-L?Q>Z`K6wk*Bs= z=t&*{nx2;`-oM}ZKuk%OA@=1v8wlNUav6L4q%HMluMzNFL>O8>68`Pa6aKIl3- zNdHC;`Obq!ogTU}hYa(S1r+%=dcss`NjW?2sznhZE!1sr+E}xH8$(0D#tE?SmpaKB?dko1l-a(Mdq$22NENe9Kn5af2U zGdk%pYGFq$v;R8v%6J2yC$hl-^N#cb9MBGaI1+A7C)+ba`ehD))6 zWps|O$>nW6j1alYg9hrCO^Wn{)^&xR6;36gq2I1zfJXgg6#}@NJUg^J`@Y$7=702a zNyd%(l39vJgo*I1P&P{ z)bjk#ki$6RUl1(NYK20qa#2nfKSTUAK!pbh&BSjSSN$! z`ct_qnXO2jF{xi$RM4<^F--IE0?e!WN_Vj8DK51I|NQ9v^dWx*l(xdmvA**f{V4dH z)pn(MeN-A>pP1!;;2N2;-0FJ`YRoQ2-}yT-(@<~mFJ&MC8t5AM&F-j<15{q*SOWvu zA%S1yC3n}ytzrIKQ5&!`9BgCtT}3U+>7Q@`3#+<~%<1Ez_oh{C-8VW`{C@jb>PdQZ zUN@;DA)_Vf1_}=Hs+It?k6lb^^KhXGm?v!7nV>6Xzq9(UfJG1&D{`XBI=rjuT(Ibu z&+i?4L17>Gtyt46r6)ic?2qy;$?13KG8a%=@Eubyuysprd>Cr-4I@raPe@sl!bS@p zn=?E{<)wD(-nDF3?S<(0iry{EZ$3A+P=?E+D9m=YDbLN{9T?_`?)UP1(u7^G$QHlp zR&-z(3?|XPlrGnChp9o6upl-PRPMM)vxBbaXHGh`OhtlM03bd-3+O_f_JyC8H>~nN zWmQAs?OFNfNVx$tovq<jK8x=oF0Vo+lsQpBUCVV$0r&*-uazw=X%YB{-PTty4Lb2b&}Ls-;6JW)hk8eDK=PR+5}0wHtUyew>!k&|E33VReklXAI#bj?HqBvJ%-{V zziDObX4AIz(WY0+bAs;K^NP1-zA{VyxJjFaUl;sF zfnkpzi)9r7QDPYV_w^QKPVhrOZq-5CQJ`*y$Ok{Dl3gap6C?nx*{E#Ck6FigGokYd za!6Fnk~X~)!LQ?USVe%Z!(pT)K46VSNaEj&ls&YTJ>81SHWXa{deAR><_i@AvXk+= zE~J<%-1(2=nK82v?Rd5bCbD&c;G4tQ>B%lZq^{5kkXqWyQ*oA?%|=MCQcAq>C#AlF z7a9mY>_0p1&)23$*PL%Ctjf!W@8D5*u|g`OYud`~xvw8yq8ydzw!Go~TA{oy4lv9BguWWs*7dMnlWRegNF_koOn|y7 zst1w#gJ@#0;2W6AVqyw*t`ME%lzq7%g^5b2Z?$+I%W8Zdi>k4t4pLfuyKpFMJFHJ? zUE@3GqK*TF1BEQ{;Te%aSH4vH;=b5sGusji=}$H&LHQ|$5Y3mI2(U`=TK!{%ID(NHR=( z@Drj7f_L#RtNd%3KY&8Ct*ez-W2G_0^Gj%GfxNpRg6mb^D^?gje&FGp_Mq-9qnp9p(p&Ym9h%Z>Mr=D&msS(I!vA%LfJpqs8*3 z*_yx%WHA?c@K#a=s?TcE3}RS|t0!s#RnjZZhz?)5;pp8_%XJW4_kWJl{(S&V+5Cn% zo!4|>JdYf0<1U?0oTv`4Qb?@0#fxu!xuI$lVE|*FMW>kP#~B&xIsW^({eFW_ZcO$^ zxf;WySN^aHs@Pjz;%DN+UnLUnOBPGX-WcRz;tV{W5bj3vr%%BzO!7+8FR=ni(2}9P zUfTduhPw5t^)RV~chJ31?t?sQV$}j2BtxXZ?U-f4*2w`8;RVGH6Y*WQyAa0q4J>T$ zZ>ZCX^-NaU{xm{Hlvg!$UuBs@wnr)FjFcNAR%iExLge&(P1`zk3bo`#d-m9n*!hw% zGyS_K@Zeonra1*&HGBs?E=m(uoh`PIWR9h4E~hi<6YtpcY1>J!SjghaGFa&4h&K3F zd-D&L2t5Pwo|E5OARjB943UfzQv3M*;2s?`2);lzA89lD9M-FTH@YvH#WE0~3Ul}E zP`Owdu?&|F>CKnTf&lulfWme#Oe81%!{Jbt#fO}Z0FiAmShta1D5dQ2Yul+3MYDWX zcr&S*h*>>x^H_-Zs+!8?xq%Hu83!gZRB!WB7G&DCM+`?i?9S4_Wyr^LhR51=F~l7 ze4jAkMLTcydAII1Vj(vA7vi5(+)#Q_NnD=J?00_HR^nmqwS10VBDq+iKr-f=MDz$PZzcW$P%mxFB|M{A->#O;dKCsY24KC>`Kz2gf{pW7c6&G{uYAJ=E_wMJ zvX-o7ni{Umno*|*B?b+2yT1$IG+} z9tca9L4CYH5)CHIPjcD@!7Agose8jEaUq?LFNqEpB7`}L=d@S?-@t`p-7|E*x+5_M zm>rE&I!sauUE9!sg6UZC*0qD79kLY#b8)IAn6!58^ZN@S#|V}ltyIOIHcyj_u00L$ zi=g&y7u-tBhCZRe>7;O4JW%aw7HPuQiBN78BGuc~R~0Q=Rg%w|y!38`ex}~xl|G@B zRUMA7H}LE>>=_~L;?T)6c#{|mpgu%8BQg51G8wE+F27ACibh9I)N2#s!->Mk3eq_gRx{={ShsO`x0z5uZdO3dRG2-Q)WLv}HE%et# z)Jn}q)$%=|+E3Yx{v!A~!?dSM^Kmi?2;b}jYK)RyVpYbh%)95ZPtq;SL|zp8hnE4N z(6;E>@|c1O!)|Ycyi1levpF|{tbq4d=s8l=eI>UH3o3{lckkVN%A#42w3xmr9$jlx z(*8!1vvrd9Q72-1I>%2QE9FEa=M`b}zPl6tN7B1n3Y5{rSq}Cd#Xr zv5syIVmZZ7R}CyBEyAS3;Deuyz8RF?g1JAb$7Ma;`TpEOD#b}YU09ZHDx_?Vca;uj zSW%c<`jOqBPzGGcyU_06lbuQ`%Ectrqfx7G#>JFZCa_y5n;?3kAWnCr@aw~wQcB`* z*dyusLrsfVXTy2>inWduMI;u*DK4A6!`+#F=(3c{C-b;B#PwKnf_+2R%j9$*h3rSw zKp$rBWJLf9XX&m{aKMbgKaO^c4>^Qm3uMwn@`@g_?9m8|eie9vqn{t5F29RJdHyqI zZ)$5GLS_<)M!lD5Gab>AO!oN5jRTOr#9bOPC2seK73|EOWUrOtE#ZZ9t&DDMQG@36 zIVkUT3E3ORx{^wXUky5`{tb2MY=G*zae0=f6&Vs z)enXC*Y*}mPH8S_bYW!&`x;e15A&9*+A<@YAAgBV;_>F#zMgK!3{Qm@K2!K?_+UnvC{QF}Ib%usyDq z^GApRIjQhMCbxgJP;O7<%BmP}*&bN}C+;qZ$ws$#ZMIo-ymc1M6Bn}i%09>>GWRDr z743KTWO3WqK9%_w@L$uKTf!E5?pxZI$^7oD^bkd%SrRjTO_$K&+0m+1P2_id{+8^F zvqCT(q>lu*P~mRo^CfArF9>v1M5{Sa^IRywz{9w96Np@Tuan%Yj=q3U7u-96+DQQc zB)!IKtLpO|OGpC|{ssYe8`zVcn`1(@op2D)_)^V@B`*70De<2f*mbHX|MUKwCl#k6 zVe^)xsx;y}yHig@cQH3GN&-?2FQNdn9D-?3OZ2)Y=1iI?-D z#(;2PXVZ?%lb0^F-2-wz{fc`~n8+ z-2ZzVe3PVO=;cDv`5-U^l4JjO2;?593H3~>Nu1;F$YbvKd2>T0xB7LPnzT#6kD9W! KQn|vDp#K353k~Q1 diff --git a/changelog/version1.0.0.md b/changelog/version1.0.0.md deleted file mode 100644 index da4d47b..0000000 --- a/changelog/version1.0.0.md +++ /dev/null @@ -1,41 +0,0 @@ -# Changelog - -## Version 1.0.0 - -**Release Date**: 2022-03-17 - -### New Features - -- Initial release of the Beacon SDK. -- Support for Vue.js framework. -- Setup with Vite for rapid development. -- Basic and advanced sheet examples. - -### Improvements - -- Detailed comments added to example files for better understanding. -- Support for complex roll templates and rich sheet actions. - -### Bug Fixes - -- N/A (initial release). - -## Version 2.0.0 - -**Release Date**: 2023-03-17 - -### New Features - -- SCSS support for styling. -- Integration with Roll20 and VTT. -- Mock Relay for offline development. - -### Improvements - -- TypeScript integration for type checking and improved development experience. -- Unit testing with Vitest. -- End-to-End testing with Cypress. - -### Bug Fixes - -- N/A (initial release). \ No newline at end of file diff --git a/changelog/version2.0.0.md b/changelog/version2.0.0.md deleted file mode 100644 index da4d47b..0000000 --- a/changelog/version2.0.0.md +++ /dev/null @@ -1,41 +0,0 @@ -# Changelog - -## Version 1.0.0 - -**Release Date**: 2022-03-17 - -### New Features - -- Initial release of the Beacon SDK. -- Support for Vue.js framework. -- Setup with Vite for rapid development. -- Basic and advanced sheet examples. - -### Improvements - -- Detailed comments added to example files for better understanding. -- Support for complex roll templates and rich sheet actions. - -### Bug Fixes - -- N/A (initial release). - -## Version 2.0.0 - -**Release Date**: 2023-03-17 - -### New Features - -- SCSS support for styling. -- Integration with Roll20 and VTT. -- Mock Relay for offline development. - -### Improvements - -- TypeScript integration for type checking and improved development experience. -- Unit testing with Vitest. -- End-to-End testing with Cypress. - -### Bug Fixes - -- N/A (initial release). \ No newline at end of file diff --git a/components/actions.md b/components/actions.md deleted file mode 100644 index 6dd0eb5..0000000 --- a/components/actions.md +++ /dev/null @@ -1,27 +0,0 @@ -# Actions - -Actions are a collection of methods that can be executed from the VTT. These actions are used for any rolls that may need to be triggered outside of the sheet itself, such as from a macro or a chat button. Generally, most or all of a sheet’s rolls should be defined as actions. - -```javascript -actions: { - [name: string]: { - method: (props: { - dispatch: Dispatch, - character: Character, - messageId?: string, - rolls?: RollResults - }, ...args: string[]): void | Promise - } -} -``` - -Actions are passed into the `initRelay` function in an object, where the keys are the unique names of the actions, and the values are objects containing a `method` property (additional metadata fields may be added to this object in the future). - -The `method` receives a `props` object containing the following properties: - -- `dispatch`: A `Dispatch` object. -- `character`: The data of the character performing the action. Currently, the action will not receive the character’s bio or GM notes, regardless of whether the player has access to those fields. -- `messageId` (optional): A unique ID for an existing chat message. It's included in actions triggered from chat buttons to provide context for the original roll. -- `rolls` (optional): Included when action is triggered from a chat button. Contains the roll results of the original roll. - -> These functions can also receive an unlimited number of additional arguments. This is because these actions can be triggered by plain text via a macro. However, all additional arguments must be strings. Additionally, these functions can be synchronous or asynchronous and do not return a value. \ No newline at end of file diff --git a/components/components-overview.md b/components/components-overview.md deleted file mode 100644 index bbc197b..0000000 --- a/components/components-overview.md +++ /dev/null @@ -1,31 +0,0 @@ -# Components - -The Beacon SDK is composed of various components that allow developers to create dynamic and interactive character sheets for virtual tabletop (VTT) games. - -These components are crucial for handling actions, computations, macros, and rolls. This overview provides a high-level summary of each section, helping you understand their roles and how they integrate within the SDK. - -::: danger Actions - -Actions define specific operations that can be performed by characters within the VTT. These operations can range from simple tasks like rolling a dice to more complex interactions such as casting spells or activating abilities. -::: - - -::: info Handlers - -Handlers are event listeners that manage communication between the VTT and the character sheet. They respond to various events, such as changes in character attributes or settings, and trigger appropriate actions or updates. -::: - -::: tip Computed -Computed properties are dynamic values derived from other character attributes. They allow for the creation of complex, calculated attributes that automatically update when their dependencies change. -::: - - -::: warning Macro Attributes -Macro attributes handle the conversion of legacy macro attributes to the new format used in the Beacon SDK. This ensures compatibility with older character sheets and macros, allowing for a smooth transition to the new system. -::: - - -> [!IMPORTANT] Rolls -> The Rolls component allows for advanced dice-rolling mechanics within the VTT. It supports both simple and complex rolls, providing flexibility in how roll results are displayed and computed. - - diff --git a/components/computed.md b/components/computed.md deleted file mode 100644 index a743ee3..0000000 --- a/components/computed.md +++ /dev/null @@ -1,44 +0,0 @@ -# Computed - -Sheet authors define computed properties that are accessed by the host. These computed properties can be used as attributes in macros and are available to assign as values to token bars - if the `tokenBarValue` property is set to true. - -```javascript -computed: { - [name: string]: { - tokenBarValue?: boolean, - description?: string, - get: ( - props: { - character: Character - }, - ...args: string[] - ) => ComputedResult, - set?: ( - props: { - character: Character, - dispatch: Dispatch - }, - ...args: string[] - ) => void | Promise - } -} -``` - -Computed properties are passed into the `initRelay` function in an object where the keys are the names of the properties, and the value should be an object containing the following: - -- `get` (required): It receives character data along with any number of string parameters and should return the computed value. -- `tokenBarValue` (optional): A boolean indicating whether this property should be available for use in token bars. -- `description` (optional): A text value indicating what this computed summary property represents. -- `set` (optional): This method receives character data and a dispatch, along with string arguments. This method does not need to return a value. - - -::: tip - -- Setting `tokenBarValue` to true will make the property available to use as a value for token bars. To work correctly, the `get` function must not rely on any additional arguments and must return either a simple value (a string or number) or an object: - - ```JSON - { current: number | string, max: number | string } - ``` - -- If the `set` function is omitted, the value will not be editable from the token itself. If defined, `set` methods will receive one string argument, which is whatever the user types into the input for modifying the bar. -::: diff --git a/components/handlers.md b/components/handlers.md deleted file mode 100644 index 70b5108..0000000 --- a/components/handlers.md +++ /dev/null @@ -1,112 +0,0 @@ -# Handlers - -Handler functions allow the sheet to respond to messages from the host. The `handlers` argument requires the following methods: - -## `onInit` - -The `onInit` function provides the initial set of data to the sheet. - -```javascript -onInit(e: { - character: Character, - settings: { - colorTheme: string, - language: string, - gm: boolean, - owned: boolean, - settingsSheet: boolean, - headless: boolean, - sandbox: boolean, - campaignId: number, - environment: string, - currentUserId: string, - singleSheet: boolean - }, - sharedSettings: {}, - compendiumDropData: { - pageName: string, - categoryName: string, - expansion: number - } -}, dispatch: Dispatch): void; -``` - -The event object contains the following: - -- `character`: The primary character for this sheet. -- `settings`: Campaign and character-specific settings. -- `sharedSettings`: Data shared between all characters in this campaign. -- `compendiumDropData`: Populated when the character sheet is created from a compendium entry such as a creature or NPC. - -**Note**: This function may be called multiple times during development in the sheet sandbox as part of hot reloads. - -## `onChange` - -`onChange` is called whenever a character’s data is changed on the host’s end. The event object contains a partial character with only the character’s ID and the changed data. This could be the character’s bio, GM notes, or attributes (only the changed attributes). - -```javascript -onChange(e: { - character: Partial -}, dispatch: Dispatch): void; -``` - -## `onSettingsChange` - -`onSettingsChange` is called when either the VTT’s color theme is changed, or when the current player’s ownership of the primary character changes. - -```javascript -onSettingsChange(e: { - colorTheme: string, - owned: boolean -}, dispatch: Dispatch): void; -``` - -## `onSharedSettingsChange` - -`onSharedSettingsChange` is called when someone changes a shared setting in the VTT. - -```javascript -onSharedSettingsChange({ settings: { [key: string]: any } }): void; -``` - -## `onTranslationsRequest` - -`onTranslationsRequest` is called before the relay is fully initialized and returns the translation JSON data corresponding to the two-letter language argument. - -```javascript -onTranslationsRequest(language: string): { [key: string]: string }; -``` - -## `onDragOver` (optional) - -`onDragOver` is called when a compendium item from the compendium tab is dragged over the iframe window containing the character sheet. - -Coordinates of the drag are provided via top and left values, and basic compendium data is passed so that a subsequent compendium request can be made via the provided dispatch. If the item is moved outside of the iframe, `dragData` and `coordinates` are null. - -```javascript -onDragOver(e: { - coordinates: { top: number, left: number }, - dragData: { - pageName: string, - categoryName: string, - expansionId: number - } | null -}, dispatch: Dispatch): void -``` - -## `onDropOver` (optional) - -`onDropOver` is called when a compendium item from the compendium tab is dropped over the iframe window containing the character sheet. - -Coordinates of the drop are provided via top and left values, and basic compendium data is passed so that a subsequent compendium request can be made via the provided dispatch. - -```javascript -onDropOver(e: { - coordinates: { top: number, left: number }, - dropData: { - pageName: string, - categoryName: string, - expansionId: number - } -}, dispatch: Dispatch): void -``` \ No newline at end of file diff --git a/components/macros.md b/components/macros.md deleted file mode 100644 index 43b05a7..0000000 --- a/components/macros.md +++ /dev/null @@ -1,19 +0,0 @@ -# Handling Legacy Macro Attributes - -When utilizing Macros within the VTT, there are instances where a legacy macro might need to be employed for a Beacon sheet. - -This scenario commonly arises when transitioning from an existing legacy sheet to a Beacon sheet. During such transitions, it's possible that the attributes called from the legacy macro may not align with the structure of attributes in the Beacon Sheet. - -The `convertLegacyMacroAttributes` function serves as a pivotal tool, empowering Sheet Developers to determine the mapping strategy for legacy attributes to the new Beacon Sheet. - -## `convertLegacyMacroAttributes` - -This function is defined during the initial SDK initialization process and is invoked by the host when it encounters a failure in locating an attribute's value. - -```typescript -convertLegacyMacroAttributes: (messages: convertLegacyMacroAttributesArgs) => {}: any -``` - -Advanced sheet macros typically first search through the defined computed properties before resorting to the `convertLegacyMacroAttributes` function. - -The function's purpose is to return a value that will be substituted in the macro. However, it grants Sheet Developers the autonomy to devise their preferred approach for handling legacy attribute values. \ No newline at end of file diff --git a/components/roll.md b/components/roll.md deleted file mode 100644 index f67246a..0000000 --- a/components/roll.md +++ /dev/null @@ -1,35 +0,0 @@ -# Rolls - -The VTT (Virtual Tabletop) has several new features that enhance the way rolls are handled and displayed. These features include attributes and elements that allow for dynamic roll results and interactivity within the VTT environment. - -## data-rollname - -The `data-rollname` attribute tells the VTT that this HTML element is displaying the result of a roll. - -```html - -``` - -The VTT will both add the Quantum Roll signature tooltip to the element and replace the contents of the element with the result from the roll. - -This is the preferred method for displaying roll results wherever possible, that is, sending the whole roll formula to the roll server and allowing the VTT to display the result. - -## data-computed - -Tagging an element with both a `data-rollname` and a `data-computed="true"` tells the VTT that this element is associated with a roll, but the results of that roll were computed by the author, as opposed to the roll server computing the result. - -```html -25 -``` - -The VTT will add the Quantum Roll signature tooltip, but the content of the element will not be modified. Generally, this should only be used when the roll server does not support a particular dice mechanic. - -## Roll Buttons - -Roll buttons are interactive elements that trigger sheet actions, such as damage rolls, when clicked. These buttons use the `data-sheet-action` attribute to specify the action to be executed. - -```html - -``` - -Additional arguments can be provided using the `data-args` attribute, and the character, `messageId`, and original rolls will be included automatically. \ No newline at end of file diff --git a/dispatch.md b/dispatch.md deleted file mode 100644 index 85561ea..0000000 --- a/dispatch.md +++ /dev/null @@ -1,383 +0,0 @@ -# Dispatch - -The `initRelay` function returns a promise that resolves with a `Dispatch` object. This object can be used to interact with the relay system. - -`Dispatch` provides methods for sending commands from the character sheet back to the host. Except when specified, all of these methods below will return a promise. - -## `update` - -The `update` method sends character changes to the host page (VTT) to persist in the data store (Firebase). - -The partial character passed in here must contain the `characterId` and can contain any combination of the `attributes`, `bio`, and `gmNotes` properties. - -```javascript -dispatch.update({ - options: { overwrite?: boolean }, - character: Partial -}): Promise -``` - -When updating a character’s attributes, only include those attributes that have changed. - -## `updateCharacter` - -Like `update`, `updateCharacter` sends character changes to the host page (VTT) to persist in the data store (Firebase). - -However, this function takes a full set of character attributes as the `character` argument and automatically computes the diff with existing character attributes so that only changed attributes are sent to the data store. - -```javascript -dispatch.updateCharacter({ - character: Partial -}): Promise -``` - -## `updateSharedSettings` - -Updates sheet settings that are shared across all people in the game. Returns a promise that can be awaited. - -```javascript -dispatch.updateSharedSettings({ - update: { settings: { [key: string]: any } } -}): Promise -``` - -## `roll` - -The `roll` method takes one or more `rolls` in the form of an object, where the keys are unique roll names and the values are roll strings. - -```javascript -dispatch.roll({ - rolls: { [rollName: string]: string } // Ex. {attack: '1d20+4', damage: `3d6+2`} - messageId?: string -}): Promise<{messageId: string, results: RollResults }> -``` - -The `messageId` property can be provided to attach the roll to an existing chat message. If the `messageId` property is omitted, the roll will be associated with a new chat message, and a new `messageId` will be returned with the roll results. - -The function returns a promise that resolves with an object containing the `messageId` and the `RollResult`. The roll result is returned in the same format as in the legacy computed roll system. - -For more information on data types, see the Types page. - -## `post` - -This function posts a message to chat, either creating a new message or overwriting an existing one. It requires a `characterId` and message content, a string containing either plain text or HTML to be posted. - -```javascript -dispatch.post({ - characterId: string, - messageId?: string, - content: string, - options?: { - whisper?: 'gm', - secret?: boolean, - } -}): Promise -``` - -The function also accepts an options object. Currently, only `whisper` and `secret` are supported. The only valid value for `whisper` is `gm`, which will send the message as a whisper to the GM. - -The `secret` option is ignored unless `whisper` is also set; toggling to true will cause the message to not be visible to the controlling player. - -Like `roll`, `messageId` can be provided to update an existing chat message, but if omitted, the function will generate a new `messageId` and post a new chat message. The function returns the `messageId`. - -## `query` - -The `query` function takes an `options` object and uses it to display a `SweetAlert` prompt to the user. - -```javascript -dispatch.query(options: Swal2Options): { - isConfirmed: boolean, - isDenied: boolean, - isDismissed: boolean, - value?: string | number, - dismiss?: "cancel" | "backdrop" | "close" | "esc" | "timer", - errors?: string[], -}: Promise<{ - results: { - isConfirmed: boolean, - isDenied: boolean, - isDismissed: boolean, - value: string | number, - dismiss: string, - }, - errors: [string] -}> -``` - -It returns the results of the query as a `SweetAlertResult`, along with any errors encountered. The options work exactly as described in the [SweetAlert2 documentation](https://sweetalert.js.org/docs/). - -However, not all options are allowed. Here is a list of the allowed options: - -| Allowed Options | Description | -|-----------------------------|------------------------------------------------------------| -| ariaLabel | Custom aria-label for the input field. | -| background | Background color for the modal. | -| cancelButtonAriaLabel | Custom aria-label for the cancel button. | -| cancelButtonColor | Background color for the cancel button. | -| cancelButtonText | Text for the cancel button. | -| closeButtonAriaLabel | Custom aria-label for the close button. | -| confirmButtonAriaLabel | Custom aria-label for the confirm button. | -| confirmButtonColor | Background color for the confirm button. | -| confirmButtonText | Text for the confirm button. | -| currentProgressStep | Current progress step index. | -| denyButtonAriaLabel | Custom aria-label for the deny button. | -| denyButtonColor | Background color for the deny button. | -| denyButtonText | Text for the deny button. | -| grow | Grow animation for the modal ('row', 'column', 'fullscreen').| -| iconColor | Color of the modal icon. | -| imageAlt | Alternate text for the image. | -| imageHeight | Height of the image. | -| imageUrl | URL of the image to display. | -| imageWidth | Width of the image. | -| input | Input field type ('text', 'email', 'password', etc.). | -| inputAttributes | Custom attributes for the input field. | -| inputAutoTrim | Automatically trim the input value. | -| inputLabel | Label for the input field. | -| inputOptions | Options for select inputs. | -| inputPlaceholder | Placeholder for the input field. | -| inputValue | Initial value for the input field. | -| padding | Modal window padding. | -| position | Position of the modal ('top', 'center', 'bottom'). | -| progressSteps | Progress steps, useful for multi-step forms. | -| progressStepsDistance | Distance between progress steps. | -| returnInputValueOnDeny | Return input value when denied. | -| reverseButtons | Reverse the order of buttons. | -| showCancelButton | Show the cancel button. | -| showCloseButton | Show the close button. | -| showConfirmButton | Show the confirm button. | -| showDenyButton | Show the deny button. | -| text | Text content for the modal. | -| timer | Auto close timer for the modal. | -| timerProgressBar | Show a progress bar for the timer. | -| titleText | Title for the modal. | -| validationMessage | Message for input validation. | -| width | Width of the modal. | - -## `perform` - -The `perform` method executes the specified action on behalf of the character (designated by `characterId`), passing in `args` to the action method. This method can perform actions on behalf of any character, even a character for which the sheet does not have data. - -```javascript -dispatch.perform({ - characterId: string, - action: string, - args: string[], -}): Promise; -``` - -## `getComputed` - -The `getComputed` function is used to retrieve the value of a computed property. - -```javascript -dispatch.getComputed({ - characterId: string, - property: string, - args: string[], -}): Promise; -``` - -It takes the following arguments: - -- `characterId`: The ID of the character whose computed property you want to get. -- `property`: The name of the computed property to retrieve. -- `args`: An array of string arguments that may be required by the computed property. - -This method returns a promise that resolves with the computed value, which can be a string, number, or object. - -## `setComputed` - -The `setComputed` function is used to set the value of a computed property. - -```javascript -dispatch.setComputed({ - characterId: string, - property: string, - args: string[], -}): Promise; -``` - -It takes the following arguments: - -- `characterId`: The ID of the character whose computed property you want to set. -- `property`: The name of the computed property to set. -- `args`: An array of string arguments that may be required by the computed property. - -This method returns a promise that resolves with the new computed value, which can be a string, number, or object. - -## `compendiumRequest` - -`compendiumRequest` executes an AJAX request to the compendium service’s graphQL endpoint. It takes in a graphQL query string written according to the Compendium service’s schema. The query string does not need to include the ruleSystem shortName as this is set automatically according to the campaign override or `sheet.json` value in the VTT. - -```javascript -dispatch.compendiumRequest({ - query: string -}): Promise<{ - data: Object - errors: Array - extensions: Record -}>; -``` - -## `debouncedCompendiumRequest` - -`debouncedCompendiumRequest` works just like the `compendiumRequest` method, with the exception that calls to this function are automatically debounced (at 100ms) and grouped into a single request to the compendium service. - -```javascript -dispatch.debouncedCompendiumRequest({ - query: string -}): Promise<{ - data: Object -}>; -``` - -**NOTE**: This function will only return the requested data; it does not return errors or extensions. - -## `getTokens` - -`getTokens` requires a character ID string and returns information about tokens on the user’s current page. The return value contains two arrays of tokens. - -```javascript -dispatch.getTokens({ - characterId: string -}): Promise<{ - selected: Token[], - tokens: Token[] -}>; -``` - -The `tokens` array contains all tokens on the current page representing the character whose ID was provided to the function. The `selected` array contains any tokens that are currently selected, regardless of which character they represent. - -The returned token objects contain all of the token attributes available to the API. You can find the documentation [here](https://roll20.net). - -## `addToTracker` - -The `addToTracker` method adds or updates a single item in the turn tracker. Passing in a `tokenId` will add the specified token to the tracker, while passing in `custom` with a name and an optional image URL (`img`) will add a custom item, not connected to any character or token. - -```javascript -dispatch.addToTracker({ - tokenId?: string, - custom?: { - name: string, - img?: string - }, - formula?: string, - value: string | number -}): Promise; -``` - -A round calculation string can be added via the optional `formula` parameter. `value` is the initiative number for the item. - -## `addActionsToHost` - -The `addActionsToHost` method adds a specific action (macro) to an area of the VTT UI, either the macrobar or the token action bar. Either `sheetAction` or `action` can be passed in, but not both simultaneously. - -```javascript -dispatch.addActionsToHost({ - sheetAction?: { - characterId: string, - action: string, - args?: string[] - }, - action?: string, - locations?: ['macroBar'] | ['tokenActionBar'] | ['macroBar', 'tokenActionBar'], - actionId?: string, - name: string, - requestId?: string -}): void; -``` - -The `sheetAction` arg should be passed in when the action is designated to a character. The `action` arg should be passed when the action is more generic. - -## `getActions` - -`getActions` retrieves a specific character’s actions (macros). - -```javascript -dispatch.getActions({ - args: { - characterId?: string - } -}): Promise<{ - actions?: {} | { [id: string]: ActionFromHost } -}>; -``` - -## `setContainerSize` - -This method updates the size of the container which holds the sheet shared settings. It also returns a promise that can be awaited. - -```javascript -dispatch.setContainerSize({ - args: { - width?: number, - height?: number - } -}): Promise; -``` - -This can be used in conjunction with something like the `ResizeSensor` event listener from [npm: css-element-queries](https://www.npmjs.com/package/css-element-queries) to resize the container on the host automatically. - -## `updateTokensByCharacter` - -The `updateTokensByCharacter` method updates a particular character’s default token as well as all existing tokens representing that character. - -```javascript -dispatch.updateTokensByCharacter({ - args: { - characterId: string, - token: Partial - } -}): Promise; -``` - -This method returns a promise that can be awaited. - -## `updateTokensByIds` - -The `updateTokensByIds` method updates a single or several tokens. It also returns a promise that can be awaited. - -```javascript -dispatch.updateTokensByIds({ - args: { - tokenIds: array of ids as strings, - token: Partial - } -}): Promise; -``` - -## `autoLinkText` - -`autoLinkText` goes through the text to find handout names between square brackets and converts them into links with the handoutID. - -```javascript -dispatch.autoLinkText({ - args: { - text: string - } -}): Promise; -``` - -For example, in a game with a handout named Dragon, passing in the text "this is a [Dragon]" to the `autoLinkText` method returns something similar to: - -```html -"this is a `Dragon`" -``` - -## `openDialogFromLink` - -`openDialogFromLink` opens the supplied `urlString` through the VTT. - -```javascript -dispatch.openDialogFromLink({ - args: { - urlString: string - } -}): void; -``` - -**NOTE**: - -- If the URL is for a **handout**, the corresponding handout will be opened in the campaign. This will also check if the user opening the link has access to the handout. -- If the URL is for a **compendium**, it will open a pop-up to the compendium page. It will also check to ensure the user has access to view the page. -- If the URL is for an **external** page, a confirmation pop-up will display to warn the user that the link is for an external site, and a new tab will open in their main window if confirmed. \ No newline at end of file diff --git a/gettingstarted/contributing.md b/gettingstarted/contributing.md deleted file mode 100644 index 94cde6a..0000000 --- a/gettingstarted/contributing.md +++ /dev/null @@ -1,87 +0,0 @@ -# Contributing Guide - -We appreciate your interest in contributing to the Beacon SDK project. Here are some guidelines to help you get started: - -## How to Contribute - -### Reporting Bugs - -If you find a bug, please report it by opening an issue in the GitHub repository. Provide as much detail as possible to help us understand and reproduce the issue. - -### Suggesting Features - -We welcome suggestions for new features. Please open an issue in the GitHub repository with a detailed description of the feature you would like to see and why you think it would be useful. - -### Code Contributions - -1. **Fork the Repository**: Create a personal fork of the project on GitHub. - -2. **Clone the Fork**: Clone your fork to your local machine. - - ```bash - git clone - ``` - -3. **Create a Branch**: Create a new branch for your work. - - ```bash - git checkout -b feature-or-bugfix-description - ``` - -4. **Make Changes**: Make your changes to the codebase. Follow the existing code style and conventions. - -5. **Run Tests**: Ensure that all tests pass before submitting your changes. - - ```bash - npm run ci-check - ``` - -6. **Commit Changes**: Commit your changes with a descriptive commit message. - - ```bash - git commit -m "Description of your changes" - ``` - -7. **Push Changes**: Push your changes to your fork. - - ```bash - git push origin feature-or-bugfix-description - ``` - -8. **Create a Pull Request**: Open a pull request from your fork to the main repository. Provide a detailed description of your changes and why they should be merged. - -### Running Tests - -- **Unit Tests**: Run unit tests with Vitest. - - ```bash - npm run test:unit - ``` - -- **End-to-End Tests**: Run End-to-End tests with Cypress. - - ```bash - npm run test:e2e - ``` - -### Code Style - -- Follow the existing code style and conventions. -- Use ESLint for linting. - - ```bash - npm run lint - ``` - -- Format code with Prettier. - - ```bash - npm run format - ``` - -## Communication - -- **GitHub Issues**: Use GitHub issues for bug reports, feature requests, and questions. -- **Pull Requests**: Use GitHub pull requests to submit your code contributions. - -Thank you for contributing to the Beacon SDK project! \ No newline at end of file diff --git a/gettingstarted/faq.md b/gettingstarted/faq.md deleted file mode 100644 index 4d441ff..0000000 --- a/gettingstarted/faq.md +++ /dev/null @@ -1,48 +0,0 @@ -# FAQ - -::: details **Q1: What are actions in the context of the VTT?** - -Actions are methods executed from the VTT, often used for rolls triggered from macros or chat buttons. They are defined in the sheet's configuration and can interact with character data. -::: - -::: details **Q2: How are computed properties used in the VTT?** - -Computed properties are defined attributes accessible by the host, usable in macros, and assignable to token bars. They can represent derived values or complex calculations based on character data. -::: - -::: details **Q3: What is the dispatch function used for?** - -The dispatch function provides methods for sending commands from the character sheet back to the host, including updating character data, performing actions, and interacting with the VTT interface. -::: - - -::: details **Q4: What are roll buttons, and how do they work?** - -Roll buttons are HTML elements with specific attributes that execute designated sheet actions when clicked. They can pass arguments to the action method and are commonly used for triggering rolls from the character sheet. -::: - -::: details **Q5: How are legacy macro attributes handled in the VTT?** - -Legacy macro attributes can be mapped to the new sheet structure using the convertLegacyMacroAttributes function. Sheet developers can define how to handle legacy attribute values to ensure compatibility with existing macros. -::: - - -::: details **Q6: What is the purpose of the query function?** - -The query function displays a SweetAlert prompt to users and returns the results along with any errors. It is commonly used for interactive prompts or confirmations within the VTT interface. -::: - - -::: details **Q7: How are tokens managed in the VTT?** - -Tokens represent characters or objects on the virtual tabletop. Functions like getTokens, updateTokensByCharacter, and addToTracker are used to retrieve token information, update token data, and manage tokens in the turn tracker. -::: - - -::: details **Q8: What is the role of the convertLegacyMacroAttributesArgs type?** - -The convertLegacyMacroAttributesArgs type defines the arguments used for handling legacy macro attributes. It includes the attribute name, character ID, and character data needed for mapping legacy attributes to the new sheet structure. -::: - - - diff --git a/gettingstarted/glossary.md b/gettingstarted/glossary.md deleted file mode 100644 index 82c997a..0000000 --- a/gettingstarted/glossary.md +++ /dev/null @@ -1,46 +0,0 @@ -# Glossary - -## Background: -The background color of the alert box. - -## Character: -An entity in the game with attributes, bio, GM notes, and a token representation. - -## Character sheet: -A digital or printed page used to track a character's attributes, abilities, and other relevant information in a role-playing game. - -## Computed Property: -Properties that have both get and set methods, which can be dynamically calculated. - -## ConvertLegacyMacroAttributes: -A function to handle mapping legacy macro attributes to the new Beacon Sheet format. - -## Dispatch: -A set of functions enabling the sheet to send commands back to the VTT. - -## GM (Game Master): -The person who runs the game, controls the NPCs & the story, and provides challenges for the players. - -## Handler: -Methods that act as event handlers to process messages from the host. - -## InitRelay: -Function to initialize the SDK relay, setting up communication between the host and the character sheet. - -## Macro: -A script that automates repetitive tasks in the VTT. - -## Roll Template: -A predefined format for displaying the results of a dice roll. - -## Token: -A visual representation of a character or object on the virtual tabletop, with various properties like position, size, and attributes. - -## VTT (Virtual Tabletop): -An online platform that allows players to play tabletop role-playing games over the internet. - -## ValidationMessage: -A message displayed when an input value does not meet specific criteria. - -## Quantum Roll: -A system that ensures the fairness and authenticity of dice rolls in the VTT by using cryptographic methods. \ No newline at end of file diff --git a/gettingstarted/installation.md b/gettingstarted/installation.md deleted file mode 100644 index 2cb3065..0000000 --- a/gettingstarted/installation.md +++ /dev/null @@ -1,53 +0,0 @@ -# Installation - -This guide will help you set up the Beacon SDK on your machine. - -## Prerequisites - -Before you can install the Beacon SDK, you'll need to have Node.js installed on your machine. If you don't have Node.js installed, use the following steps in the [official Node.js documentation](https://nodejs.org/en/download/package-manager). - -## Step 1: Accessing Beacon SDK - -```js -npm i @roll20-official/beacon-sdk -``` - -## Step 2: Install & Import - -The following steps will guide you in installing the package in your application: - -1. **Add the package to your `package.json`:** - - Under the `dependencies` object key of your `package.json`, add a new string key called `@roll20/beacon-sdk` with the version you want to install from our version history. - - **For example**: - - ```json - { - "@roll20/beacon-sdk": "0.0.0" - } - ``` - - For more information about installing packages, refer to the [NPM documentation](https://docs.npmjs.com/specifying-dependencies-and-devdependencies-in-a-package-json-file). - -2. **Run `npm install`:** - - Open a terminal in the root of your application’s folder and run the following command: - - ```bash - npm install - ``` - - For more information about NPM commands, refer to the [NPM install documentation](https://docs.npmjs.com/cli/v6/commands/npm-install). - -3. **Import the necessary package contents in your application:** - - The package exports various utilities you can use in your application. For example, you will need to utilize the `initRelay` function from the package. - - Here's an import statement for that function: - - ```javascript - import { initRelay } from '@roll20/beacon-sdk'; - ``` - - For more information about imports, refer to the [JavaScript import documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import). diff --git a/gettingstarted/introduction.md b/gettingstarted/introduction.md deleted file mode 100644 index ee32347..0000000 --- a/gettingstarted/introduction.md +++ /dev/null @@ -1,44 +0,0 @@ -# Introduction - -The Beacon SDK is a toolset designed to enhance and streamline the development of virtual tabletop (VTT) character sheets and other interactive elements. - -Whether you're a game master (GM), a developer, or a player, the Beacon SDK provides a framework to create dynamic, responsive, and fully integrated VTT experiences. - -## What is the Beacon SDK? - -The Beacon SDK is a specialized software development kit for virtual tabletops. - -It facilitates creating and managing interactive character sheets, roll templates, macros, and other VTT functionalities. - -The SDK ensures easy communication between the VTT platform and the character sheets, allowing real-time updates and interactions. - -## Key Features - -- **Character Sheets**: Design and implement detailed character sheets with dynamic attributes and real-time updates. -- **Roll Mechanics**: Integrate complex roll formulas and display roll results directly within the VTT. -- **Macros**: Create and manage macros for automated actions and roll calculations. -- **Event Handling**: Utilize a comprehensive set of handlers to manage various events and interactions within the VTT. -- **Legacy Support**: Convert and integrate legacy macros and roll templates with the new Beacon architecture. -- **Customization**: Define custom actions computed properties and handle specific roll templates tailored to your game's needs. - -## Components Overview - -The Beacon SDK is composed of several key components: - -- **Actions**: Define and manage custom actions that can be triggered within the VTT. -- **Handlers**: Event handlers that process and respond to various VTT events and messages. -- **Computed Properties**: Define dynamically computed properties based on other attributes. -- **Macro Attributes**: Convert and manage legacy macro attributes for compatibility with the Beacon SDK. -- **Rolls**: Implement advanced roll mechanics and display results dynamically within the VTT. - -For a comprehensive overview of these components, view the components section. - -## Getting Started - -To get started with the Beacon SDK, you must initialize the relay, set up your character sheets, and define the necessary actions, handlers, and computed properties. - -This documentation provides detailed guides and examples to help you through each step of the process. - -By leveraging the Beacon SDK, you can create rich, interactive, fully integrated VTT experiences that enhance gameplay and streamline game management. - -Whether adapting existing character sheets or building new ones from scratch, the Beacon SDK offers the tools and flexibility to bring your virtual tabletop to life. \ No newline at end of file diff --git a/gettingstarted/quickstart.md b/gettingstarted/quickstart.md deleted file mode 100644 index d1f7dd3..0000000 --- a/gettingstarted/quickstart.md +++ /dev/null @@ -1,84 +0,0 @@ -# Beginner Beacon Sheet - -This is a quick start sheet example. This sheet will guide you through getting started with the Beacon Sheet. - -## Prerequisites - -To set this sheet up properly, make sure that you have the following tools installed: - -- Vue.js -- Vite -- SCSS - -![Beginner](../beginner.png) -_**Figure 1**: Quickstart sheet_ - -Use the following steps to get started: - -1. **Install the Beacon SDK**: Run the following command. - -```bash -npm i @roll20-official/beacon-sdk -``` - -2. **Install dependencies**: Install the dependencies for the project. - -```bash -npm install -``` - -3. **Start the Vite server**: After installing the project's dependencies, you'll need to start the Vite server. There are two ways to do this: - -a. **Offline Development**: This method will run the Vite server with the default port and environment set to development. - -```bash -npm run dev -``` - -Once this code executes successfully, you can access the Vite server at `http://localhost:5173`. - -This method is useful when you do not have access to the Roll20 website or would like to work on parts of your project that do not depend on a connection to the VTT or Roll20 Characters, such as working on styling, mocking up the environment, building Vue components, testing functionality, etc. - -::: info -In development mode, you cannot save or access existing character data or use the Beacon SDK functions that depend on VTT or Roll20 Characters functionality, such as dice rolling and token manipulation. -::: - - -b. **Sandbox Development**: This method will run the Vite server with the port set to `7620` and the environment set to staging mode. - -```bash -npm run sandbox -``` - -This command will build the SCSS files and then run the Vite server. This will set the server up for connecting to a VTT custom sheet sandbox as well as through the sandbox in Roll20 Characters. - -To test your changes in the VTT custom sheet sandbox, you will need to add the following to the `sheet.json` editor in the game settings: - -```json -{ - "advanced": true, - "advancedPort": 7620 -} -``` - -## Useful Commands - -The following set of commands can come in handy when working with this sheet: - -- For Hot reloading and building CSS files, use the following command: - -```bash -npm run watch-scss -``` - -- For linting, use the following command: - -```bash -npm run lint -``` - -- For formatting with Prettier, use the following command: - -```bash -npm run format -``` \ No newline at end of file diff --git a/gettingstarted/quickstartadvance.md b/gettingstarted/quickstartadvance.md deleted file mode 100644 index 12471ff..0000000 --- a/gettingstarted/quickstartadvance.md +++ /dev/null @@ -1,81 +0,0 @@ -# Advanced Beacon Sheet - -This is an advanced quick start sheet example. This sheet takes an advanced approach to building the Beacon sheet. - -## Prerequisites - -To set this sheet up properly, make sure that you have the following: - -- Vue framework & Routing -- Multiple Data Stores -- Complex Roll Templates -- Rich Sheet Actions -- TypeScript -- Vite -- SCSS -- Ability to run Unit & End-to-End Tests - -![Advanced](../advanced.png) -_**Figure 1**: Advanced sheet_ - -This sheet uses the same steps listed in the [Beginner sheet](/gettingstarted/quickstart.md). Immediately after implementing those three steps, you'll add the following step: - -- **Run a CI check**: This will run several checks to ensure your code is as optimal as possible, including formatting, linting, type checking, unit tests, and end-to-end tests. - -```bash -npm run ci-check -``` - -You can think of this command as a sanity check you can leverage when pushing a big release for your sheet! - -## Useful Commands - -The following set of commands can come in handy when working with this sheet: - -- For Hot reloading and building CSS files, use the following command: - -```bash -npm run watch-scss -``` - -- For linting, use the following command: - -```bash -npm run lint -``` - -- For formatting with Prettier, use the following command: - -```bash -npm run format -``` - -- For type checking with TypeScript, use the following command: - -```bash -npm run type-check -``` - -- For running unit tests with Vitest, use the following command: - -```bash -npm run test:unit -``` - -- To open up and develop local end-to-end tests with Cypress, use the following command: - -```bash -npm run test:e2e:open:local -``` - -- For running local end-to-end tests with Cypress, use the following command: - -```bash -npm run test:e2e:local -``` - -- To run CDN-hosted end-to-end tests with Cypress, use the following command: - -```bash -npm run test:e2e -``` \ No newline at end of file diff --git a/gettingstarted/releasesheet.md b/gettingstarted/releasesheet.md deleted file mode 100644 index e69de29..0000000 diff --git a/index.md b/index.md deleted file mode 100644 index f11fdf8..0000000 --- a/index.md +++ /dev/null @@ -1,25 +0,0 @@ ---- -# https://vitepress.dev/reference/default-theme-home-page -layout: home - -hero: - name: "Beacon SDK" - text: "" - tagline: Build Advanced Character Sheets for Roll20 - actions: - - theme: brand - text: Markdown Examples - link: /markdown-examples - - theme: alt - text: Docs - link: ../gettingstarted/introduction - -features: - - title: Feature A - details: Lorem ipsum dolor sit amet, consectetur adipiscing elit - - title: Feature B - details: Lorem ipsum dolor sit amet, consectetur adipiscing elit - - title: Feature C - details: Lorem ipsum dolor sit amet, consectetur adipiscing elit ---- - diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 556e5b7..0000000 --- a/package-lock.json +++ /dev/null @@ -1,1627 +0,0 @@ -{ - "name": "roll20", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "devDependencies": { - "vitepress": "^1.2.3" - } - }, - "node_modules/@algolia/autocomplete-core": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz", - "integrity": "sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-plugin-algolia-insights": "1.9.3", - "@algolia/autocomplete-shared": "1.9.3" - } - }, - "node_modules/@algolia/autocomplete-plugin-algolia-insights": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz", - "integrity": "sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-shared": "1.9.3" - }, - "peerDependencies": { - "search-insights": ">= 1 < 3" - } - }, - "node_modules/@algolia/autocomplete-preset-algolia": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz", - "integrity": "sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-shared": "1.9.3" - }, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/autocomplete-shared": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz", - "integrity": "sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==", - "dev": true, - "peerDependencies": { - "@algolia/client-search": ">= 4.9.1 < 6", - "algoliasearch": ">= 4.9.1 < 6" - } - }, - "node_modules/@algolia/cache-browser-local-storage": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.23.3.tgz", - "integrity": "sha512-vRHXYCpPlTDE7i6UOy2xE03zHF2C8MEFjPN2v7fRbqVpcOvAUQK81x3Kc21xyb5aSIpYCjWCZbYZuz8Glyzyyg==", - "dev": true, - "dependencies": { - "@algolia/cache-common": "4.23.3" - } - }, - "node_modules/@algolia/cache-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.23.3.tgz", - "integrity": "sha512-h9XcNI6lxYStaw32pHpB1TMm0RuxphF+Ik4o7tcQiodEdpKK+wKufY6QXtba7t3k8eseirEMVB83uFFF3Nu54A==", - "dev": true - }, - "node_modules/@algolia/cache-in-memory": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.23.3.tgz", - "integrity": "sha512-yvpbuUXg/+0rbcagxNT7un0eo3czx2Uf0y4eiR4z4SD7SiptwYTpbuS0IHxcLHG3lq22ukx1T6Kjtk/rT+mqNg==", - "dev": true, - "dependencies": { - "@algolia/cache-common": "4.23.3" - } - }, - "node_modules/@algolia/client-account": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.23.3.tgz", - "integrity": "sha512-hpa6S5d7iQmretHHF40QGq6hz0anWEHGlULcTIT9tbUssWUriN9AUXIFQ8Ei4w9azD0hc1rUok9/DeQQobhQMA==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/@algolia/client-analytics": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.23.3.tgz", - "integrity": "sha512-LBsEARGS9cj8VkTAVEZphjxTjMVCci+zIIiRhpFun9jGDUlS1XmhCW7CTrnaWeIuCQS/2iPyRqSy1nXPjcBLRA==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/@algolia/client-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.23.3.tgz", - "integrity": "sha512-l6EiPxdAlg8CYhroqS5ybfIczsGUIAC47slLPOMDeKSVXYG1n0qGiz4RjAHLw2aD0xzh2EXZ7aRguPfz7UKDKw==", - "dev": true, - "dependencies": { - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/@algolia/client-personalization": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.23.3.tgz", - "integrity": "sha512-3E3yF3Ocr1tB/xOZiuC3doHQBQ2zu2MPTYZ0d4lpfWads2WTKG7ZzmGnsHmm63RflvDeLK/UVx7j2b3QuwKQ2g==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/@algolia/client-search": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.23.3.tgz", - "integrity": "sha512-P4VAKFHqU0wx9O+q29Q8YVuaowaZ5EM77rxfmGnkHUJggh28useXQdopokgwMeYw2XUht49WX5RcTQ40rZIabw==", - "dev": true, - "dependencies": { - "@algolia/client-common": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/@algolia/logger-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.23.3.tgz", - "integrity": "sha512-y9kBtmJwiZ9ZZ+1Ek66P0M68mHQzKRxkW5kAAXYN/rdzgDN0d2COsViEFufxJ0pb45K4FRcfC7+33YB4BLrZ+g==", - "dev": true - }, - "node_modules/@algolia/logger-console": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.23.3.tgz", - "integrity": "sha512-8xoiseoWDKuCVnWP8jHthgaeobDLolh00KJAdMe9XPrWPuf1by732jSpgy2BlsLTaT9m32pHI8CRfrOqQzHv3A==", - "dev": true, - "dependencies": { - "@algolia/logger-common": "4.23.3" - } - }, - "node_modules/@algolia/recommend": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-4.23.3.tgz", - "integrity": "sha512-9fK4nXZF0bFkdcLBRDexsnGzVmu4TSYZqxdpgBW2tEyfuSSY54D4qSRkLmNkrrz4YFvdh2GM1gA8vSsnZPR73w==", - "dev": true, - "dependencies": { - "@algolia/cache-browser-local-storage": "4.23.3", - "@algolia/cache-common": "4.23.3", - "@algolia/cache-in-memory": "4.23.3", - "@algolia/client-common": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/logger-common": "4.23.3", - "@algolia/logger-console": "4.23.3", - "@algolia/requester-browser-xhr": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/requester-node-http": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/@algolia/requester-browser-xhr": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.23.3.tgz", - "integrity": "sha512-jDWGIQ96BhXbmONAQsasIpTYWslyjkiGu0Quydjlowe+ciqySpiDUrJHERIRfELE5+wFc7hc1Q5hqjGoV7yghw==", - "dev": true, - "dependencies": { - "@algolia/requester-common": "4.23.3" - } - }, - "node_modules/@algolia/requester-common": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.23.3.tgz", - "integrity": "sha512-xloIdr/bedtYEGcXCiF2muajyvRhwop4cMZo+K2qzNht0CMzlRkm8YsDdj5IaBhshqfgmBb3rTg4sL4/PpvLYw==", - "dev": true - }, - "node_modules/@algolia/requester-node-http": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.23.3.tgz", - "integrity": "sha512-zgu++8Uj03IWDEJM3fuNl34s746JnZOWn1Uz5taV1dFyJhVM/kTNw9Ik7YJWiUNHJQXcaD8IXD1eCb0nq/aByA==", - "dev": true, - "dependencies": { - "@algolia/requester-common": "4.23.3" - } - }, - "node_modules/@algolia/transporter": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.23.3.tgz", - "integrity": "sha512-Wjl5gttqnf/gQKJA+dafnD0Y6Yw97yvfY8R9h0dQltX1GXTgNs1zWgvtWW0tHl1EgMdhAyw189uWiZMnL3QebQ==", - "dev": true, - "dependencies": { - "@algolia/cache-common": "4.23.3", - "@algolia/logger-common": "4.23.3", - "@algolia/requester-common": "4.23.3" - } - }, - "node_modules/@babel/parser": { - "version": "7.24.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz", - "integrity": "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@docsearch/css": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.6.0.tgz", - "integrity": "sha512-+sbxb71sWre+PwDK7X2T8+bhS6clcVMLwBPznX45Qu6opJcgRjAp7gYSDzVFp187J+feSj5dNBN1mJoi6ckkUQ==", - "dev": true - }, - "node_modules/@docsearch/js": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.6.0.tgz", - "integrity": "sha512-QujhqINEElrkIfKwyyyTfbsfMAYCkylInLYMRqHy7PHc8xTBQCow73tlo/Kc7oIwBrCLf0P3YhjlOeV4v8hevQ==", - "dev": true, - "dependencies": { - "@docsearch/react": "3.6.0", - "preact": "^10.0.0" - } - }, - "node_modules/@docsearch/react": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.6.0.tgz", - "integrity": "sha512-HUFut4ztcVNmqy9gp/wxNbC7pTOHhgVVkHVGCACTuLhUKUhKAF9KYHJtMiLUJxEqiFLQiuri1fWF8zqwM/cu1w==", - "dev": true, - "dependencies": { - "@algolia/autocomplete-core": "1.9.3", - "@algolia/autocomplete-preset-algolia": "1.9.3", - "@docsearch/css": "3.6.0", - "algoliasearch": "^4.19.1" - }, - "peerDependencies": { - "@types/react": ">= 16.8.0 < 19.0.0", - "react": ">= 16.8.0 < 19.0.0", - "react-dom": ">= 16.8.0 < 19.0.0", - "search-insights": ">= 1 < 3" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - }, - "search-insights": { - "optional": true - } - } - }, - "node_modules/@esbuild/aix-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz", - "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz", - "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz", - "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/android-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz", - "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz", - "integrity": "sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/darwin-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz", - "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz", - "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/freebsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz", - "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz", - "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz", - "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz", - "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-loong64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz", - "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==", - "cpu": [ - "loong64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-mips64el": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz", - "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==", - "cpu": [ - "mips64el" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-ppc64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz", - "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-riscv64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz", - "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-s390x": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz", - "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/linux-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz", - "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/netbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz", - "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/openbsd-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz", - "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/sunos-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz", - "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-arm64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz", - "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-ia32": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz", - "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@esbuild/win32-x64": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz", - "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.0.tgz", - "integrity": "sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.0.tgz", - "integrity": "sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz", - "integrity": "sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.0.tgz", - "integrity": "sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.0.tgz", - "integrity": "sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.0.tgz", - "integrity": "sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==", - "cpu": [ - "arm" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.0.tgz", - "integrity": "sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.0.tgz", - "integrity": "sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.0.tgz", - "integrity": "sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==", - "cpu": [ - "ppc64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.0.tgz", - "integrity": "sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==", - "cpu": [ - "riscv64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.0.tgz", - "integrity": "sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==", - "cpu": [ - "s390x" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.0.tgz", - "integrity": "sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.0.tgz", - "integrity": "sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.0.tgz", - "integrity": "sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==", - "cpu": [ - "arm64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.0.tgz", - "integrity": "sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==", - "cpu": [ - "ia32" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz", - "integrity": "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==", - "cpu": [ - "x64" - ], - "dev": true, - "optional": true, - "os": [ - "win32" - ] - }, - "node_modules/@shikijs/core": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.6.2.tgz", - "integrity": "sha512-guW5JeDzZ7uwOjTfCOFZ2VtVXk5tmkMzBYbKGfXsmAH1qYOej49L5jQDcGmwd6/OgvpmWhzO2GNJkQIFnbwLPQ==", - "dev": true - }, - "node_modules/@shikijs/transformers": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-1.6.2.tgz", - "integrity": "sha512-ndqTWyHnxmsLkowhKWTam26opw8hg5a34y6FAUG/Xf6E49n3MM//nenKxXiWpPYkNPl1KZnYXB1k+Ia46wjOZg==", - "dev": true, - "dependencies": { - "shiki": "1.6.2" - } - }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true - }, - "node_modules/@types/linkify-it": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", - "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==", - "dev": true - }, - "node_modules/@types/markdown-it": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", - "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", - "dev": true, - "dependencies": { - "@types/linkify-it": "^5", - "@types/mdurl": "^2" - } - }, - "node_modules/@types/mdurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", - "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==", - "dev": true - }, - "node_modules/@types/web-bluetooth": { - "version": "0.0.20", - "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", - "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==", - "dev": true - }, - "node_modules/@vitejs/plugin-vue": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.5.tgz", - "integrity": "sha512-LOjm7XeIimLBZyzinBQ6OSm3UBCNVCpLkxGC0oWmm2YPzVZoxMsdvNVimLTBzpAnR9hl/yn1SHGuRfe6/Td9rQ==", - "dev": true, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "vite": "^5.0.0", - "vue": "^3.2.25" - } - }, - "node_modules/@vue/compiler-core": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz", - "integrity": "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.24.4", - "@vue/shared": "3.4.27", - "entities": "^4.5.0", - "estree-walker": "^2.0.2", - "source-map-js": "^1.2.0" - } - }, - "node_modules/@vue/compiler-dom": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz", - "integrity": "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==", - "dev": true, - "dependencies": { - "@vue/compiler-core": "3.4.27", - "@vue/shared": "3.4.27" - } - }, - "node_modules/@vue/compiler-sfc": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz", - "integrity": "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.24.4", - "@vue/compiler-core": "3.4.27", - "@vue/compiler-dom": "3.4.27", - "@vue/compiler-ssr": "3.4.27", - "@vue/shared": "3.4.27", - "estree-walker": "^2.0.2", - "magic-string": "^0.30.10", - "postcss": "^8.4.38", - "source-map-js": "^1.2.0" - } - }, - "node_modules/@vue/compiler-ssr": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz", - "integrity": "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.4.27", - "@vue/shared": "3.4.27" - } - }, - "node_modules/@vue/devtools-api": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.2.1.tgz", - "integrity": "sha512-6oNCtyFOrNdqm6GUkFujsCgFlpbsHLnZqq7edeM/+cxAbMyCWvsaCsIMUaz7AiluKLccCGEM8fhOsjaKgBvb7g==", - "dev": true, - "dependencies": { - "@vue/devtools-kit": "^7.2.1" - } - }, - "node_modules/@vue/devtools-kit": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.2.1.tgz", - "integrity": "sha512-Wak/fin1X0Q8LLIfCAHBrdaaB+R6IdpSXsDByPHbQ3BmkCP0/cIo/oEGp9i0U2+gEqD4L3V9RDjNf1S34DTzQQ==", - "dev": true, - "dependencies": { - "@vue/devtools-shared": "^7.2.1", - "hookable": "^5.5.3", - "mitt": "^3.0.1", - "perfect-debounce": "^1.0.0", - "speakingurl": "^14.0.1" - }, - "peerDependencies": { - "vue": "^3.0.0" - } - }, - "node_modules/@vue/devtools-shared": { - "version": "7.2.1", - "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.2.1.tgz", - "integrity": "sha512-PCJF4UknJmOal68+X9XHyVeQ+idv0LFujkTOIW30+GaMJqwFVN9LkQKX4gLqn61KkGMdJTzQ1bt7EJag3TI6AA==", - "dev": true, - "dependencies": { - "rfdc": "^1.3.1" - } - }, - "node_modules/@vue/reactivity": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz", - "integrity": "sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==", - "dev": true, - "dependencies": { - "@vue/shared": "3.4.27" - } - }, - "node_modules/@vue/runtime-core": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.27.tgz", - "integrity": "sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==", - "dev": true, - "dependencies": { - "@vue/reactivity": "3.4.27", - "@vue/shared": "3.4.27" - } - }, - "node_modules/@vue/runtime-dom": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.27.tgz", - "integrity": "sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==", - "dev": true, - "dependencies": { - "@vue/runtime-core": "3.4.27", - "@vue/shared": "3.4.27", - "csstype": "^3.1.3" - } - }, - "node_modules/@vue/server-renderer": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.27.tgz", - "integrity": "sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==", - "dev": true, - "dependencies": { - "@vue/compiler-ssr": "3.4.27", - "@vue/shared": "3.4.27" - }, - "peerDependencies": { - "vue": "3.4.27" - } - }, - "node_modules/@vue/shared": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz", - "integrity": "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==", - "dev": true - }, - "node_modules/@vueuse/core": { - "version": "10.10.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.10.0.tgz", - "integrity": "sha512-vexJ/YXYs2S42B783rI95lMt3GzEwkxzC8Hb0Ndpd8rD+p+Lk/Za4bd797Ym7yq4jXqdSyj3JLChunF/vyYjUw==", - "dev": true, - "dependencies": { - "@types/web-bluetooth": "^0.0.20", - "@vueuse/metadata": "10.10.0", - "@vueuse/shared": "10.10.0", - "vue-demi": ">=0.14.7" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/core/node_modules/vue-demi": { - "version": "0.14.8", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz", - "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/@vueuse/integrations": { - "version": "10.10.0", - "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-10.10.0.tgz", - "integrity": "sha512-vHGeK7X6mkdkpcm1eE9t3Cpm21pNVfZRwrjwwbrEs9XftnSgszF4831G2rei8Dt9cIYJIfFV+iyx/29muimJPQ==", - "dev": true, - "dependencies": { - "@vueuse/core": "10.10.0", - "@vueuse/shared": "10.10.0", - "vue-demi": ">=0.14.7" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "async-validator": "*", - "axios": "*", - "change-case": "*", - "drauu": "*", - "focus-trap": "*", - "fuse.js": "*", - "idb-keyval": "*", - "jwt-decode": "*", - "nprogress": "*", - "qrcode": "*", - "sortablejs": "*", - "universal-cookie": "*" - }, - "peerDependenciesMeta": { - "async-validator": { - "optional": true - }, - "axios": { - "optional": true - }, - "change-case": { - "optional": true - }, - "drauu": { - "optional": true - }, - "focus-trap": { - "optional": true - }, - "fuse.js": { - "optional": true - }, - "idb-keyval": { - "optional": true - }, - "jwt-decode": { - "optional": true - }, - "nprogress": { - "optional": true - }, - "qrcode": { - "optional": true - }, - "sortablejs": { - "optional": true - }, - "universal-cookie": { - "optional": true - } - } - }, - "node_modules/@vueuse/integrations/node_modules/vue-demi": { - "version": "0.14.8", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz", - "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/@vueuse/metadata": { - "version": "10.10.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.10.0.tgz", - "integrity": "sha512-UNAo2sTCAW5ge6OErPEHb5z7NEAg3XcO9Cj7OK45aZXfLLH1QkexDcZD77HBi5zvEiLOm1An+p/4b5K3Worpug==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/shared": { - "version": "10.10.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.10.0.tgz", - "integrity": "sha512-2aW33Ac0Uk0U+9yo3Ypg9s5KcR42cuehRWl7vnUHadQyFvCktseyxxEPBi1Eiq4D2yBGACOnqLZpx1eMc7g5Og==", - "dev": true, - "dependencies": { - "vue-demi": ">=0.14.7" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - } - }, - "node_modules/@vueuse/shared/node_modules/vue-demi": { - "version": "0.14.8", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz", - "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==", - "dev": true, - "hasInstallScript": true, - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } - } - }, - "node_modules/algoliasearch": { - "version": "4.23.3", - "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.23.3.tgz", - "integrity": "sha512-Le/3YgNvjW9zxIQMRhUHuhiUjAlKY/zsdZpfq4dlLqg6mEm0nL6yk+7f2hDOtLpxsgE4jSzDmvHL7nXdBp5feg==", - "dev": true, - "dependencies": { - "@algolia/cache-browser-local-storage": "4.23.3", - "@algolia/cache-common": "4.23.3", - "@algolia/cache-in-memory": "4.23.3", - "@algolia/client-account": "4.23.3", - "@algolia/client-analytics": "4.23.3", - "@algolia/client-common": "4.23.3", - "@algolia/client-personalization": "4.23.3", - "@algolia/client-search": "4.23.3", - "@algolia/logger-common": "4.23.3", - "@algolia/logger-console": "4.23.3", - "@algolia/recommend": "4.23.3", - "@algolia/requester-browser-xhr": "4.23.3", - "@algolia/requester-common": "4.23.3", - "@algolia/requester-node-http": "4.23.3", - "@algolia/transporter": "4.23.3" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/esbuild": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz", - "integrity": "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==", - "dev": true, - "hasInstallScript": true, - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.20.2", - "@esbuild/android-arm": "0.20.2", - "@esbuild/android-arm64": "0.20.2", - "@esbuild/android-x64": "0.20.2", - "@esbuild/darwin-arm64": "0.20.2", - "@esbuild/darwin-x64": "0.20.2", - "@esbuild/freebsd-arm64": "0.20.2", - "@esbuild/freebsd-x64": "0.20.2", - "@esbuild/linux-arm": "0.20.2", - "@esbuild/linux-arm64": "0.20.2", - "@esbuild/linux-ia32": "0.20.2", - "@esbuild/linux-loong64": "0.20.2", - "@esbuild/linux-mips64el": "0.20.2", - "@esbuild/linux-ppc64": "0.20.2", - "@esbuild/linux-riscv64": "0.20.2", - "@esbuild/linux-s390x": "0.20.2", - "@esbuild/linux-x64": "0.20.2", - "@esbuild/netbsd-x64": "0.20.2", - "@esbuild/openbsd-x64": "0.20.2", - "@esbuild/sunos-x64": "0.20.2", - "@esbuild/win32-arm64": "0.20.2", - "@esbuild/win32-ia32": "0.20.2", - "@esbuild/win32-x64": "0.20.2" - } - }, - "node_modules/estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "node_modules/focus-trap": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.4.tgz", - "integrity": "sha512-N7kHdlgsO/v+iD/dMoJKtsSqs5Dz/dXZVebRgJw23LDk+jMi/974zyiOYDziY2JPp8xivq9BmUGwIJMiuSBi7w==", - "dev": true, - "dependencies": { - "tabbable": "^6.2.0" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/hookable": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", - "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", - "dev": true - }, - "node_modules/magic-string": { - "version": "0.30.10", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", - "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", - "dev": true, - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - } - }, - "node_modules/mark.js": { - "version": "8.11.1", - "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", - "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==", - "dev": true - }, - "node_modules/minisearch": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-6.3.0.tgz", - "integrity": "sha512-ihFnidEeU8iXzcVHy74dhkxh/dn8Dc08ERl0xwoMMGqp4+LvRSCgicb+zGqWthVokQKvCSxITlh3P08OzdTYCQ==", - "dev": true - }, - "node_modules/mitt": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", - "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/perfect-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", - "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", - "dev": true - }, - "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", - "dev": true - }, - "node_modules/postcss": { - "version": "8.4.38", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz", - "integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.0", - "source-map-js": "^1.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/preact": { - "version": "10.22.0", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.22.0.tgz", - "integrity": "sha512-RRurnSjJPj4rp5K6XoP45Ui33ncb7e4H7WiOHVpjbkvqvA3U+N8Z6Qbo0AE6leGYBV66n8EhEaFixvIu3SkxFw==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/preact" - } - }, - "node_modules/rfdc": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", - "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==", - "dev": true - }, - "node_modules/rollup": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", - "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", - "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" - }, - "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.0", - "@rollup/rollup-android-arm64": "4.18.0", - "@rollup/rollup-darwin-arm64": "4.18.0", - "@rollup/rollup-darwin-x64": "4.18.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", - "@rollup/rollup-linux-arm-musleabihf": "4.18.0", - "@rollup/rollup-linux-arm64-gnu": "4.18.0", - "@rollup/rollup-linux-arm64-musl": "4.18.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", - "@rollup/rollup-linux-riscv64-gnu": "4.18.0", - "@rollup/rollup-linux-s390x-gnu": "4.18.0", - "@rollup/rollup-linux-x64-gnu": "4.18.0", - "@rollup/rollup-linux-x64-musl": "4.18.0", - "@rollup/rollup-win32-arm64-msvc": "4.18.0", - "@rollup/rollup-win32-ia32-msvc": "4.18.0", - "@rollup/rollup-win32-x64-msvc": "4.18.0", - "fsevents": "~2.3.2" - } - }, - "node_modules/search-insights": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.14.0.tgz", - "integrity": "sha512-OLN6MsPMCghDOqlCtsIsYgtsC0pnwVTyT9Mu6A3ewOj1DxvzZF6COrn2g86E/c05xbktB0XN04m/t1Z+n+fTGw==", - "dev": true, - "peer": true - }, - "node_modules/shiki": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.6.2.tgz", - "integrity": "sha512-X3hSm5GzzBd/BmPmGfkueOUADLyBoZo1ojYQXhd+NU2VJn458yt4duaS0rVzC+WtqftSV7mTVvDw+OB9AHi3Eg==", - "dev": true, - "dependencies": { - "@shikijs/core": "1.6.2" - } - }, - "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/speakingurl": { - "version": "14.0.1", - "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", - "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tabbable": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", - "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", - "dev": true - }, - "node_modules/vite": { - "version": "5.2.12", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.2.12.tgz", - "integrity": "sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA==", - "dev": true, - "dependencies": { - "esbuild": "^0.20.1", - "postcss": "^8.4.38", - "rollup": "^4.13.0" - }, - "bin": { - "vite": "bin/vite.js" - }, - "engines": { - "node": "^18.0.0 || >=20.0.0" - }, - "funding": { - "url": "https://github.com/vitejs/vite?sponsor=1" - }, - "optionalDependencies": { - "fsevents": "~2.3.3" - }, - "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", - "less": "*", - "lightningcss": "^1.21.0", - "sass": "*", - "stylus": "*", - "sugarss": "*", - "terser": "^5.4.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "less": { - "optional": true - }, - "lightningcss": { - "optional": true - }, - "sass": { - "optional": true - }, - "stylus": { - "optional": true - }, - "sugarss": { - "optional": true - }, - "terser": { - "optional": true - } - } - }, - "node_modules/vitepress": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.2.3.tgz", - "integrity": "sha512-GvEsrEeNLiDE1+fuwDAYJCYLNZDAna+EtnXlPajhv/MYeTjbNK6Bvyg6NoTdO1sbwuQJ0vuJR99bOlH53bo6lg==", - "dev": true, - "dependencies": { - "@docsearch/css": "^3.6.0", - "@docsearch/js": "^3.6.0", - "@shikijs/core": "^1.6.2", - "@shikijs/transformers": "^1.6.2", - "@types/markdown-it": "^14.1.1", - "@vitejs/plugin-vue": "^5.0.5", - "@vue/devtools-api": "^7.2.1", - "@vue/shared": "^3.4.27", - "@vueuse/core": "^10.10.0", - "@vueuse/integrations": "^10.10.0", - "focus-trap": "^7.5.4", - "mark.js": "8.11.1", - "minisearch": "^6.3.0", - "shiki": "^1.6.2", - "vite": "^5.2.12", - "vue": "^3.4.27" - }, - "bin": { - "vitepress": "bin/vitepress.js" - }, - "peerDependencies": { - "markdown-it-mathjax3": "^4", - "postcss": "^8" - }, - "peerDependenciesMeta": { - "markdown-it-mathjax3": { - "optional": true - }, - "postcss": { - "optional": true - } - } - }, - "node_modules/vue": { - "version": "3.4.27", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.27.tgz", - "integrity": "sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA==", - "dev": true, - "dependencies": { - "@vue/compiler-dom": "3.4.27", - "@vue/compiler-sfc": "3.4.27", - "@vue/runtime-dom": "3.4.27", - "@vue/server-renderer": "3.4.27", - "@vue/shared": "3.4.27" - }, - "peerDependencies": { - "typescript": "*" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index c14e07c..0000000 --- a/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "scripts": { - "docs:dev": "vitepress dev", - "docs:build": "vitepress build", - "docs:preview": "vitepress preview" - }, - "devDependencies": { - "vitepress": "^1.2.3" - } -} diff --git a/types.md b/types.md deleted file mode 100644 index 3d726b1..0000000 --- a/types.md +++ /dev/null @@ -1,247 +0,0 @@ -# Types - -This section provides detailed descriptions and examples of the key types used in the SDK. - -Each type represents different aspects of characters, tokens, roll results, and macro attributes, facilitating comprehensive and flexible interactions within the VTT environment. - -## Character - -The `Character` type contains a game character, including its unique ID, name, attributes, and visual representation. It also supports optional fields for character biography and Game Master notes. - -```typescript -type Character = { - id: string; - name: string; - attributes: Record; - bio?: string; - gmNotes?: string; - token: Token; - avatar: string; -} -``` - -The `character` type contains the following properties: - -- `id`: A unique identifier for the character. -- `name`: The character's name. -- `attributes`: A record of various attributes such as strength, agility, etc. -- `bio`: An optional field for the character's biography. -- `gmNotes`: Optional notes intended for the Game Master. -- `token`: A `Token` object representing the character's token on the VTT. -- `avatar`: URL to the character's avatar image. - -## Token - -The `Token` type represents a character or object's visual token on the virtual tabletop. This type includes various properties related to the token's appearance, control, and interactions within the game environment. - -```typescript -type Token = { - id: string; - layer: string; - imgsrc: string; - name: string; - gmnotes: string - controlledby: string; - bar1_value: string; - bar1_max: string; - bar1_link: string; - bar2_value: string; - bar2_max: string; - bar2_link: string; - bar3_value: string; - bar3_max: string; - bar3_link: string; - represents: string; - aura1_radius: string; - aura1_color: string; - aura2_radius: string; - aura2_color: string; - tint_color: string; - statusmarkers: string; - light_radius: string; - light_dimradius: string; - light_angle: string; - light_losangle: string; - adv_fow_view_distance: string; - sides: string; - lastmove: string; - lightColor: string; - currentSide: number; - night_vision_distance: number; - bright_light_distance: number; - low_light_distance: number; - limit_field_of_vision_center: number; - limit_field_of_vision_total: number; - limit_field_of_night_vision_center: number; - limit_field_of_night_vision_total: number; - directional_bright_light_total: number; - directional_bright_light_center: number; - directional_low_light_total: number; - directional_low_light_center: number; - light_sensitivity_multiplier: number; - dim_light_opacity: number; - isdrawing: boolean; - flipv: boolean; - fliph: boolean; - aura1_square: boolean; - aura2_square: boolean; - showname: boolean; - showplayers_name: boolean; - showplayers_bar1: boolean; - showplayers_bar2: boolean; - showplayers_bar3: boolean; - showplayers_aura1: boolean; - showplayers_aura2: boolean; - playersedit_name: boolean; - playersedit_bar1: boolean; - playersedit_bar2: boolean; - playersedit_bar3: boolean; - playersedit_aura1: boolean; - playersedit_aura2: boolean; - light_otherplayers: boolean; - light_hassight: boolean; - has_bright_light_vision: boolean; - has_night_vision: boolean; - emits_bright_light: boolean; - emits_low_light: boolean; - has_limit_field_of_vision: boolean; - has_limit_field_of_night_vision: boolean; - has_directional_bright_light: boolean; - has_directional_low_light: boolean; - show_tooltip: boolean; - lockMovement: boolean; -} -``` - -The `token` type contains the following properties: - -- `id`: A unique identifier for the token. -- `layer`: Specifies the layer the token is on, such as "map" or "objects". -- `imgsrc`: URL to the token's image. -- `name`: Name of the token. -- `gmnotes`: Notes for the Game Master about the token. -- `controlledby`: ID of the player controlling the token. -- `bar1_value`: Current value of the first status bar. -- `bar1_max`: Maximum value of the first status bar. -- `bar1_link`: Link to the attribute the first bar represents. -- `bar2_value`: Current value of the second status bar. -- `bar2_max`: Maximum value of the second status bar. -- `bar2_link`: Link to the attribute the second bar represents. -- `bar3_value`: Current value of the third status bar. -- `bar3_max`: Maximum value of the third status bar. -- `bar3_link`: Link to the attribute the third bar represents. -- `represents`: The character ID this token represents. -- `aura1_radius`: Radius of the first aura. -- `aura1_color`: Color of the first aura. -- `aura2_radius`: Radius of the second aura. -- `aura2_color`: Color of the second aura. -- `tint_color`: Tint color applied to the token. -- `statusmarkers`: Status markers applied to the token. -- `light_radius`: Radius of the light the token emits. -- `light_dimradius`: Radius of the dim light the token emits. -- `light_angle`: Angle of the light emission. -- `light_losangle`: Line of sight angle. -- `adv_fow_view_distance`: Distance the token can see in advanced fog of war. -- `sides`: Number of sides for multi-sided tokens. -- `lastmove`: Coordinates of the last move. -- `lightColor`: Color of the light emitted by the token. -- `currentSide`: Current side displayed for multi-sided tokens. -- `night_vision_distance`: Distance for night vision. -- `bright_light_distance`: Distance for bright light vision. -- `low_light_distance`: Distance for low light vision. -- `limit_field_of_vision_center`: Center limit for the field of vision. -- `limit_field_of_vision_total`: Total limit for the field of vision. -- `limit_field_of_night_vision_center`: Center limit for night vision. -- `limit_field_of_night_vision_total`: Total limit for night vision. -- `directional_bright_light_total`: Total distance for directional bright light. -- `directional_bright_light_center`: Center distance for directional bright light. -- `directional_low_light_total`: Total distance for directional low light. -- `directional_low_light_center`: Center distance for directional low light. -- `light_sensitivity_multiplier`: Multiplier for light sensitivity. -- `dim_light_opacity`: Opacity of the dim light. -- `isdrawing`: Indicates if the token is a drawing. -- `flipv`: Indicates if the token is flipped vertically. -- `fliph`: Indicates if the token is flipped horizontally. -- `aura1_square`: Indicates if the first aura is square. -- `aura2_square`: Indicates if the second aura is square. -- `showname`: Show the token's name. -- `showplayers_name`: Show the name to players. -- `showplayers_bar1`: Show the first bar to players. -- `showplayers_bar2`: Show the second bar to players. -- `showplayers_bar3`: Show the third bar to players. -- `showplayers_aura1`: Show the first aura to players. -- `showplayers_aura2`: Show the second aura to players. -- `playersedit_name`: Allow players to edit the name. -- `playersedit_bar1`: Allow players to edit the first bar. -- `playersedit_bar2`: Allow players to edit the second bar. -- `playersedit_bar3`: Allow players to edit the third bar. -- `playersedit_aura1`: Allow players to edit the first aura. -- `playersedit_aura2`: Allow players to edit the second aura. -- `light_otherplayers`: Light is visible to other players. -- `light_hassight`: Token has sight. -- `has_bright_light_vision`: Token has bright light vision. -- `has_night_vision`: Token has night vision. -- `emits_bright_light`: Token emits bright light. -- `emits_low_light`: Token emits low light. -- `has_limit_field_of_vision`: Token has a limited field of vision. -- `has_limit_field_of_night_vision`: Token has a limited night vision. -- `has_directional_bright_light`: Token has directional bright light. -- `has_directional_low_light`: Token has directional low light. -- `show_tooltip`: Show tooltip for the token. -- `lockMovement`: Lock the token's movement. - -## RollResults - -The `RollResults` type details the outcomes of dice rolls, including the expression used, individual dice results, and the final computed result. This type is essential for handling and displaying roll results in the game. - -```typescript -type RollResults = { - [name: string]: { - expression: string; - rollName: string; - results: { - expression: string; - dice?: number[]; - result: number; - rolls?: { - sides: number; - dice: number; - results: number[]; - }[]; - }; - }; -} -``` - -The `RollResults` type contains the following properties: - -- `expression`: The dice roll formula. -- `rollName`: The name given to this roll. -- `results`: An object containing the roll results. - - `expression`: The formula used for the roll. - - `dice`: An optional array of the dice rolled. - - `result`: The final result of the roll. - - `rolls`: Optional detailed results of each dice rolled. - - `sides`: Number of sides on the dice. - - `dice`: Number of dice rolled. - - `results`: Results of the individual dice rolls. - -## convertLegacyMacroAttributesArgs - -The `convertLegacyMacroAttributesArgs` type defines the arguments required for converting legacy macro attributes. This type includes the attribute name, character ID, and the character object itself. - -```typescript -type convertLegacyMacroAttributesArgs = { - attribute: string; - characterId: string; - character: Character; -} -``` - -The `convertLegacyMacroAttributesArgs` type contains the following properties: - -- `attribute`: The name of the attribute to be converted. -- `characterId`: The unique identifier of the character. -- `character`: The `Character` object containing the character's data. - -These types control interaction with character data, tokens, roll results, and handling legacy macro attributes, making the SDK flexible for various use cases. \ No newline at end of file