From fcaa25e2f5faea48169ea652c06b80dffe3e1dbb Mon Sep 17 00:00:00 2001 From: smgr Date: Fri, 16 Jan 2026 03:14:07 -0800 Subject: [PATCH] add sequential bounding for chroma curves --- .gitignore | 1 + README.md | 4 +-- images/curves/cstar-curves-v151.png | Bin 0 -> 100988 bytes monobiome/constants.py | 18 ++++++++++ monobiome/plotting.py | 53 +++++++++++++++++++++------- pyproject.toml | 2 +- uv.lock | 2 +- 7 files changed, 64 insertions(+), 16 deletions(-) create mode 100644 images/curves/cstar-curves-v151.png diff --git a/.gitignore b/.gitignore index 71958ad..4e9d4dd 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ archive/ notebooks/color_spaces_manyview.ipynb notebooks/oklch_srgb_spherical.ipynb notebooks/v1.4.0/ +notebooks/v1.5.1/ diff --git a/README.md b/README.md index 7d35808..c179409 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ smoothly as a function of lightness within sRGB gamut bounds. | Chroma curves | Color trajectories | |-------------------------------------------------------|------------------------------------------| -| ![Chroma curves](images/curves/cstar-curves-v140.png) | ![Trajectories](images/trajectories.gif) | +| ![Chroma curves](images/curves/cstar-curves-v151.png) | ![Trajectories](images/trajectories.gif) | | Palette | |--------------------------------| @@ -144,7 +144,7 @@ the `monobiome` CLI: template. Running these commands in sequence from the repo root should work -out-of-the-box, after having installed the CLI tool. +out-of-the-box after having installed the CLI tool. ## Applications This repo provides palette-agnostic theme templates for `kitty`, diff --git a/images/curves/cstar-curves-v151.png b/images/curves/cstar-curves-v151.png new file mode 100644 index 0000000000000000000000000000000000000000..2d7f7f2101c18a3be8234814dc24e2af506bd04b GIT binary patch literal 100988 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�F8Wd`_E1 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

bJS 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

P)c{E5!CWaGk3qho0#5r-{)Z*T9*omQ_* zrP+A8)5$^%@L8AAw(pkh@+&H$OB0yazLSzBaXC`3n2oi7cfm$-Cq-OqK2H{Hx-AP| zo%Brcy!O@C-V9Fp`SQsmq;Yxu{e1~k7T~{}5BJkz%@vu0h~frh>iK_<>C@}a(|MwC z%r6ZauD@N2@g+TfH1$WURMa5Fa^=u{uw*3rM=3|a$QT8vOnZ;m0D>cM!lX#}^t>)b=SsEuL(nNp zBIV@dD9OkIc83#L47vgwJViucK@jBZ$)D=#*yt3}8-tV?BBgcS-BZW62e+75|BKK& zCA|Z2Re5qK!GD&w=B+!L2|2$z7vH`ZueTv;J;$kgsgp9WT4Ii6OXcsMZM{QM(hHZ_ zn)BR`1t;ehOfME`V5h3mm#}@HmH0}#uG5!-(oRz!qRub?$f8=FpBHu&J2h@p}* zec8v@e!aQ|!@gXi`0Z+jwIeEuA|l`9*J;q_pRqlU1u!QoZLtpxakC!U^g^mR8ewNE zJX<6$Fr-%AHZE_=7+AUJ&ZhLHak`hStO&^X4o5N}2bT7s2oocth#Ic2t&OBR0?{T- z`u3R&CAWI5Dd$h@?)=PlQfqt|rm6@H1pm$h6^ffWDCDG1&NTBN~<5&kgc_i|Xxis*y zL|e7v>ttNCy?Mk|n2WJoap_q))9lW5d0$)8cbo672EnI0;3MlYDZqDhI+IRmOQ=nm zt_CSf`X0nybze?2I3`(F<5g<9-!;ykmfm{)Pif!a_DbGxzda<(3d)9C8nEeO{!|oQ zi1)Ytr*+5|$$8iF&t4oA)-ddr)$!D?tw7PokJw?Q8?wgb&WY`eeI-lU6hM-wnl=mo zw}UE^ydrkfW0GLde3*3^FxwT@Rc*=A!43FI#Gh!87*5n6n1q{-rl`EVFW1{e`TN75@W1@{^o>ry>ieb%0Fw-z*S_mndfcZ==S|I#8WKtA z*Y%7rwRwL8yWS*+jrf@JF%NY;+IijZY(`j}uOBOFBW0gMq%1vhZDrnio|o?zTGqdUh*hcU&Nq+7-p@P&mhGA_6I9OcmNIAbcb41lE-y2d z2WaT3ux$`}wLo=7dlw`%2t}_h#TFKoFEyql5+MqqOJ#G&R=?+Lo~Nqs30Q5X3U#$U zEI*!SIXmUc^oNK*bR#C^wQXIaZ=EJjx8sYjdTGKEZ-io!BhN}D7&*fvp=pPCebm zV)FB&wLP+<4l<;3^Yd5RZe36!<4LJT>Aa{x0?6M*=lo0WTYvOA^0|f33)yA znUjOV!m>rfzNv0&md@oh)LxH2SWQ#-JlrS+mO8GtNf+Jx`&GJQx_^1`kWWQj7cU(% z#N3-F-5!Ki|D~zyRyU*}K-sp{j)D4csG)f5H1&G=YTinwqfb=NcN#}5w>H!Jd!)ss68k4h+{Uzl@MZh4o`vqcrh7|SWCzb z^f8&RBC9<2akIuwOI4#&M!(`lz{EswJM=@UFR#kH6>R#));ED%csVi-sLsrQcQ6+t z0%MrduzUNdT%mzV zw%{y*N?i&XOih&|s|~cG+=f`jzHsnXfVMW?^W4&Nosy?^T(I-6U;hBowe@OKEe{32 z%>kg3L*Y0qfFn$;To?FP1r7aqKf`ybIMI3YlCkaK4*;l~$n0KsE#~rh;mo31Dhbxl zHys=w-R-rQ#$cz!!qR+~6o9Wnmu{G(`iKPfVcHCQh{-(fH?)m5xLyIGMwwG;Y!A_aO>2q0-6K=Se zk#BVUbcK8|fyJc9=l${0?1G9c_updd6Pf0W`Dvc=1(#xs5;;-^4KYCiqR#$dwzh6K zpBs{#utUd*o7lw|iUxc`s78tV7h!mj0hhiPSh^aj;lzCQsX04hRFF|Ez5vjJG_`(UyngmO%yZgK4+nc)F_62xtuQ76ajDU$m0nzaBc^XI&ew{LR zrErubxYHUj<7!mjsQBo#^_a$`kQn9LpO4HR^T;yOGKRUfz51=cF9qle$2T@NTrcoW zHyUjmfDj3y$wKsyiMCI__@bu9AgZh3LSfJ3k;|{%o;28R4~&c$zr8%>ureCa45uO-~ zuH%||QFOyzH~rt*7T&OM;NVn^66fbhsr>5u)GtnbzXGF@}QOe0ep@cFGd`fMT|EGPQ%z__Ua$|QNMNB0-?jNiHp}h6Q>hZZZ?HDB^DgEO$)BD z^`NP(uiyCIc;M?!>TvOXcwoyhq(lkRBi;?2ym@2lwQz+^Z3%Tur3uk_zWWGnw%qiZ zw!9qO4SCZY!G3Df{^|4r7pOy3Y;bh6)8#4GF0&6Nu=4&7Np@|GG49fTKVnJENRl(dw7f`wEpHgS^JDoqv@IOft!QDv^u6> zx_I*V8p8#$F`&?&ejqB9ovbgzZdvUhULowm*Y*)Ts~W2)3#?zzP<|l#McgZeG~sju z)+i?a5&#SJq=*(qIZ20)dW@9YzW% zV~1isS2Ly`{G!NzNvgKBy&0huC>|ES7!{T+Y)H2v|8CHm+|#HLi#vTql8?|boYl8N z$~(YoD)ep0IGR`kNZ#x2@ax_sK^m5UTV?)we!`>GSXb*HOf$8fh}9Qvs{UM8OQ9*yrlwno)L6gX&aH`^1M3l|JR0+_WD1f9ciSZvr$QJ7f;jM4_Hf&la+Y(1?(h~Y zPa34rSKl`sm#t-v2cnTIVZDCG3xEF}*(tBdUaL=TsH4quuzHXDbVC%@?0FjI$qi_< z;w1VX9r-h9M->*XRdmyw&wi5?{Q4T+AhnMgjaKpE(iJLYu302}ii1=r_^+s83>%ee zV>WF#+2B-&q-WVd*GLypVqaN#%;olOq(3{i^-<8<5QVbhIx2=NWIta<3DC_X^1a>= zA*%b8C;E&pozv;+AR-EWySTbEel4@J678TM%bhga`HrD_`IkN7v%#zDC*aSr=POS> z??)T5!7Yon7Pyj0P{l((qxn>xd&Ia#a$30Zn(yWZS%Q@is8Cpj2!HS)BYp1psO#Jj zE{&45;z-u+d6n&Rc@k#e1O1jJDr_He8^ryd-#_nL8%%=4*x)AQ7Ehzrj7V{DMFsKh z%5bjqdqcCD>r5?%VGOEoBwI0747Tr_r8L+?svAX6V0&YLzMfBLd@UPr&eZV55OBXM z{wJcT!yW||&tO7r#h+)yy@r~r!(u-@K1-1N?>0?u;=5{`w$3GU^2MN3Pv`h2u6k0k zjt?PF!hDCCa!_OWnp;M*G!t&1?UKQ)9%YJn*n#osEr!Kmn^mg+&M(}$?-k;69o2H? z8oR|;;h`gFJz7s!!kt?8p}7uO0Jro0Z1(Wv`95u;D&=C!C*03xORkR>1YiBu90>a~ zUm`vX+`EUvcGtsd#TYIUVDsr*7)I|$hBMuCHjtSL^7+z05F?+ofv(20HeJMb*pAWR zM78#pxQz?b+NQt5fX~LR*~jdyzub^H)fyklzj?hUtxyi_K&u(S^U=DQTEizS z?CHwyx#XD8KYow}=m83))#>Y$@kH#zk%JHSF{yF+6^ySgOx<>PUO)(>;AoGYL{H!9 zNyhGx3=v$@Jv(_jMF-r`C!*Ahv_XyNdFY;Je`Xgpn7$`B{^CQ{48ny}Gw1dOw(y#L z?Z11m034a5MnrCZn+emxiom>(L}QRP1!yxyLdSF1+$g@H6^V%fiWo98R{%bj;e5r^_rgVhz3Co89k zKO(0KsJj*8>ID&SbI|0HYozhtqgT;U`>HdK;r=MP!gq-yo7RY+Y`xFTS@7sRyUfO*&!RNt zZoI%5diANKkAm+O;hyhOzw}$0Txi5z<8zQge4-889{NNurSAJ5cAclWrI!RI>xK8g~*HC^hcBl8;p=5mzI_Z=kX$dEfywv?34S`uEIS$+y5{8-_JX~ z-9ej&iq{$gARR;?8!_Fs%P^|j3;~m&isA^OS}d0l8J(qsM9Eb|uq;+yulEfuCQ^*r z?HblpbxAf*e}f!IH|3#mIbgqOi;$}efny<%%SpTo8fk&;%`cCb^Qi*fgch1|lC`o3 z9hYtgv!7uVdS*q%Gt0KrC4LEHDEQ5-pIulU{C7s7_M}rpW-hmpmLJ54a>pk!=e-y- zz{zgQPFb?Fyz#KsgY6tbFHsFy znQv!g5sx75sNQS7!ob+6Fj}^BvDK5Zun?@>gt9$bTVXZFe|?JRT#t3I(0UvS zUw;e?B}QEyJ*m6vq7@tAv6{Ma*8;U8m)A>L7a{(^@L!elxdy-0`+WvoPbcK2SVa** zDpyb_O$^++x5%@ujuo(E7??YiH?@=x$5FL@(Nf>$=bT9`$TrYuoCl zWJ^azYWwCwj19I;JZrPGfB>g|(3(^|VfUoDW&2|hd z(H8`v+^2qqdj8q_iCDK%!Bi8yY+VA?F-+z_)O58cWr3Y9wS}3 z0C7SHIf|W}?xO>uO_OuUX-~LbOoTQfh-GoeH zYoETo!tL>EDw`gFFntMbcK7PaZfKnGqFo<8iQ*eK8g3&cq3z#mpp$U2oJwjmvNaJ% zonzzkHSBVqE72SYyzZ~aog|kKL+zNIjcYzjmf2?zJ{i<>Ie8KGdetfJbn zF55iY$zcBe$>b5^kAQ&?ldjDvX&nh*^?kPoGpKhYXNzOjp>6ju{hF!eAP(jt8a7he zCm#Gt3I=&IGheT#$QVywq-Zijk>`S%kW-{B|0?!8JbP4bKG$2|;wTz9CXbr(xj)+Y zycy=ssyC8sK#bJF*QgoPhuLGt?47T%Udxl+fj(1-cKK0>qZ&c#Hp4W zgnghJLb}% zE%2xYO<^@QHYq6_&tKWJGL-YDS$vkNb8=`sSD)S7FP87^rb{H$BSuvewMT@7`(to3 zjM>SH41x5Xe+Zi%Gm%@u`VqHlQHzRnhcF>Om zb{&Kshtd^Lg)(-uijD@6E*9bdpiur$-SYiIiMSuhG|UAmG?-zkB?8B8HaI)6WS0*$ z?%LszDhqb4j-2Cde8pmOo;a;*9jz$5<8`Y+!jbYLzalZ*NF;+<0%{ z*#>E0P>#2&hti7i?dIZ)U;S!DcxT@@OOblte6wzA5#iT@6=~q z!Y5kuq;kw3?OV@xVJ5EngyjB^Ew|{+j#RAaR~1et(ZC5}_U@54U1u*6t3MevMTft$ zF`gX~J#gw(-Hs(oOc?oUv6@GDFXMsCc#JNb!V)$|1_8ya-7Fwh@ zsv(G)RK26}cg_8D^P8Igq`7`?>|=@6n@{7ZLu@Qv_rJ+|rfn5>hY={KkQE6LLFL>i z%ho$950{Uh!1Tt`dZ{)@-4h+C>Ar4+uT3+uqw|JifPF_1?r)x`Eus8 zp4ndC7vJ*Y`UketORXob?@L=+NePBB&2rZQ5a~LF`yHn{nt$1sK8C`(03rdgYxnfDHhILgG!~MomT%^6$&DBV<|3^kblsM2-_+Yrd^xw=~;{LnS?Q796jJi1pi0QR)zwA*P&v&sa z7ETJ2-A<1YT&npe&T+KY0ylypZ_F(@LMuL3m1iYQqy35i6}r_m zoQd`o8ahkT_$(ISVcvmpQ;V4;D)-%w3!j6zeKidd$$;Bo^HL2w^_mw`%Y1JFoVjB5 zw~l7owfusft2bJ+CqUjP>?*Up*-TiFkWx-jot(h!Qhm|yoU^~Hv8PPUsKgMd`NrYE z8TFYcv{-4hG_!yzgP*-@qgD3k5432(TfjWA@`1jGlPuT?&6y1u2 z0>|f(!iEeV8%Zl0iN$-kR@Or6NB}0NcSm+$LGzSV~05oi+_#70G;YlT(N_1w<$#dSd=ZZRAj zSIM&lHFte^@7%uc`VScz~e)LxID!$HJyzwZ4@!b2Ow zt5}|Hgz)`OxEa2D0ft&eF>Q}=hcy4Q7P{!6EuY9*twoG$S@Ak+y(N)Wsq@%xe`IZi zcWOU#)&+_Q7X2CFG`iy+XB;duN+0dYU|WbK1^OCLWjuv9T5Hu0T9(MnBe%TGKD#~5 zy|~1d7 zqY;kdpjBG3EimJr{&3>Rke9d2*G|Wjr6it?=Sn$>H>>ShoOa^GZlm29d1}RkdlQ^> zdjD;)fuKITDdUddd3o4)v2xn);?^!qH$zTWwwHHQVQx~}H?(>wa%b?(4e=0)tbude z=EufSQb2*#&@RpT+h1tra6$~rw8nVE4}=>STfafs2t*ers)-4HuU$pT1roh~x5I0bRf3X$3Kzx6V(_ZPeYGFo;5oJC)ESLV5LSH8Fv} z&-31ii(6l^`c-BbtKq=DM7u_yW5;w5jA$*fjG8bvp_k>kmk z`|Y3o6x^3kY95?UKpQyZlCQPfY<6-5q+t2)^q;$MN62AgYHo=)dcK8}UjYJZ+wRSSjRcq|<&zU$ z&-PtTDdtK|a{JAg*eY_8I}Jz>>Ap*Vhk#Lpn>-H#cp~h!N=A;$l}7n4sG^t#G5*0J zx>1A5nzksc6!Jw5-?az=SlkPKDCA5=@0^I3TYSx0g!v$a00ACK|E*08(o(=c^LCQ2 z_`jfkBvTmOUE^)M^mqYsSwRCJSfPF6d1bX297OO7Ccm;fnJHwoo!m+ptA6W`@M?Hq zfifmD*63U9j*#*6?U<}IU9uRe8acsQ+Z{glp?=n)IfuHNqm6P@TDL0yryrKH;AXo1 zj3AM?HCzX#30V1lZDv1yQ^>|FXTq!$=XM+7+3@Qrcs6NnF`{4BE8}dHSqY-nm z+j(l#gXwF1`~eNaLlvDr>>sKhIs3$G$ikaUaXKUtjp^qywYD3 zwS}gev(cl~=5h(DG+xZngWmvQr4W_hvNnYcuRTjVql~Re6{zg*hv2;~7HI-?N>!_0 zvJ)Gn6lEciB?^e2ZFm?c;@M0!B*t}Y^n^jM=NM^*!n^c@|qlGttk{->R;dRWB8 ztYBp`;UX_q)qUR?&S_WrM9rq5?(*#RHyaC z2HbxC6*_kIA!!gWrVgr2Y8yER7w6{G1l+ej1~d9<>e_70wZLcW-F0SLvEC_xO?*~; zqt)8AdUIK&9N<*i9A%M_c|ex1EViw1^|(}n6vNE@QKwtia(X%ci2E(IV+AlwUk;`Px;at=8q zt@ZUcMv9WlS-a#EX$nHf3kIV7(3r|LWt7R3Kiht#*U_Wv!_6@fCNSvu@u)k|QltYo zmc#F<-QWzLYFw+iI`U8LkFf3kQcfG<gXU2Xt?S=>0XkXe6yQ$#`L!DE4{s;!%I}+o z&}*qbDX~4!+IY*UM69qtC8Re3zCC`le{={eJ)g*wc6->g0*wRrpXt1+N!;(TRql(Y z*hjX##?+_w#}bWtQ3HVJV{+cwu`uah{`^7_7s6pSx<5|jTdV0fF8J!UTkZPGrF7Bn z^}A=?)f~(JA?d2)ntb0bh=fui4FV$F-6;r&lpqbGyGD0NHz?gmcXtj+>5kFe-6O{P zeBU4cvS**|-j(M%*SYWFlR?V%-{V+bv3}%_N*06t{j-Ju3Fo zARDkR?(NNOFb$1rYvZG`OYL3H*|K-6r88ToxdKb!seR#X3tm7c#gpLeC6f8Quh=<6 zp)~dGwZA5x#^T=2$CUPWQhcvJcggbNs%OXsl!=84ygS$n$YUhTZ0RP|(Omx-`CnLi z2c$ngh88GP_;Et=ZF(7SXQ%H)AJ3a{r6lh`u-HpZH4OE>)@J9?qJgLG`58WSrulre zd%0aP?EQ2rd`j$e<&q7_FHRvOPwQJ{5mHub*IU1iqzvbx4(pCL|ND&YPyy_ zMI+~b6{X%Ow%A6tLu7Pjz~AG`E8uQH*!w>2>F(yr_#cL&Vy2MsRo%0-`?fod=5=U@ z-i?4_Hvez{4A5){pg)J+o#7H4>r)*)Z4dK|_`pPpKN;w!@@2|yNrM3K{OPGwpEKvN zY(ey&)WbVjt?6g2(M7AJ0$@&Y&u_1s&LD}~%~$HiqVUfnI_(*^FW|Gzo;=1m1gw`a z=xCvaHk#Tm#y`$Di1+~2G2(jF>rBe??A4SPcog2s-zclOuu^cc`}X{z5y#aL8!5Efj#r}!^tG|0{($S^ zVj$Wb(wM7S6|0r>A$!#30XC|IhbOD8oR*<&E|2?1#^Xfh2)9t97)*D0L96W=>0Zs zr_C~dpY3w1M>;Lf5-uTOXl38onCiF5d^M2>2y^XC&BFqwH>TehqG$;{qba%v8btlJMdKcP9%=ip?LL3mx5c>o@Zo!{ zE`DolT5#3N*4h_5Qo`YSQ?Aq+Z(g%V=*F|Nn+6|B{n0>jVyC+eV%w~h>C>T0lujK% zeKqGuvBk_Ety2Rb z4lCQkJMT0&QTN@8l$QbhuC?;z@D6f+oe&MCrO7L46`KwdJKeVaHfSwQvWfc0Xis2f zk>YPr*k$-F zrWj|vF@;gyi8-nd(i2gKJqb98`SPF7GCm>UaCyzMW}Cg0MCxZb`5o0dDYrBiA8*vp z)D1r4SRvkA8R#0vd@Bw`FS<}Y^NSRZeDtq-?f#($S5=bUJbpL>th&w*@^-X@i>l8l zioi9j1JgaS=nRCUq&=I##`mTJf+J=FGbV0)r5>IS6Xksf-x8iCPVF%$d&@?x!goeW zC^*uow$QoBF!`;Ar1B>*!7RSx5=sBQa>@{MXyV4^WAe2+j4tJIYbf(Pm3YiRC&%>0#$OgK)%OJl5o;-pfC0cS=QW z<7b23v55vwCdz9K+uuSeE@T#$VN`r=FfsTfx-oC_h6Dzoi0~;hQ*&_Prk}5ej?q_K z!oP{%!JI{t7q`(=)Z83l(KQ~1SmE7$XOnPELTn|#-TsB_3`5)P$Pm;w*VI^5O7SvL zFuppF9%0s2Ka#`SW_YhmD`oEl?WYTwP(f z5A*x@MMkF9<;t;hsru){L^=WyMhv3Oscs)Znf zANt4gJPoF=xDUIS9`i>j>gaH%I_B)>XS){Ss?^E_+b?YowvY;Xa6Y~xAPJ4`b-CS0 zHbVRL@iz7M$6FeQn<4y8t2NOLC*=Dgh2ip>qaROl@UxzQ{i)I_P-K?erDVU% z+P?;~9(9!HwA1ga4Ire>!^x>ZG6wUQNaHU}RSWgrwof{rWyxEBOX$2iJjv}&W6j+> z<(=_ehEYzoem&i}?6K9pM%kKX`nDu=(Cl{^$wbL|>h@LJ@w*~dWO5#Ts@|6s9 zg!tO`cs`Ml+S;6tq!-s{RKkpa{X|^#@^KOb?rjOUg7RZt*RUZL;C1LUQeQVdJLL8h zDbd+JBp_#NuST*UZ> zD-L;ZDSp<2${ccWa%P-Cbb22e>M|=mg71GcI&P0B%~~nAH;oKnuOz?QoGq{r%_#^%!0EgJO5%icnXR?7b^+_8ae)tNm*zgPI@D!PVj2TJ30Jc5)-d zc?UuIXaj6juWQBwfCKX9i6p4;iGOBL&7P|q9nkkp&3yzues)6HXU(t8Adf(^hT^sI zIjY#RYuRmFMc+9I!Y}Sdh5#?Rh?+LPUO&g~d?zjgO@H;fjRvt>`Pa~E-u%All9 zdE1Ke;^C$I&k>o0mySeG@Rz_PN)aY;xGJsiiX9H|QM6eY_#@{S?impm3ZLxWUA^qP z$AC7+i%)?}%wA#5iNscG1v| zm5XNW_;gg;$LIp>lik>YsK&_dx4(ap`hS}*qvjp5_U`=f5fIuLXL zeLqgRv^SJ`3U;T6STJLS-rqc@VytPko94|CP=oal()=d90fRw=){s~p637DD*xDtn z(k~(9JyoMLu|UQBRJ2!@vV{RfKv6`Pq7socnvP3AVx=MKxGVqkgUF&>|4QUX|G0#t zWLx}nm%)Tqt?wLF_P>U+syuJKCMxASX60f~$6KdD43GS#dpGc!)SdLnCLbXU&M#I> z+~iSOzl{Lw6<3vk*e9t0L5g>zxF_F}xxk-Md^>_{Vl6QbL6DP|Oi|-UC*UFp1n0o# zBh@A=ThE5$nAp3#qKG!{Em}zeW;58h(3YDZzjDDB2NXU_@vL$NG5Re%L&GL$v!Uow zXXeQ{Pus9n!-aN?_e{ysZzCE}_y6o>)AtF<5trB@vH0J55U2i)EZeHfnl;8)7)W5t>$D@+~%2O+{asF-cqo>FVx77 z`j`-t>F1K!HZ_~e$e)g*3nU5u(0J4sae0(UI47MIA>0$lJKJA1}P&izY12)3uj z#O`&uE~72e;(Ngu;&u|-T6cO=SuRk=)S~{d$YmRxfUbUWZrm>)skhG#47)uJcO=mA# zRxEcWE)-5heF420_z{!qQ@ULpNH`N*XU>pGg(~Z$W{URKXlXL<9wv6r61~(UQG7pU zo+0A2TIv17*JHWRK1LO7yI17}%Qq7$zZ+@xQ7QQ_yc_ekZ)al;lc6Am!|{FHKp$J; z#79G3zK=fI>cHxGC)_ud(;4AYPY=;_73LCO1xmG$&+xuc?pia<``lq@jxW12v>PAWTH(AOC zM(j{{Ha=OMBPX#ur-`&Ry(dlQkE~e3Wlmw#Lk0a=d zv_Qq3BhTcYsnBb%CN?-Wbl8iC#4+Afj;;I~w5{e>dNOOCt@F-6EEfgA zrb5t*U2KNLuvs04sk_n~Yg)*x6~tQ{QJ?ovJYA29U8FnaDZgBu>1v+Y5ylX9eWj=`MwAY(Xf}D9O{)iOj(>a_ext{}H=eN(7=Roe zA+KvqLWI{l<_G^faQC-Jax}FuOcaCyO)MDxm2~388^`fuT{8A)Ie1w0zWxm%t6n(U zgtIsmyAKJx$&0L0bQOE{w2y1ASZ&uhH}9BF{h(FxtR@gvE4va(eg)ddp>($T9*ir4 z%|GJ-yPtF$u^CdAhYD^b+yiq5&zQrWml(1}CWsJjx`>mjx`Ng>gVxX&PXygIpY#p% zonNPuJ#FUG-NC(k;C4R#&B!HPZQ;DAD9<4c_*{+i5P}r*G$nO2Iifq7w(h+yj(Vr>~(QT4duM^l2b}RN#UklS- z=B`V{ix!z@(?ReVRsLu#)TSI-6Q8v7Q*!_}?^wpMO$xGMW!Qv$ApF0H5Bbd=%;GgkJZF!Vc{JRX|JeJb>Tn5D$OV zJAS{ox5hbU%PewZH+4EbPpM%X%%C1+YJE8wdlBvsNv*R)_CW8r_qUWd~GG?;p4tfUiX9t0r1b2#cO zHPB|Y|02UM#1yw{&XHQ7UF8Yds8}yD)Nsad0o>+d$avd z8|C|#c3&mf8$GPrjCC60I_UmXemDpLo!$3z85Qu8tq>(ZUtAyO%6JQzRdykR#+c1hwb`vCa`iU`v#6}zs7d{$Yh8(#ljd- zrk%p_5!RL(K1Sw6a`zsWE}! zW!+ef5Bv~5DM`1OSRi{ezBnr9;Po#-bz|eVw{{*+lSKD%z`BiAz`etX%`2{aQO$^$ zh+NPp?T34xDoIemxR~L>^+jv~u{c9tuBCCRXdz_!A;i{eqW0*|K&|(>$~lcyV?|Gk z+#VSdKHiYd&zfiHE9uH7>=hY{FRxGf6-}P2AOessGb-@yF^1)25M#lrqRXS9A!Rv; zE7Zk$50`MyU7NU6HTPkL53(L&5nelucY)=@k&X(DI9Jct2b6>l&pvW;*w=XV?ZZZ=Xy{vG5DqpJHSIv59Y8K9-kI-zES zF1C*>NOWUGGhT`0tH)sJS^{pasOnBnLavLMUDp9}SQxB^LV20-jvOL8|aTF8=@Nn?rulm6&4Oa(Qm9qH$X&*J$#%%w2_x*<{@#8 z!Ztv(;Y}#qIN2FY!n`79{Mq3tkiyGD>U0XJ+n0UCsxZGVV#VH|!|h#Mv+A;4CAPoR zNdDK&Oe(%}G)vUjY`6R+@!CJuwU@QaZ*P3U=?mDEVgYIWowMKh*kjZ&Pn3M@#C(z% zJpZho_=A|6dB|Os=o7FuK3$ABTIL(YkjOQ(u|XL{Hk*m`=w?`xa&j2gX%>v0Txc8m zH;z#b?P6-m1?ltWK0rx>4rS$MVc$#nsFA<`v83zr^>_y+3FjJ13Vce(~rC)$@Cr?)14%5st>)JK+*HsLMGW2}x$t4njtH*vt;# znUa-~4yij`@+jBj#jFz;gGqhM)4aGVUiyOsyTtb`Hh(7(Mi^d}&W31t`QB3q_)q2M zpEMcv@!{;a%e=wyymJ(oe7e;+!O}UTpQktZ#;r(F5>a{UkXNL-E9gG!&F;+%ZVeF6 ziupblCf*+_!4VOe7wZrF?;0(E(T&$J?j0e0LUuTpw3zBg(;7{SnOed%@T#T8>DgWn zwzavKDngsvyq(}ISk~Qw=$Cs?d1w)8-md&^U@T){>u8(ZO0#0TRY8k4JW4WCUtBxH zyW^M2nTYqJ+w=92t02a)yoGzQWTr|)gsGT`e717FT>Jx1_d7q$&ud__YVRW@S43YG zwKaymYF-w15vN15zj?WzG$F2tWg4S^!@V_h(Av-&}1ZJ%`v6rW-&iN|6jAwNUu#HfP<3mzDyQo4- zSBgX?jmEZJKwD*|Oaq&Og5v4v$zraY7zby}$*^-DDCRTMxG8CA2i*b+IsBeI+bP(m zZ?78lH5+U)L8)zRr05!>y**SnC5gaG&wMr0!F)C~Om`QzM$>6pc#OaJW^L`XJF=4W zxxb`{(HU zgkaMjN$h^h8KG|tjJGyZs+|Rbt@sR}yA_H^3w%x;W3lo5HAeUAs>szqPfjeG2!2;ZtuXyB0Y)|>lB4nm#%Z<_Ej8b=U0H3} zgvkEqJS?m?;yEjH=^$Qw`P{W+N$|2jgf`xh>x(GOBH^`MuEi zJX~YVpRIPJ3%VS#J8pj!g>B;|vFP-hXZ!T)`#nqfze0XrS*F{Hm?0u^3$l3g)GlRQTbW3rj!&5 z-b($E_7>w0bM3394bXp?Z66iV@A5S-YD>r=?G3& zCxdF$n&e1^VqKrEENwh!H(22i6Auup31rMnAjt{o7>4oqge$Za^VjXaHRe8y0Gvl z>fVePcn$o!?Hc}jg6?0kJ(`WaQbsvR&Hlp!!|8zCf6wpgsUUtnnRqFl_j@-lDUmTp z8ZFJ(2?_vW>xN6VAL?C1WVGQ{e*v?OAb%5*axUez#dr zkg&N~AXd}6T+amAj>8Y+APKCE%Em{Mjs0*_ zIzX#rtIHqh`e2$aM}FRgQMI@$OT;T1pP!%T z{W?+zCaH89;3JFYS66aq28h68KP!&_A%Wy^v6tnXwS@)EHgR@l=8=uGz34up9OJEi z*R473=&HSO2pFL(A=fEA%N3Eii!NKk@V?onX#5N%YfJiC(FK8& z3}4}{@MHo0On}kqV^#7{kv`$n`!iHg;0E&S1>|>8jnlzFs~^80-*Ng!wG|9@XT~My zcr3?EXh$>UQ$)ZwLb zLK$!qjKc-yoN2R8T1~Eqd|+LL4~}tFG~y+0qWOkfW7|V&U0Pf~B{($A9UbKl2DDIF zxf7d}`2%5`$(X73Twk1^!{2TvEVy@Kig=RjSCCec+|ybxaXB=o?8on)6mvVmRPcKN z88{@M-U-1VJ|5yS`PX%^HITWA`{Bd!^~3u5deAr^!!Saq@BP=hs-yp4y69l3iA}9k z)o?sZga`vAATW?DiIFH;8qj4rUX-=k{`VV$T$rCH_HIOhLM$uruAI$owg8>xTXN@_ z4_DEc@oa5_tEtE3j?v)r*+sB~_j8gZ>jZX|T`=$yIa?EKOSoq6z7p&1pt z>E)yNlM1SW3`3v!jn#zL%%4z_Je7zX5$!r(m~g0|!nDO)4K_=g=;EcnHDBeVr8uGQ zYTfh!kzBi4hQsr~FCm#q)h050+@ASi4NkiYm0TmE&De;(&R7*>boNq7orpap*l{uR z!@wdBdWwiOo_bkd&Z-%b!Vi;?l;Fx08Rhzg=j38E${>Wi$>{on)%D$m7n&r)zig}t zXc}%33beTjeD<-?VuMT{8Kd60k;QY;=u!|DZYBMtt*eQhbo!n7$Mt0K%?qg7;PYF2 z#xG+T0?-yGx}6{PjEP)87_Ui3#6m}>l1mzJ%Gi%T-#cB2+FzQlWHvutz9#2A?!0@3 zA5mN%8B&ycd3n{C+U3auf=Wtfd_I=uV$MmW`pUE&_R4jjZ_} zA~6p7`eFKqk_kP1D9~Qi}>3O_v zcCSo3i$*LU@05J_v-mLX`yba<^AML+ASz=HtO_=ujmdI%8Cej6{LdJEFuW$B6F1LHc z1L8%r^*Ha}cl#rSwOdCrq`L9C9)l`43O6lUUUAm^GCV@#S z_1ylE+j!;Cb#qJUhhLD@xGz;EO7)L^?0mxxHkH}AA&*GQCkM<>1YUYM+9X?@m+y$> zDiH;Bbkoh+0<8K`Vp(&Ao5P7J?K*HOvkKTj4w7bMpTwU33O%Tz9E3o+hU4DqG0~x> z(a5rvafop1ZO@JgA^Fm>TLDyYt(DW))1@Ck9T}5kOGWfQ8vuw(Pav5Q|BBPwVlN1R zK%Ai(x~UIb;KvWas`oz)AwbEAnA7Bs zVNZz3P(t``Dw$Uo42?sHOasNrdH45Qv061o$W+o%U%%Gid z3Wbcsf#W`I`hiXKAtOfwC7$=ALg`|3ScK8jW`VqJYgEdD5KP^9<<$Dtw}0(3!vX5Zg0;H?zkaH z=L0J)w7bBcJlbyD0ii#v;UtzkzZdxR$x^azi(`%N^Fz>w8k9i)o>1&M`wa=;5AE&S zT;NzS$OLEX1iGdQQzyzk047DTS+Th^TxDqM1VFRqZC1%p)cq!RVs(w zTN3IF9?V~7qpz6Z7dq|aM$xB##oVTI`$JQFaF4=v3=@9AYvjFwM953wtMH`GH&R$Kz={ z1PUQP5YlO-tYW}Du&TfJAGGX1uaBNZ*q3k?;hz+ zPCE?epGS5?#L~d2+1RY{Ces);RD1b%Vg#t)5<(J+@Ay{o6nz>)-GKSHcJluh8y+o+g;0oK9aEbvfghE zoz>X&jo_hv24;5G*7MOf!}HV$D=XIefA)2l*BZ&=2NS%J6zK~zMZqM-D9)154{lIC z+qHPtju2tzTmR=5A@My#5bW+cybY=GajR^uh=+L6i(W6Q1ijsj;(?+fGzVk{Ff-ca3|wqhHyq6n80I0m;EQp0EZNu~8MnjPJI2a1i*{;`m@XUHnF184}BqZ{#O z34}M>L+QzxsMtVXD}3-0eZ)tvllz{KZ2@v3Vt&DGH3!^*HmmRZ9H>;vM?>518&W5k z-XBFVE7s@#-CdLa>AIeTtWR&rX8)?;B`8L|DXg9nO*XYh-E(0 zst2$&+7wIXCSv5NFV`8N`1l;op* zOfNkIPAiqirE(}XA)2r9j0fM51;vE(kBT>QAZ%soTYO`9dbP=poDX*%NM6AODSjl+ zgxVB>fGQfXyz)pMRQ(Z(FlSUVk#A=W@ZxL-l1i`)?v9@$t$1|!UssQ&&nT)Pcx`5H zaX;kK@>N3pkVr95LcB%N(xQ(FtaK3uV##x@uNE`JoEUSMMVlC2=PL|6xd^$lXsoI> zp#xg@LKZV6Z#ZgVwyS}*xt~RMB%fyZ{gN6Zd~57TQ`pbf z%y%~QNx(6`c(f<Ed22;Is`?ugLPMvi;?=+8aHfOCcUi5v3qxU6xjI zM3W%7!mKeGQIzopn1Bmopy0y)1HiT{BvNshM0e?P zK`Z=c$Q}}#N|%=$GVcr944dl;yKJ0#Nbn>7ZuNadeGrb@d94H$lZiR^oy^sY8|mI1 zOO7S;drmxNKF);=TdZ}%_gDYO6GLzI)Thk9CU16P!_UC0tQwf8_R6d5j zBe^?xYr1*^2@Vd49bpEn=#9bHVgVlGgL=fkYk+n0IWjGg-`k){GBY+?jEZ)AtK*y6 zkJ(*Ny6=O3mZYb{jr5bJio*2!>D+z6XQ8_Sg&y@1ZJoBqiI;s**H@@9LgQHLXIqjl zNuw4pQx{#8iPORO7j`QXCAes<7}Q{XU_Lfhv{JV1_L+m^2gN^h;4~b^^hMEX_)dl@ zTVCh3X%4<84pnlN=H`}&%ChM1?I5u0r*E$ld8COM#|4H^84-Z2rd5mM|6CwdObm)} z+XV8mSep|4$&)J2tjEI#{M_O3FUl=eKA{M=dEd_JEXIQHP#xC%+WhTC7jXy)2`S#K z4q5=Sxv|4+zTYf+)(qshUE#(u2UFz)=1Kx6LCENY=1<4?uT2M&N_i1kQS}QYU&fA? zpCduA6$q5GaQt7pY#jsKY{;o73-VqbQdLxIH9U78;H9VoZ1!razXZTpbbj@Z-}#?p zig?9Axdv)%mqPAM>lI%uI3I8U^(9@YuQn=S@{DZ^E)Wo%Ul)vz_eFZWPr|oo^>6#cAp>P^z!Q2@awxrJWL=l{90-{89Hr> z`pC^471EIYSHx+@7(%Xi5htaxdpKU1f9#MfRO>!R%*U-_q34bF4l=(Oa&b7wCK=KL9gFK-gZ$_6O#Uoy z0rC&M`pxzsEp>F&9#>7SMfEg0M@LHWW}y4yE0pF!qv%Qi7%m#OaPFHI zsK2L9v1Hi@YHoE}p-SsQ13O2hl;ddL2;q{YNnhVswAX%n_sDJ{@b|~%_+(xJi!M=m zU);NL4^J^6jJFFwJl z9q#FR3$I1gUqgiu0MFp~pm2hRJO**`c76{Hl~nUG4}h%A!qiU`D>x3OzghvM4ScZy(~c4|Kvh?z-`5C7CC#s zQ)NCpwBBfYU%MGNkASM*^6zKWqSO8ah2jwprfw81qxU^S$3xWL6_6v^Tgu)@35GtH z+#@^VW5=iYD9i8K9|U^vPIs>nmN}6PCeD~KfACJ3OiqAIONjnC2JFQExxsd;U-Q%k zp_No`RJ)ZMYWmt(MsfS`j2FqEFCs*GcjU9pLM>w-;&FpDU-7kUhu14jdiDH|I-NRk zxd^<1f@xL-V%swpxL7VXI=qJK_c$es2K9GMWX`tA$vS)=oU(SARD)!lG~#HyhFmY! zOzWU2P2QrC{g^bL7~{NR(XX!0O`f_qykW98co0`FY>J$t{hDK;2fnn^dvCa?=rwpY zK%J*_Yt!)soJTre#p$;?@7-obsh-|{9 z_QDxqO^{83X#+*stumRkw);FLA1Vi5-wX;kJWyvo zxS5^l`_U3Ge&sP>?kHWER>OUIi`E%dX{vc3{Vqu*fn zISqB&3$w*1J{TPc9XrBC#+$KpGpAZIM;jZm6^ktY9fYXp9assN!d{JTABLwZxf=D1 z(qel0UQGN_CJSc+xs3U47^1wXv`OYilqu1e?`Kh4P{$>%g?NYeK@%(Bx(d6sj zkm_MV*2!vZ1x4~lK1wpQp8$fHEfPF_nE%B7b0LK&dZFzBeuug)*69Y>|hPT;&;62KkKRVz{0{IDFM4wJAiso!{L@cxTOIW!?;)h9%0~1 zsNEYSW-4DTe}7FqY^T0pgiUTFhMr&ysT83AO66wRZ)|fU{O$D#z31hl;n$) zlyZ|9ZW{uD!TC9y0m~pSH`k--X%7qW*cw__Z8|-Lhg=O@WuTB})zIuoL-aKxe1RElFJ4qQZ7)p9RXR6v6$=tj}i1{G&?QxY%!27s*I(0pS zhm^f}K-}AhJcAM#P?u6PP53ULNl;N`>cunZsQ0^`NhETft-9?BFfs=04DYdn$Eb~r zb2Id|jJTCg>O8rvSA(4okSO>?fv?L(pfLS4n-_aN0Q=7xG_?W|o@8&=+Uztc68Fb~ zLjG-TgXTw3@~{|(z7?C#eqHZ*et*>~q1#_IeT_iob^XU8{5{q@V}ZqLGfOBoG`r^s zN~m@))gc-25E&g^;CZr}A>c$FHP0Mb%JFm%{lpl*G zJ}0l0D(wB?StA4g8yiNJMG95wX>rI)e-D3^2$1HCqm8HSU!RdPcsmJ zyn;nSa@O%9rf-^H^Wb8gr$?hwf3K{nsM_MWpBmHh!vB~Iv(&e{xH40ga6Q{b$ibmT zK7&0BxU?dv`upRIVI3RCWC3MnASk^pr`wdfmIid9>{W$DS*7pUC{G0 z^+S#wQ6gUsiqgdLR&u%_je2^w35rEvPuv|M)n&TT}<&CM&GZO4L~KCf8%oX$IPd2CaE zBXG!A>C}+7VYWrVGK1ZT8MWPk`3kzMXv`aJk^aIUfO^q2L?g%F><0m9g_>aTpkZ}>>(EyCJ`|F){e1BzUgkF) zxDxdi$YmBQm2^xR;A*D3+gqcfLVRot0{|Wj^tv^k?KZ_a5@FJK4652w8W>%9_TNId z_ZYr&22ZC<{L;B2HAOxyKM<=%%X*X;MDSZ_2Y3F4QT-*(( z2VTB}*@&cw>%=O?H%8e%eY|cLe6obVdJh=n$M*lVk-jIiuh*dB!L^7av!X94DA9+a z)f5GIwnEot@Z3b#ozqi08{M{Fn|-UTXU`lQ9L`pYX=n3x)E5X)_t~RaqvMf5h9N}j z8qE}TZv-ydXvGht;d1hA*hI3!F(N7%F-*+DQHXgc9DcA@2%&-KtBmKgKcsyX{(2*m zFU)QDy%a3{<2YU>%?>zPrFg4HPJV4U8xVtexREw;U;yAMi??K4=22U{;gI-~vM=GB zfT&d{-x@Q#%i+HcisvEpI#JD^wLziNs!z>!S6i(z82%f2?%KI%e9gJmC=<>` zVCk(S(VckF|D8c>shaV|F_gaG{PNQ1p*vVH8Rz;y;OCm30){(lZ!@!${)`&g1e zYIdBY+G9zv%`twkcTw$%{>LIrxzR0n87oIC`r-K5)=gr~O{MHo>x7M1%*!ewV604o zb-Khu1isucT)ABM5%eHVJE|v9!g(fEo!QoSx*)v=2Q@qII7(-bnGnK@cG z!TmLv6)Cd~3((!RD!dm62B3Zt=arxO;;f$lwRHMvZcGYmj2u?h`xLt^;$(t68j^H5 z?{yL~+um6-7te*5uhgH9alc>W#V$N8fjZr_|G9*DeN)UsYZGroHQT|cWor=9i;NQzD2&m zZwCtj^KoS^b1vsajEqw))ref!6-S}D+Yla8nvD=D_NnR6HqKMaokplUlH1Pk3+;)} z_0EdhaM9reDv%|s2q>`qBqT-bl{wy++V#G-b=qnTC3bV-CRaz}YR);5wjtUwH=YK_ zz|UV@1I*X=e?u7V6s2-=-@7rlwzghgRi!h;1>mXcE2T=!lOu_9Eg&mJ?kW`8ov@vH zomGjQ{ z)o-pg18{+n?ZF6%#M9l}A zvJWZzPkB?gw(N#3;n`1say@2WY31H|g1vk=Jnhu0th94J;SJMnNH4Hx)CJJ# z=3xu=&C~eIh3eilE|hY2&5C7vu1(wU-X61$GbE9A_R-nV9r)2YiwR_WFO0xW2?M~4 zO<;wIn!|;xHCD@|s7QD!Ub-HWD>UWOZ$*yL6B8NYr6(F)rXN?^d}o`SEvAMjfBJ|h zu_oE*#^-*he!M#c0JX)}`ki=dE^*UMwVg@vH%l*F<6`UnCjdO!>5ANedbir61#i)YZf2snE2?$*w}$?O~4+my9aecw9AL51DwOS`hn@WR!SiDfus0G5(GX;nUg@%s6@LA1m_WAtbl7E{ zKESB`{8QRjQ;BKrTq+k`B%7*b8=G$cHyQ8dcs2P&F|&q=Nj;Z-3qqbbLKZ#;e)`=% zD#-sjCokmA&j3N_>Ih78*KZ4aw<(i5 z-R`5|iA@gcYI;P(dhtmy%hYy!+IDz+i_BXV-5vav%lgUra(67zx!b5_S&P$vq7NlsRwgnDRIF9UQCS&7 zdIfydu$garFC=_b6g4{P>&D@mjgh3jyE^XL(>ay|UC5-Yy($ypYKg0mJ6V{NaAhNOHEvA-iTUOxGJ z8u8@s2tPV(2{-i!*%2xLixD!{IX z<*uPQ$?SSlH?TTJcG>$8S1ysV!2Pjb6gCx)0{VkYfZ0q7dGo*5<+fX<4_@aIX`wC_ z|J}}O)A6v_pxu4OZRFiaVm0OjcZAdS=;s$Gu2gQ?78djgab>!fIaVa=gcYWL3U8;9 zRp#&iPHr&KSirN?u;aIwO(-T~cG<@5Pw%mw;Y9lLjZdT|kz};YEqcJ}7n9JBKQS*- z-$YZLDku{$Y9}AZ6y;4Gc$6Oj_~h#MT-k36 z%zk)L2*duZ-mw^@0=`+RS-#~vM_Vw6QcG)hk~ZJgUViTZiIh+N)T!lpkK?J<4*SRA zvER{b)Fq-A=?eGS(oy>Q-qNe`2lA9q-@~TdTXPEBI8C!l6q{r7A1#J1+WOPw3BY+M#qh19X73*9n z%I_;132?3RDbc-_T_nrL? z0b_H>yN$0?&mHDRZOlCOP#cxK`@&1DY#j{y#+Pc3bx+Sjjz?$2Os2k5Wy*|`dF#mk zHJa1wQY(&=RNYS6?tnUn*Ql~&!g=t(8GURqv%`TwN3?_|z5mszKckQT?ncu2{9TNr zo{g1-rtg19OcgWBMaq#Nqu5Kgdn8cZFd*`9dpoc*dPd&1sgOENhuCZ(2ck4K4!VWsf6Ow_+>TERiy2y7VmE2kA3Re^ z*I)5m?1WkL0onyE(=~f#)ME{;fKD$Ic%q zJnIpAIaz5F&dWhGzU7G?Bj7}My2nHM!fj-!v(a6pikE;%tNa<0ddB^kY3jhn;|;F< z>KAN!dbl#R#mO+aj%UtkwRkvL^>vGlis~b>0AGpyG`&B6_Ozg&WQ<@ET@u_ge2IjZ zBaGz_VF_<*&7AGu3|BJWoZ-A5>>ji+;eR~i zGLbJ%+rq?G!RmP-8**v)@TY10h*M`ord{;aefm}Yr6`2a(x)AF|6Zz;t&!3qrHjLv zif68{cGuGgU`M0`dMWlA?uML4jEIz|s$|7(H&IGav)W-XkV#15DDnD=uXAEYX>qxG z!f~l3@PSd&I9&72ecfq3-rSC{J~Tsq@=Pt|p#)bRmDKnm7hMA1J{bey;3Bx+%HxT- zL;h2hLNkgnyG6+(&-ZocS81BZM;H56U&{*Cr90@PQoHyJPaNmW_$L!Wy*Bc-*La<2 z+N7^n>_5FKmyCTlQNWd??8r~&*cnRnkoo&FF01h#wP%se9ZJvR?1Pe+qx;imYIf|v z?c(%^t6h&&I_y_!ZmYSuyFCav`CK1;r*ON%M z0*oe64DqA0urS$7WQ)cdr>Ao@ktZkI^_Te(DOW3Hqi2_)SPl<_^1JfV?*c*UiF~pw zMYKAY!=jsT0*R384&Vd>`^(cmK8?r0wbB$SV2C`1yZ=$#zUB1|0 ze8+8bmL~Gvg!$p>aQ!n6-ecS9i@EV&BKs4w$3*3pP2Uy|3QqD+ci-A4*SefoUJXoqt6aN!uE{F+#kq z)sqm-BcT*d?X_2P2sG$Jc2{P3V-LJ*$4i0B`(4`aWATjtDm8MEY(w`0y++-~^2;+k z<8tmnl=}=}NuN;AWviW8YW76@kJxNq3Sn)|=tn;rW?aduLHF?wS{X1a`-(Y>2$n06 z`5PxE2IQ;<2722n_qUbUxHRlpC+3mZbU;0bZ?WPMZ+?4Q8ZHp~`hzRJdoXXxH_2(U zT0TX#<8woUP{Y>6hs`l!c~#8@$6(%}`o-BR6sH}e=OU@96Hy1GgF<6hj$5PBfoNs7 z?p7_y9*;$rJ>qh}Pn4FfuHG1#YUr;vSHI#r*Vda$_*M{?vAdM1&Fs`cocRdj=*l7N z4+`4uO0vl8)9*4#oS02+N8fFNnYN5%pmF}!D2tEk`PNs1HYicG5e#kgrEe&==M&*0 zc(R7CqDC5U!~MlN^ed;ti{oE zI_QdIVj=$NmdfufM050))BOxQJiOq>S#C~kZ7;QoHSs3VAJ#HP12G6cnet{O{?i7R zFpG{9&3>WiJ>7%m5#mo7RZmKacAo}#zzj4IgPN1x(z=7=lAz$U#g!)}bXPl68jtkw znW&^P>qpE+NJ*v>QIor;GD$Z7c^9m0AslB~`qWrm2Z<{y8<3V0t&|?NYc|dx*nC zNRr8LKF^4irc;)kgTqoT>E+sBb!yYZF|@L=uZ;(n&0L!_Y;#NCLgkT^;chhg_ysAX$gsv zYE0se5`)f;^&PITXEK(V9+$NaY+LbM^UIiRNTtF{GBK=f$XCb253Q9=RA}nZ4vZT6 z{g6zKyL{_4FWw=xWqV}nTuFTQQf9(*D3!XA>l@jFcs?<#R_u$CfRpH9FmKD}NWJyamNbc#N+lJARNM&h{A!{hq&)|Z zN?u5~w{uA85AB^sTz~&IRVGeL6&nBZr{FG8nSH4*(hh)#6U#QGOtF!V{(gN`Qg=D? zHM{FF^D}yIes{g}o~D)F|SO#1QGH1Lfm&*DYM=@8ZhHn9seOz zP4z=8-yOwVMvuz#i2*%XOBh1wgH((&Vt`yU$TL;9x{WOiL&{o9f|8J=w6o|out zUMUt%Mzjwu&+JpzsUx@Y5$$7Z!#=U{8I)1Uz4vPsOPS+6r`Hc~e7r(Pliwr|eiL+g zBFG{3_50soZ>wUxrqDEO413;sh)lg{Qu3g5Lb6`VU-yv5gu9!Nvn0L_J`jVLErewt zgA%Ra4J}cDVRviH)#b_j!ikizI4wTIH<;=asq&ccta@>wHg$puGGj|Rt$BvEyQ1Wo z3l9)340X+&&2ImQ7K3j0IM1IUPL@FV#=@^pEHTg7aNYO_E7;q~tPhG2!AHH&nwEs` z__drKis3?hHlFD~PV7_}P{E~^lR<~(!@Q*f`4VCugGlG>9|6Z6xH_GT+1I!GBI}9n z^?fphysocST)f>0u9v_i9dCE6JLLAUch7BI+}Tl_jlV759@Qc^HL~q-zB;+{42zg& z-u@1U{zr_U^_l4EB(Fr~={h$r$eOCv%-bUA6O3cS67np6#<_W1s${G#fyxZD(tt1 z{5G68Jt;Mhb2fPK#H7C)hT}UTuPn{#xMGw1>F1bf1=S~`Mg!KqGDV3q`_1y$cmxw-8r!*4lDPtVbB}d8B2J%&1R(a}>tCDWIkO;YQF8;~*qYDeU9%ws zx+)fytJU`;UJ^43wv!QDvm$olbgqqI(7d;6+n4rzvPgZ3zCWj+7$y`Y+3`_A?uf7K^ z*=XU1w-u|^xJFHF0qiPRR@B-)0q&y*kbB9~?++Kd zZ3T`VPcfqg(%y9bejA>xksgO==_7y1dQppV`|c_B<)31{0GTR>&LQ#Vk~fXIqeo3J zQ%7<+h|bsf*W}@z^#*sBx#ObiHv4<_jXW8Fh z>Mo#7KU3@?Uqv+;&%vCzzQ`4Ui4ncI{#Uh!()Tiv^BR(b_A`6*cS3}4Z>Xf-H?Kbr zVXxX}*^Xa3LZ*N3JyK$9e7G5VQD;ugQ)0Z*pMIC!TrIFC$72@f=Z(<_xXAf^`Brt& zb-{JkUY{}U&pTjJuo?ERoTT)Xm%UNrEt@xSKW5Aq>NXRTo(GAZSp1gU#AEhYCf3u_ z+w2%GH*Neq=d*dET*z@J*{F=E(qjXkaJQ{Z*j+7qr`#&pWLMAeT}-#pN37Mhh}#QD z=MB&8HI2t7{oGYE6Pui29$vDBaqHA`|9E!sAlHmcS-)en;C5G7!1ui(gzz0Tirjmr%XojZUf5<*;xW@cw3=PqvZU&UIJRiTE8J&M?F25J91xHS-Fis z8j&DKpSoo%xoXge8cNgHRlLHRUza{xwVsdoRQZsEU`N@QQwi|%V|~$cdZb{&LBqYY zBF7I?$3zXOHVJ398}o1Eb%?@r%4p>w`W``{Q0rmGQYX8)tiM15u(|zKyvTV>uljiF#cPw_Q@?z>RbX7d>(U5|L-3qc*CJV07lTCTLwku4Uk@)5 z`ww;hIgj%&K~1$^O-(V}Hc#1%-K7i+^a#V!Sn~Y+sS|h)Q&jgIotUYN<88Qf8(FEp$v8c6$6gSPR_U-}jo`Kw$oWMVA^EJC5o;2n@bNzu6fh+xCre}BaVCtA8@w#W zj~}+O&dOCuXAM+hEa^lxFByB-TR|XC9kMdbwIW4@N6{*kX4*OI$W|*(+ba36^Sv&L z^-;Q15+evt$;|D`2uaXP)LbK##aAp&rUzn;h`4v;^#PjS>0F0Si6|!Z-zPRrx9eTo z*NTzBo2+x0h_3vpYY%JORbT;&66XKL9T@w!m(6j^GtWeYdH!BJetOm1GU4&B#QDfL zXDK7SBwUyt2yB%)wS)%nvI3_etI2?Nw))1F7RuyJ7&t988xQ*-XhCGQ-QtdAc6Xw}&AK;O1?LMbUz1y*h zTHf3}jCQ}M8d(av#fa@5k@?T12fvBVWo3@Lxn{xy+#KPuVH(xqr!aQ0;!&Vo=gQ%- zzueN@9qf&IcdrRs=;f?I2{tBjPcMlGp($ECJ?3?ZBo?#7Vv2jmgSlIP8V(5U> z=tM@--k#mTd{A#`?*Zr$h1S=_avEo7BAt(XxQuYCp;7ldAw_j$%R#+U*Uscc3={6} zIEmPnyB2>`+}$4tNt#W(t>Pu*HOzP&j>^Kg|XD!%P{{3Dn4Wh*h|W>Wr?};yF-O z!w|(B{s5(q1|z0P>w_dJU8GW;O0pzXcpR5i;@SC5gJK{)Lqt+iQnl-0&cKG(^`(;` z^TWXy7X3jOEKWT;-YL+~&=`cFi3mAyKVRQ0n6Ju$8P}YJw$NMwx1%gvO7Se1c^NMY zXHe(lF!+t*0FxWOp#cE__e1&E*%grK*xA|3LN8uhPS<8ndsXDwj%Y^IY^U(s6D+02 zM`T*cB}_OJ)(jh!Wb?3P=CUVJEp2&E`4_yA?I-<%Q5w4AB@E}Y+-Q#h+)SfZA6$Slvm zv8$HjGm3aW7%ro9w=7drl$8x5gl^}74fEl=Y{9D&{hH#hloB~`TQcQDTawpRHj=~k zWR-8R#aMCnCp_v5$I9D@uW;P1CV3Q3g1v7eZ%$!rbIFuh^y$@@TTNCbcSO?7;egxw zZfhW30J^kO+pf7oIlT63-!mevJzkcRjpRiT**fF$SFK2x_OO%bNFNu%bn}26#X+$qj@$Y08wc`5 z?>h~)@_sXgS*!71dRzmtqvD(y6gzLv&(CvP&mujbdzxX}?~nkSTnKZZna7)BC2iZT z?_qw4(oNvGi3v?y#@xz^v9h4qAPrpiEi(7Z?-8G)MKSGnB%tSS-@RLM?i_a|=o)c6 z!_c;?-?r7^;o&h>x+J#Fo|Po)2y@l6a*wgSwwyGgc8~bdPaSr&Biycie2e8XW!~0{ zqh@p`ZrkrGm9%zqAGE!oQ_hoo`SPX*8g}x}iJd~jb4P!N0;J%L;kg+PFWDjuQ$nts zS5?I=W7Qm4MNtpOWE*d6-dd zvs6}V3n8JEOS^@PjJyex;esA#)=M1^s3c=%OB3LXusZ*p9psM_cQPrRHNnzXNXhpA?HkTVfD$vg+1>nweq80j)cSGg4n)-(-C8 zWAmuIu5YY9cgPf=r>tKwca6guC%Qo6O)brv#L>K1wj#4D{^Fac{ps?#zCRDOI8i+X zJqL4VVm|nY>M?VZdLn9#0hygGCNH^8MKtDbCyM61G-a&J#kp_FBG#3XPhHrRf9WHR^-hoV_&qc5X9g9rePQZVz(`@_k> zp{1>@ZF|9V_i(@L{9?;Ve0Lx}0S;};U4pEO7d+5PIB(34!iHAl&}Mb}p8}n3iRgWL zrQd?@>nPNtEG*6(@r10dVq->C)Ew5kY92h}!_)~DrI_L^T}cx1Y@3;S-uL7*=Higs zpTZWIzpi$5!ixDEn>f?3)A2tz+C#26Vsrf3INIQ~h%OR+tL%Nk<=1w$6%D;GLkt%P ze8y+!fT2Q!ULDayg;l0Pww&}1V#ILj5NV?PT}jQAC6e3T;v3JiHEKAX`#+0_dF^j$ zj=V_{^e`ix%U&H%<-;?%RlYG@Kp+>~M5Wkqg~7aT%#F zUt-FsXO9`sXu$o%a66knh^EI)@CLu; zkav|GZaznRx7k5uU&mCB$l5lV;a~P~k4459v8~AmNyBDM89R#gDJ>DpTjtku3z_WN zUQ1DevJBdFY7CmyvP(VJaeId>G(y^`O=59K%0pFlL=M1481J1S7Gr*{CANEg`G-6m z`{K7dcLfT53HRiNh3&69{x*Ez*_5Xzl9F_YBft15V-&&~t$apSo@xnQczc?71Woc4 zj6C{Q+b(rviv|;pX*QS*(M9q(SsJp&4iZ__Cf8qIo%>d^8ULZ#w(xE^)(7V$PMeNJ z%>5lw>uh%qk4R{%>xgDbB4p9?{S0DGyD>?IIBqcer&uOVxnyLGp>ucfPcqi!q4KXX zv1`E`@p^T+we641*rCnO%awe_>7G0hP7rXCe&DjA**1Il$6xI1`H=a~=VeC|ia7?K zgge?MzPr~Zpci(>4Jl{JB)P8_1OhxECrwhH8^OCVT0=JS%UiLzdxCEMqpE6m6gt;l zP&$>?K!okr)HTY8xDscwOrhiLbgeByjaqBu0PO}Fr)!0)8>nN|`UIYyp3N;SeR&Rc zP|W)@w9dVh1k;>U!STP_B87}L(+VC5=-%jKDUy~q8v60p2iIyD=DpXx3G63nCS-gm z{E++ngRo>gXSBE9v};}u{Xd7uAJre1pg|w6&w;0iFVta-JZHC=Sa+6xLub$OBF>z;TFk6StZ-VI(PmJ z)H^IXKV|8Z&VHNn{tKD4qx>2Iw^+pV3Mq|9S!vn&&@i3iAKCeS%)RdXVkrT+q)uz8 z6$}OMMA3Gp7(V+Q!$RR7N}ORDm_f{M&s@JZ?SnP$_}wXV+MUCM*^Yq8aXd7CgFQ>0 zh(Mh_SE)-TrbWs&5gF+b8ybuKs!5KQ>Rrv~b|=JvFkD{RmN773cKzC{PL(%`p&P@1 z4D!9bQcRw=PUeLg?N$e~!?6rCYmN>67S4@YaPr!3{{&sw&Cu>TyLxkwr-Mfa9i+lj(F>W>32T0AB{|75m$1$kOO1-`^7SGlS^G5ejVXrbdBnJjsyy^0$rXJ>zHPLEGaH?Uv&`txYw&#tV9Mdu5c zPE`w#l9I}7zkrnY)~?2$?LHO#6I_%}<~o{@u__`rE$JAdR=I<=nT~Eo8&Eq7g9-%C z!H9OPdO1CencqtlWp!V)w&<{VaY%GJqchrj4}+BRYXcUE?RcVPuM35fw6K-d(%GT; zuHhS2Or*-1nt_aW=)6wb9~v62@mv@YxTyAF%6v*u>tx}xz$R4CuMgbzi{IHNXwIP0 z3XdJ7ehRbx9b_KOjXvn6{k62Py&(m!i`T>l*j*hrJ|%e(*5}ESm5j9)S&M%;KD3yu zbp0gX7CNdpc7L_Gr@#Jq8oevAB<$zUAeobP__kZSPyRAj+3^iONc}8D!=_8s`U<@S zQ$7!M>aYb9ReSP_&Bc9mF zK1MTK-dw|zF2O`nxGu&=LBk+7{xg!axbV-RqAqTcK37m+Cj7o3$}ZK^ZPa8G@RNAM zCwHTSbgn5J$hBK{?=D>4A$w{>`udj+b8m*CI-^FtQZ5F$p5bBK)fF^d1@r2OLPcXAPAzkd-j=I)WIE zTKHQeit+f70oy8M9gtrWpZjy&t@CRiN)S5U3M`O3iw==XwJ%So-rm%6^CtvGI zM>CE z@>v@&o?9{$I%N81XoW#&6n)i1XzKIDViZdA82Iz^_t8cO%-?MWvh@@EZf+0XLQzTY zjlc}IYw5mZGm`lGP4P%?45XqtB4SW zh>cf{%HOE0nyzV=5E-~{Lx*qZ#)7NdZtG301L0kTKE$j2K7(4&JqppiM)akm#w^6T zk)C~A!*YaHtLKeG}nDS@tsn3*DSOlRf*ZgX+pFD1WT$ApxOCrCEN|h~#+tFqu z(!Y1@LB-~>iZFUUFyHh-YJfQzgjiJH^*GyOQ?UV0SLb>Nlp&NfYtJnotq*1g_R%nv zA-*q>3>5Qz-F%9c7nh;iXAz^{9h0~}rovN%Xf?x`e*i7|0l}Chor!5k@!juh+EKbq zoO2ew;MM$l+Gdos>JUq7C+>EMwa=9+7x$TN>mi&ext4A|m9oWXPbFcIZr?&-?2q=z z!_7B1hy!tJ_p=>`3->qL9CJ>+h55vZ2zA_M1QRS=JC9L~oF2Q`VSk^~2i4F;5K-wt z7^W{yWp$;lNXauc9m?T7chdKdUm!RZa^HZN#q^2Hp?;)z%O+gBV+%9~vj2V7EhG&o zOO>75*qADxnl6GwBl!RKWG`=|ZZC(~N({W~nfiL;|NLWkyYE(_h^B*u3Vo0Aw95bf z-Is(b+<%IS$?xMFZPN7N3@&z2{iKV;bGklN1XVZtaIGL zF$;})_eYRUvP-$mU;6p^eW8@VXVj>C9~#<&wRnqH}U_F`;m z7XN3L!nM{<|7RIY#LxhM11vlm7I8o>BEo#eDM&NE6rj13xZdM?UW<{q;?-Hu)%q{q z!o4S9u`2)eWcSyX$Nx^w|L4R0*>Ce*G4D~aQu7f;pq9jCWpUy%Kw`tS#x?yu#Jb1& ztw9jZ<&%X`r4#v2Ezq7dOIQwOy@eK2@Q`>Na0!(FyHv?Jv>qSouUYkee}VOG1=_`u z1))I;sH`tkQiQd&wOOEy0tvDQy+>x+HTCJHlV-L3r?bP2aQN}$)D*2s;p1}zit*|f zLLnRUS^%j|Egz6t5sIpZe0jUK97Y?>N3fjtw7tklGyndz25cc&ZZT%<?(Ev$!NyjuvR#sc@05pkluzJw5YMVP-fuI7 z%yu29YkM^UT-+1{CA&V9i`N0)lYvwQd^GiRgPhFKSfm_?t7xsm8c3C2y}8D4m%SFJ z9m;x3q4-0sOl_t%NyATA#-6pa5l{td;iq-cW(IPDieaDEA$0j_qTJQ8jm_Yt}frL!HoZ z#{3Oryb;g?BlrC|^4YJ%Yd-zRMR9G!6c<450DnUk&jYcJ7mXZL1D1l53 zJvd9MCMyTB&fxJ-RvmR)!5>CLG@5@su@@}{~>$Kcbl5^M?rc^Jt zfH$!@`Kt@HffisNI>*b*$*OjMNGR56yaDmI3CQt>{LajV9T9V@eW^Fm(ZM5wT3$)b zijC*>Oo5k`)eiO9CerogG1)+-OeTnFAyjlgGODjgUkq-Mh8K68M;tk!W+uv$`9LP; zt+Ekrk27}om2@Ctfs#e{Y5eCj_E95n#bz z$VJein6&?Z@R9T7;RtdJtKl66xC{td(?CoPYLl?A5e(`_aNW1J3VHM0jbDCu?bioC z0XN3e^>}iq*s#<0ni2fKBQ~Qn_&kJ&5)6>`e6ZXAMrUqu0J%b=o3Z>kkxkT8-8`gkN+5}03goJEY{&Z){XWqiVcnanf7KT$} zp164I)qj=XGTD;|RKwm%kCiekaJ?@j=6~ktL?sqNoF)~21n#;gfv-(Q=GwI^zrgCgd!g$!K^{3S&08;ZF~>9Wbf2(Jkem@Jl) zmByS#5M;iOXt@Q$3zfqUWbyIwTcKG3n7=_b;#eFe|GlM7yT#x4fb5F+`!-L71#!-R zAu=a{#X#nbrQZ5VMU0&H0etLDWOr1>uV?gfl~L?Cy#6Dt(n-i%guC&=w%Q; zEqlgiGkk44I#h4>$dL-*HBhrhEgpk~4Y zE+-KLUhxG_>O9A5zUJbl<%R%FX zx;`CWDE#Tv%QyAca@8v=&A>sx-K%Wt$1`5a;F)Dj2Qn1F+~mOzRy&wSa+oU}0->0D zd48NLmo5&bCN2@!gS9V=yOnM4JNXhucI(#=2`_Vx&Wd(sE& zbs>I!4Tqg+&8@K#u>>AF(aVDYnH(@nI^}!~Ix4E=FXzhQw7?=38+GS^lYmCWw1z8T zereFqQWCm4Nj=+XxE_Ss=uo^>eKvxJ1GX|kZdXVh5y;B)+prE{{j?CUpJNN^&%_OXhrK|A57_-&sN5ZoVW|Z~tMorUx;Wj>fsLSh z{P;QI=fG2F9jtJUtIJ!{~6%>R$?Cnd3xS+835BGhyS!i`X8Z&Mm)~>Skqf^Y` z9~MN%By3g(sWg=dcU*uiC+oQd54o*%gvUVh4_bP;1O)}zO?uzMvGc8lsu04rRN1X; zj+>5`(t2GU5y(@DGWN z;U8lq#@K+*jG>$M_Q>(}R6Ljzq6Ayx2r&dgl_9L3jKc-YPlqEg|CbxbjMSrbZd?dC zH%NC8uK93dB-NDAAB&{8W(TBT5gNMCjWg}CLUMI^tc`?EuksTV^iF54uV4fl)(PA- z?pYk0F&0!hdB8$o+8_`D>Uf#k!Rp%_g>3KWXaa;f-wPi!;NvNhJ;6Zk)2rY(IXNL} zg-})s2nxD6AI%#<^Y(^}j11^d(`Z(gHszVhJyXgnR7bO3XvGAF_X5z5%R(^M37jk* z$4!-A8^u;Lf?%VIr9Z%0ivb~|q^9m%d*3B*M){Y$WZ#G4)KHEh0<gC`sxxwUL5DUJI?_Ktq%VHdVCiRta}a+?I2XT=IVjvk}olm!Xgvw5+n0? z2{|k1TjC>;lassuZA8D%s1XA$qr_$32vjn~;mtmrq+>g*4<>_uA?9-oO5k(aYa!77 z9swh9f5(iI-sWrYAU+F%ugO?3Wn2d3c`XPT6G34^;)EZL322{w`JrBc``|%KLBo}J zvala>d^bR+j{tP_m>+&CR|G#!kAK(gcw1^JkP&*7m<2bGfhP$x0>2E~0YJdU&W^(C z>OupMJD_524L>T>{C<2r=_KZ5RXMcA=x&ctYm?QM%HN#xF?y& z9}6}9aQFi@IR7xO(-m-!0yjU2%Ze1FnCGBS^77?Nogx(k2*I81XM)8=s<51T!p4)=#5^=r)6wbhR(<)@)fSukpq!f>^c6|rSgL}mX znGal@;}{Gjkm-uhv||@n*ZGBorZV#pq!TbxsBiGWq_=J54#X!ozF)vG$^#VvNAxAE z`zgfx-Q#2G$B*B`6Uak?0av|-9Cq z({)Two_K@V+Cm_%2@R)~kt?@Q1;Pl7e4&lZ3p!9PBx70q0MJ@5cRfN{?nwgGUpHsS zp@3qc1Shc^Ds*Md8^Uhd|J{_Z!fK{|$63A1tmR~Pp=iv4nBO^!ki#rY(8Cq>v5l$W zLeFUn%nC-vr%<#}V7`_N!6rP3L_kwO;GmKwMI*ucELM&x9ByEUTR#Uh^a~=66o5e& zK#5y|`~m_WPQF*b7J|xfj1M}t9&4;hg{7u25rASg)LWD7BixKkjghVRI zppDIGTLTn|5vLX}vCV>$`ogQ(bqbQ;3(;U4N?@WpxakA`vb{rHi$%TlY-x^b== zvLZc@Vt_*e`=<}el0igVShMv+Y1@&|rvn2{O@L%7Z5BRi%DM|}jh8JTlM*eil7Ms0l32A?#@CGr37?$d&36Q z>~#Nojm^obZ~)B{9vb;l^;rUN_nrL(`aq7iVYwTv{Q$MVgsU`PYo4(;sh$iJ2Ocj z87-eK{s0)opcFs&gjsKv>N3v9eV_!Y~w{&cW1#8HNnDe2Ifv<6H|7Lr0p z<@S5uU0fc|AbjCBZkrq0+B0q3yl?^VYa=kPd2)KS(tsJy^I#}876Mg)=$wK>rQHGY zJCJHgmyoBmLSm#+YVrlx)qpnP|NaURf{)-o?-3JAwgx>q-7M*ODCo`&p{2*w1gJXk ou>Zr681Ve#o_+ss(^VH_Qx$|pKl2-pk>I~KucTk*3+s6QKgZJNE&u=k literal 0 HcmV?d00001 diff --git a/monobiome/constants.py b/monobiome/constants.py index 3742771..5fd2922 100644 --- a/monobiome/constants.py +++ b/monobiome/constants.py @@ -121,3 +121,21 @@ for h_str, L_points_C in Lpoints_Cqbr_Hmap.items(): max(0, min(_C, l_maxC_h(_L, _h))) for _L, _C in zip(L_points, L_points_C, strict=True) ] + + +# strictly enforce curve bounds s.t. there are no intersections +# order is determined by the max attained chromap +max_Cstar_Horder = [ + (h_str, max(Lpoints_Cstar)) + for h_str, Lpoints_Cstar in Lpoints_Cstar_Hmap.items() +] +max_Cstar_Horder = sorted(max_Cstar_Horder, key=lambda t: t[1], reverse=True) + +for i in range(len(max_Cstar_Horder)-1): + outer_h, _ = max_Cstar_Horder[i] + inner_h, _ = max_Cstar_Horder[i+1] + + Lpoints_Cstar_Hmap[inner_h] = [ + min(inner_c, Lpoints_Cstar_Hmap[outer_h][ci]) + for ci, inner_c in enumerate(Lpoints_Cstar_Hmap[inner_h]) + ] diff --git a/monobiome/plotting.py b/monobiome/plotting.py index 9a55a2b..39b0695 100644 --- a/monobiome/plotting.py +++ b/monobiome/plotting.py @@ -1,7 +1,9 @@ import numpy as np import matplotlib.pyplot as plt from coloraide import Color +from matplotlib.collections import LineCollection +from importlib.metadata import version from monobiome.palette import compute_hlc_map from monobiome.constants import ( h_map, @@ -9,6 +11,7 @@ from monobiome.constants import ( L_points, accent_h_map, monotone_h_map, + max_Cstar_Horder, Lspace_Cmax_Hmap, Lpoints_Cstar_Hmap, ) @@ -74,24 +77,50 @@ def plot_hue_chroma_star() -> None: colors = accent_h_map.keys() #colors = set(["red", "orange", "yellow", "green", "blue"]) - for h_str in Lpoints_Cstar_Hmap: + for h_str, _ in max_Cstar_Horder: + Lpoints_Cstar = Lpoints_Cstar_Hmap[h_str] + if h_str not in accent_h_map or h_str not in colors: continue - ax.fill_between( - L_points, - Lpoints_Cstar_Hmap[h_str], - alpha=0.2, - color='grey', - label=h_str - ) - x, y = L_points, Lpoints_Cstar_Hmap[h_str] - n = int(0.45*len(x)) - ax.text(x[n], y[n]-0.01, h_str, rotation=10, va='center', ha='left') + _h = h_map[h_str] + h_colors = [ + Color('oklch', [_l/100, _c, _h]).convert("srgb") + for _l, _c in zip(L_points, Lpoints_Cstar, strict=True) + ] + + # # ax.fill_between( + # ax.scatter( + # L_points, + # Lpoints_Cstar, + # alpha=0.7, + # c=h_colors, + # #alpha=0.2, + # #color='grey', + # label=h_str + # ) + # x, y = L_points, Lpoints_Cstar_Hmap[h_str] + # n = int(0.45*len(x)) + # ax.text(x[n], y[n]-0.01, h_str, rotation=10, va='center', ha='left') + + x = np.asarray(L_points) + y = np.asarray(Lpoints_Cstar) + pts = np.column_stack([x, y]).reshape(-1, 1, 2) + segs = np.concatenate([pts[:-1], pts[1:]], axis=1) + rgb = np.asarray(h_colors) + seg_colors = (rgb[:-1] + rgb[1:]) / 2 + + lc = LineCollection(segs, colors=seg_colors, linewidth=3, + capstyle="round", joinstyle="round", + label=h_str) + ax.add_collection(lc) + ax.autoscale_view() ax.set_xlabel("Lightness (%)") ax.set_xticks([L_points[0], 45, 50, 55, 60, 65, 70, L_points[-1]]) - plt.suptitle("$C^*$ curves (v1.4.0)") + + mb_version = version("monobiome") + plt.suptitle(f"$C^*$ curves (v{mb_version})") fig.show() diff --git a/pyproject.toml b/pyproject.toml index 58f1b57..a256bae 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "monobiome" -version = "1.5.0" +version = "1.5.1" description = "Monobiome color palette" requires-python = ">=3.12" authors = [ diff --git a/uv.lock b/uv.lock index 40ebe0a..9a35c70 100644 --- a/uv.lock +++ b/uv.lock @@ -882,7 +882,7 @@ wheels = [ [[package]] name = "monobiome" -version = "1.5.0" +version = "1.5.1" source = { editable = "." } dependencies = [ { name = "coloraide" },