From e31fbcf36a3f328596ef5aeea1f78ccc67911e76 Mon Sep 17 00:00:00 2001
From: s212246 <s212246@student.dtu.dk>
Date: Wed, 13 Nov 2024 15:09:48 +0100
Subject: [PATCH] add histogram visualization function

---
 .../screenshots/viz-histogram-slice.png       | Bin 0 -> 16525 bytes
 docs/assets/screenshots/viz-histogram-vol.png | Bin 0 -> 32635 bytes
 docs/assets/screenshots/viz-histogram.png     | Bin 0 -> 35615 bytes
 docs/viz.md                                   |   1 +
 qim3d/viz/__init__.py                         |   1 +
 qim3d/viz/explore.py                          | 132 +++++++++++++++++-
 6 files changed, 133 insertions(+), 1 deletion(-)
 create mode 100644 docs/assets/screenshots/viz-histogram-slice.png
 create mode 100644 docs/assets/screenshots/viz-histogram-vol.png
 create mode 100644 docs/assets/screenshots/viz-histogram.png

diff --git a/docs/assets/screenshots/viz-histogram-slice.png b/docs/assets/screenshots/viz-histogram-slice.png
new file mode 100644
index 0000000000000000000000000000000000000000..0ddf7b495be7f5782e913cdd7a03ed113d972604
GIT binary patch
literal 16525
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

literal 0
HcmV?d00001

diff --git a/docs/assets/screenshots/viz-histogram-vol.png b/docs/assets/screenshots/viz-histogram-vol.png
new file mode 100644
index 0000000000000000000000000000000000000000..332a4d24d1d85075e58eb898ee80236f0e670c69
GIT binary patch
literal 32635
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

literal 0
HcmV?d00001

diff --git a/docs/assets/screenshots/viz-histogram.png b/docs/assets/screenshots/viz-histogram.png
new file mode 100644
index 0000000000000000000000000000000000000000..d27cc4575424b1cdf0c5e5c9cef2d820c89a8012
GIT binary patch
literal 35615
zcmeAS@N?(olHy`uVBq!ia0y~yV2);BU{dB_V_;zTYQ-qaz`$Tx;u=vBoS#-wo>-L1
z;G0-dkdt4MlbNJYmReMtnV)B@XQ5}LqmWTjQc!HAub&H7pqF2iuCMU>-w_4|2F?PH
z$YKTt{zMRFTw%XFlYybD$J50zq+-sSyX7?^rT>n9{GNAenR?5FmI+Q8PA{060$o`8
z6e0r7T^1G<{rX`8!?wepMXp$j_zU{C%wNu=W%fqNYpR-W7582i59O9G^XA@{SFCQ6
zax$Czsmf07w@2Bt-Jk!SN#po^uKby`*kJ=6Mg|53hE-FqzF`6}7T77}fJ7RE1-60s
z2RJ#RLG%Nb7F`fsz;s9qL|ZT>a)anO4I5ZNw4cKbuzq!g9L9`*S?2lcs^9Ou{>JFl
z-s^GIzPeFcCUkdq?<#ruXiHt%xjCBMM;AG_^Tlq+O|AcyemiZxUG0_S{`0l2M~W`L
zzPsdQP^6BSZtSitZm(CYY5S4CTJfE6L$~t{rhxRR^%`;e>;6Vw|Nio_yR22ojwf}`
z&dy%`@$vEaPi0bFtlVNRUM`=1?P_@ZT1n%y7xDjpO~0wixOLv$yz5ImCyU6+>hkmR
zm%h5<Ilu1L%A2W-J6zVKi8C;mW`2KncT<%9yZ1hypPjvYWo0mD%+xI@Cxs%{hVA|T
z?{`sod3jcR`Tg4M?{+-qyP0FQ{9CZ}mv?ugfByXGSMMKK8TzxfNU#3?@B3d*X|I2A
zkX`<YXn4%R_xpbPmEWset|Qj{ZpY)kte4CVXOmO79h#Fi-+c1ySz4K-xT?AN^*2I#
zURhbIY;0|_RYZ2|*m2_UVP~=Kqc3Y`p3T~N>hR&kx9sjbz7%@>{p951eJ{UWkH5Ym
zaPgOSyWhV8S;TMuXF>M5oo@cNU#EC^d#_#?#gO*E+^m7^>6dJsuI_Hr#6v7w^X^8;
z$;oBi*|D+e>#L=$+~Qu7-tGM!=R4ObbW+O32$}w(ojZ3{J?c~!5foIMeRi2y?yVR1
z|Nq<0b9lvt{JOe*a@B7PSy@?6UcVl0ez#<DpRBc7_tBulBRPM5eB2bFb8Bbu@^^ba
z`<Z54@z`7Sb&^W%-Cd#I?^Uml+LEEj&(Gi5*7oY(@Aua`h1IpbgzoFLt^W36-R^gj
z_V3?6%OrDA{h!D3Mm)~$eKHr%n%~#4x3>pr_<B8l{gvwQprA$5<ElJ$qqj{tn-=`}
z+1ameHlJU$VZ()s$C5T?9P5!hb@puOo^a#zb2iV-PWykov#WIVy1n0`Dl02jhOQ3#
z_35;}s^{rxy20n?**<;wa-~`Bt&EF{Tt(yRx4mA?bNIq({rzh`d?=`_tbDoa^}5S_
zvexHr{qK{tzOp?(zOt%H%f==~fB&CNZ_28d-s?Yf$Z79~L)=+cS53_^o2{gz^ySNC
z|L_X?bE)s|?Uk}BS>fdD{Pf|&g&#f?+$}sVd+N*?o9Ef*O3z-qwKdx`<AMSxfbQM9
z_v*^Z$;*6Z1}!|hE_U~q<M#go8yg!xefSXY{oUQKf4|=k&$9pj_kI2ARjbzpJwDb8
za(3R`U6yrr;zbV*Fy1Y@oy*0;GiCbp>Ff4<^7{MZaew;V_4@mMIQ{?g++I{pPLH3T
z|Lg1P{=dJywN9QLyxcFeTTJ)K%a<$VY^ySkc8N~iw=C~ikL0V{+t)WWH>YmCd1YO!
zweM`RwNA4?O}zPhe*L~fpZx89x`=fzb^6`?x3);{e(m?UUESSZukZhNb>o?&jV~Uy
z%U`>=*nMl&*H_%{q#JH^UgluDQaN+xOfPS5>*UJ9!jG)+)^&d>eCJpM^4ol9sQU6^
z;hHr%YvcFFNt@?gk^lFB{qIx#`oN^5MPhm}EBftztvHm;d-#H{`Q0V)bw6E|-FgD1
z>&2SX|Esb6dL`JZ?9B`{|9NjRs^9PZ{;FGl--Wy7_t$E#-xG9tn(pNX2b<4FUeDcr
zciFYI(XT<7UU`RZ%#HwdKA8)(-|sHJa3SFBjg8Ll_x)a1_U6Vy)9h<=40jd(e!E>;
zP0elno=;tMe?GeJ{qyNG7Z1;s|9|iQUzvY@U)9&E;ilE!a%_J-nY`;!m-dz2<?lc5
z3kP{7?d+_j_WwTigEGvPvbRwnPk#LP@z=B2`6{0BwO=OQtNk9kHhR0?`@P@isk~gZ
zdY#q#GXHrtE2Z;xIF{cjY|q>M*35UdnJ<W)c7ER4i;LZ}pPZPu>+?D5ueY+-zwEF7
zv$#*jQYk+EesSLWpU>xC2c=TSX12@=3mk9lC|u0OBe7u7qD5S9CrzGQdbjlY$|Xx&
z>VMz9|K#o4wdMC~!{^PL_k3-**6w}Jmd(z)bZV;h*9*@4nrdopx3}e9esXg1*7Wmo
zwZGqPe_oRt7&!6KqemeT5i8u~YeN<;TnGy5XXoaw?&;zA`TKYLhW|y};(Awj&F?H&
z<~#e<$K&$h85t`cJ$`Ij{w~J$-;c+WPBA?N6}V|<XIXyx42qixiq2oIhR4607M*9A
zFCV<j=OQRt6A!noT(QDqe(krJApf78YyExC@d7Weu64U!X+3@V^yS9ma>0*}^_pg1
z)45x6*%y>^&%gLSH9T(O)vT+N{q0tsIpgCy%f$0=8}H>?TeD?zm-)_K<}O$1ay_QF
z_gIhQV&`_g%o7t7v#zX|c<At9{U3FpFn)V``*mOQyDH(~;eS6I=Ku9N{=e4lyXyiM
zyLnFf_3iEI{r|qMpJh?FsEtQ*(Yn~(TAG@kpw#&5`}_41mEGqR{}%sMTckJJEO*lO
z?c0-*lC*T*UtHXtT>Dc#mf?ya8^e`A<FqpdDs#VI+*kXXYkg-|mr)zP{JV;KJB!nk
zKRh`2{B8P`6@kZY*2UKSe!IO*<?++$@#{AH0Y!1*#)zKU-`^zL5+$U~atu@?7rXbb
zyYTK_^?OqlN&P(^nv!pF>+ebMF#7lBx&8c$@o{nYBv0G@{SxdvX=BaLPsZCmUU25O
zoHljJ6p4oqAGRG$GK{NyDti3WWOaY3dGqFp-kZGn=AO#UiYF@`G_q^y)PFju&g*$>
zlB&1N={A1(yo&1T`Q_D5L4~FBq>m@n=UYsBdu!|I2`Le4!;;U=GVOc%`T2Qs6-nc?
zGX*-@_H2A|HW?CaiA$C(lX~~=-LVG;n|XKNeV6h5&F1q`leFGEe{pd!ujesP%$yDi
z4(6?||Ic+>XZ`0}+3QPf{=Zn<&$Ie!)|!Zoiw^zsnQwP@Ldu_Cuh&1n^W1l~ndGD%
z%i?EqzVEgC8}aw)^mrc6WBU95BuTj4Ja1xUb*rPR%gAq@P2|I^`|p3R`}<2$*1F7u
zi;GKZ&Hh)bR`*<68$EwJ+hL2(JG8a5jI2stBz$>$`}>}+)AsM*U*ErJ^XA?cFESQa
zetzbbnVH%8x2v<$kc*pJHg~zt%p?z^ZMnD8B-#>1#Kfd}rOnOO?Rdnsc*l+#7xSK-
znc234%YOc;cio8+ZZR=)E-rHI<~m(eT-+PBHcImC?d|4VTwFZ|o7tu7>gtX?JluYM
z_xY(mYm3a9+4=1jw|%lwkp$&Qy{g#^S?qqwECJ6!^)0u!p3UQnD}$GF?=w?SaIh|W
zbK&0JYW-dJD?dLwdGx4jzwNh()~Eh9A6s}1U+}m8tK#|V=kxihD-UTpP5Sa;asRyH
z+v&ew|9tNr!^OolW!ki5pi*$smcqx!jBnY0IKbTZJ~k%i%HHa7$+m@p%5E0Z*jZRs
z_|7)7DtK_fGJE2wZ=sWp^~pvj{uK7NQS?loBUNTtQ&Xem!*F4luQV$Qi-ww-n{D;C
z5*_{j|7y1CMQ!nLb#<-!a?xG8=S#1g?XR9~peEAP@VJ)}wiA}9`OeC?u^~}>P35^c
zmR+5lfw#BiPMtRGS;d#Px5FoWIjz5c&gZR9mBT+jKOY_!caQbA)pXz4W-lKcY?iXE
z+QP)dq_sx-{`W6mN^~PPxzzu<Jb%jExo=l|KGG@N)!lvh-rnlcH#atZ{`UFz<9AO^
zPCj+!%oWq?F~!%C-+c$Q`{Zn^LL?@B{P^*rGr#Q;Q1*X*Zm#I9`{nm*Mb~}a{cKjY
z%HQ|T_tyQbnrl($#BcXwK}_ub@}zSc5)WTl5xDsCwW4jcn(~7Czun3%eQ=<WYk5Ic
zWo72GGc&vT`@`Sg+xzu#zkSxHCnvjldTic*Tm9>|ioN~+HIw&LR8&}8V_q?vBbwpW
z9y!~p74`rBrQ2wIW_)v0JU+zDtxa$D8>7-UHv&P8vTb>HqgK}O%iFEluwjF-U#7Ob
z=!*{z5BIGPTOE4w;ziM0TeGgdnseK3@7j=W2Y-UfR}YU48(Z6}OFV_$cW;h;UHpsP
zxxT)>vZ6vmL*qryQ+5A&HtD+i@3&vh=HulJb#Q1%j$f^0WAmpcSmE#AzoLSIg~yCM
zpRe7zr|;U@=<tYpOFSnV_q88x=bwMkPm8-+d{g=RI8cS?JIiF{haGP=omQFZD^#R+
z@!~}(>#{ZXs^8nPva)LG>G=gO_p^QfH7b2`{r@^otM_ktzrDS!e%RnkfBm1wJyG!$
z4_mpfX?YeuKX-L%c$_9bKR+uQ+bYk=YO~C8Z?V3%t@-gG^8V?||7)jM|E<vdUpe*v
zp3}GI*YWJywQE)7=V#B?F1@pU|G!oL{{B9F`*t)VBV*R3C7ttXzeRec|C8SJ>(%P7
z9}e?p-`!OTN(+C#->*OTHvH@N&gILWN3Q>>t)Wq{hCRT%@T^z^+uHK?_ipX4-@oto
zJ8RvD4Gy4+SIvLknwOWChf7GV%1r-V@O8QUU(eNHYcB=++b-3M-F4#lard&_vCQmz
zHm{fP>FMcBjZ%Br!)bf&sO08<b5}3(UVC-so3h<jWp7rP->Z1M=Cwb6*YfJWU$2+G
z-}~LFZ})MzY9C>Bzbms$v$aa!UOak5)6?JX=aNT{9-X`OtY%^T(Js+lFPF`}vb#Kg
z@8@&YS+};VymRM{N%AqC+D|9duZAsu@@M|{e}8{pT_111HTQN{{+^F*N=iyk-o0B_
z`T1Gqrza=V|43`;=#==lZL0rY_w?!0lc!I=-cuX$^}FZgWxiie>+e5d(8Klr*rZ95
zR6G+C6GQK0Go&f!FlKyUVrDMAU;F*#zTfYH{rvi>zQ0@h@$qqMJDIuK2`;X#nHLwi
zo;r7Kox!fH+1K@s|N6APY<Da>zuX#wNk!XcUOV^n$;ru4dnz`n`OFANoVI1voPQCb
zPk(PHe}9il{NwT^OEi>~4{uzbroBG-{k^?e7Z<fA|NQv)_<0Gz?yfGY*T1({e}BjQ
z?eeBn@7$Z4T>t+1y1Izr?Tw9#K_U5kUbP=64nXaNmzS5n2GxaEUPo`s(e%8vuXgvZ
z@9*ocnLT~qID7VO%iD9#hsW2d^7Heboo~PYP-dQS+L;{>vKKE}bnaK&ynpW(Z#s4R
z{q61k*JI1)CRciTcJj$ul^nd>R{!H6yQrAhtKaYUuQ%u_TNi8>U-6Lj=<(yP@Bja|
zeO~1=$-i&&>n}&=?=3xOrT^vklbl^8FBg5kSMC4t<HxM)>*gj`{(PbkyQ^ep!hVJ<
zbw6d63k&Aj<?ib5?~mG=75Z?BTz-DOXONqlTkE!FHr}Aj%$4`*e!t~9t?oZhr~Bxl
z*X#GkO_EXOdcWthUu)U_pXckfV$*-d|MmZ`{eO1;zQ~ukF<p+$Y;(8n|1@##=d)hn
zlYf1GuWxQ{{`a~4|CJx&=Dw|!GRc^5ZB69j(%084r^(va#cWPLzc0ZaR6drxxncPC
z`~Ls7$+2~H|0>`2PMbP)>7+@MxK3M@z0p{GHELz%<I|;YZ-I)Is?TT5&s&(C{%&hw
z5mEc=%SBMz*3!+h?){ICkDtFieDtWRSohLHwevtBckiayX<jK4kJs1Mt~SW6%*$H`
zYQ>u7-`nG~VnxrpySrBxK0fyAef|IFhks|=R)1slZ`QppzVgxjg=fy3+01r)Yxeb5
zpa6F3ms_houfhpb^xdobovRzY?aiLrkZ0dd-n>)u`D{^f@#+uOhYWap=i9}eon^ZF
zLC-vfEPc0a3?><GZ*2{pZ&!O|ZL~Qn8(Y@jUtd9Oz^^Bi`z>yjyuRi;>C27eeo(oj
zr>D2;ai4X`<6iSupibNU|NqKmtx7!RT9;pIV&(pFxBPzQmlqfNCbs9@-Ie*`!a`6;
zls-DbdHl-z>Tho*hU^Uf{O8XfP~HSJD32aJnssf>Ofj8^1<maIRu5w>gP)(9Yg+T8
zVDImDyHA}sabfHAxYebvuVr3a6Dehs;?X*h&Db>ak_#xqtNG1Y0czJbv+-V9<~#e#
zWq<p*g==qJ_P1Z#Z}-cCnVs*-<9_>hGk)1>X}xN?e)CT4_q)Fyb?ciHJ@NSa>9jtm
zoC}SLS{1vy>?Nr2{O9NAt9z@zZ{AmSa*}G*lZoynw{y3@+;mzm*weGq?$-<DojZ19
zytuG%>b>yQS65|TUiR{sbbiQmz1Wibwcl4}US4)<YxZ<dH|OW)=iXYg9hQZ!k9&1v
z<6^m*4~|<iE;?yyYDVp?+S(^)yGl2D+nmk)2b<Yn_nP0kaG;U7^!eO!EmPA_P?vFa
z*jl|Ga^S48e16?3P^#{?{WgP%nHkhTm$j(~h_C&6)%E_In|JTVK0e-meR03ts(rP;
zU-{Snn#?C_wPdDo`l{5^)5QOjn<N}y*tvW6>toXSSK|MD5`X&S$&3B}|AIQ7+AJ5F
znwWUy?PAtOZ@*^$|EIs_r4~-%FNgW<U+nw+?((+W+cNbHma(aI^XK?hRO|qyF3^zD
z(W6H}ow6@)x8Kh?+9f*6w)&f;|3;Po_8G>UN(?c(K4tE&|NVCR=5?UDUEkvC@6-DG
zbH2Q|c$kBO!@$PYws%|ZZ7EQ9xp&bbCHL8rCJ8;h=q_(M%Oo=?LT4J+<pb&I>C(x^
zdJGR8I>cjcZVt+d$FkS&4NH8Ldst)kp~@>O0^Jf47Ce0XIGIP%=*W$|)!P+U9twH$
z^zt@&`?^0pe=V!NtSCIKyIq2jk+E(6{{4lwbGJ)&c6L6WWB2b%?wo9|Z=3h}rw7Nx
z<oL`mIM~tGXLje#ot};kj^sN#3PqQR*vH$a7q8m~D(<XWx2YswSrORxe7XPMJc+iz
zsHiNEri@!#Rz7_BGV{yJ%g1l*tNkr$Uwzo1XKnO$sq1moYac#*m}ruH?M%hXrPF)9
z->?7Q6ue*B?WV|!_4|IUy11{l`f%E2$zCZ_qg|!1(?G_Z0F74I$y*d0*zy10@7`&;
z(Nc19av)z8-YvZ@*)67P_1M<p{+0Jn!`8)Q{&~n>Z%|WP%bTB{zc_fg-?93CpXYPs
zetUmE|4#9FTepmi6%U_1O9Q!J$HO-19{v4)KFukeR{j6)_ugx3qovJepUt?vZLMMQ
zF`nawW&5g5|Ni?}{(lAw3yTEE)_ytLo}I<d!!m;R#V_}7t^e@gpz*R_<~)ZhUa#HW
zvtoq?$n~~WUkvL0ehpt7y*=;PfktNi9s2j{|L?uHGFbia;lqbB?(Nz6@zv_}Qt~w)
z99!pqpJABHBQ8FjYdebp&*6yub$cJadX;7K=fmOWcb=d6V`n-2(xsrspy2~SQPI>L
zyLU^2+W2<=emv&h$LH`i&9En`V5uR4iNkF3{A-|^tKa_Lj-boE%odaH=7mpI^DTM3
zcKf`qTl^Rdgs<l?I`CTDt}VJ(^Vv6YZP?d$cW<|JHSAixV8Mf)*JAd6J~%I3zI?U+
ze7k2NtPIZ&nnp7OFsu2_TEZ)B_F~uTb(2@GUS0R=rTX75m;I|=ENs`a@U>_#%D%Sd
z;ta!NP>Haz@bNLwNWi`N|FxwrE;w$#TQ>XVQ^o_57QF%tSqBcaa)So`-rm_6Y-wrP
z)zfnYG+?s-|KImTrBC0-Ii$*1m3V;i^R>0n%fEan0hPBG7C2Ttof<A8Ba>5B$xy&{
z2s+ez9c@T>N5BH1H)XqpgoU5JejUAXc0Xw7cg1|3!vSSw+YTK%q*u{gb|_3$MNQ2p
zS^_jW+^+22r(t9BXHPCi^wbBhUu&;?!~6B~XXBkxAlbB&r%naAxU?uM&*4v8Ep*CX
z_RHtb%3wQJTzTs1GXXRp&44_@%)r3VK*0btCE5#2cQah!<>cf94Yh9k*VNP`A}JY}
z{1@cLtGydqxxG9*0&dTcc>4V5)rk4?;^J<J%KJZHVqkEX>w4o5>(Zr5HSP8N56`Rg
zRh+0h_g=i$p}MnmUp1F5T`C9~a1Tfq+!m0jI8j&h-mbkjQ$fK~$|Rfuq6f;y3gDO^
zXnW(z#OzyJGC?DofByV=^8ESo8#f|AskiTI?XNErk0!1BAYoaQ(weKHqLT69!NE_T
zJ_QvNY?xQ|N^|OzDIpn~OI`+nnk{Cteb+{9y>w=#ady&okiSh5)}@un$;qt?kE?WD
z8@+v6qQorI>}h%Xex~K#+T!{4_V(#2wm%*;SA9GxF1!BYr%y#S@ljE$4mPuEo0x>G
z4qF=(6g27G&gXJFckX-%%G@g8-lt8)2Dd($l{Yu1XMcQjwCX`4`;{%3!AFlCz50fa
znSp^J!@!3(+WcNca_jT|f1cZ$=H4<{8@c(I;I=(`_J~MHRb9KTAF;u~y8PXhMXuc<
zLPCr5Vt2h*Iz8@^@p+rYA0Hn-efMtc<>mh2B_&(p>i?E{2Ko5(gsqENd2+J4Fes)O
zEPU7QOk2HWO9*H{tf;tHR9gCVgkANw99CA=mCo&aQs#McK7INm^EzyO+}b`_Yb_O(
zBO7(}^!y?tBX4a?ZeQ&C|KDHjFQVe&%df5upTBw9p+ioosi~nApg=ot)SxuQd(yVt
z+skg;h!7PK0rht7*L?21wKZGa6Ew~!Dk{2k!v+J;K>c}}&pl=D@2y?G|6kOkDRbt;
zC}wyT+4%eU+2zk(vqtCX^XI28U;f-P3)Ir#6jlrQy$_V(Gc0`gqjPU<x%lkt?5Q(n
zuGHWEC+KiH|Mg9&r$NKXwqGtd_m#<7mxWwj<_qfMyuH6aUN?GMNtEy7W4)JeY)qCt
zzj@Op5kbL+TmFHZe8qm*e76_x-mME;8?`cedmd;^&Z_*~8qMHkbGGK5pJ%J;`TN`3
z$ttaFZCa|TOPywadj9l!<=oZ1^XK1>bl<9SGHtVEnukt3$gBfL4QzAfp3B?5dc%ef
zYhIh>-_!8~b-+|K&CJ4XZ_5qN%38Jf?4effr_Y~1w-7ZnGYjh$*I&0`ZY#HV*bY4&
zkQu9HuUszJCvEO`J-&XglCtvDxpUWo2F1On>s|fx^YhmF|8<~_9H^--WuCWYZS?l6
zGcycd-QB(2s`QnLr<6fL!>z5^%Xh!u7d=_cH>jv+)4b|;mc3G@US_j>CxKdjd;fmB
zUG?kb^3wl*zh|GEqzY;ketFz)KWpb}kON*>1|JT~%31|VyQ-?HC-2{npKDcm>Cey4
zU)$~fID%$N7P)qRc{V#=%iKI%P*4yw{{XV%`0Lo17!%Ow?4J*ZyLx-4Zr{GWjbA?Q
z;l7xQ7cc($cwF8z?Tm!)Oe5Ea4<A;&-}`;WH_()3L-0(gZTIT`|1DnE-O+JjQ|f8G
z9la}7Xq=sG{(evHuP-kb`_49tEvW^$Eg*F3yIJ5F!4>?Z&k#~l025gp;hCQt`nJ!I
z+P2Jh_A<Y@RwvJ&_phs~>+0>j>Tmz|Nkn`=z=FWVZlK1&r;i^mURdZnb<(7uL}^Y=
zPAQv;4WP11MrO_Oc~xGjs;Z*5bYgdf#O^MedNwV1b=X>y;%8@O-LM74FYk<%iP|<c
zF`&s2vz!|XzP`S`I{*H@T|b}A-kN-z&-2m@!{jfA`Ry~#&9RKymNQdGSh)1{+U-_x
z(4u$siWMH9e*T)s%_haqd~E;!`P^s5&M$Z6!NF$Gd`0HxXJ<hJfN~WN7|+hP-+%18
zI0FNN!{LWnY0ohVT{loN{r~s-*OTh=SLEN{H))BaaT;it64V@;8XmWjm0K+1`MJ4K
zTQVj(IXPWf>Mg$a%O&rsXEW1H>i$&h+`T*d*O!-FeSOznuivld+11&3@zhjp)5=dN
zpyK|A9k{rc$U18py>#i)UvD;_pE7&)>KivAa&K&KJbLu#tNZ)+FZR8?Emu@ha^=<4
z;og&wO5}@bkP^A?;>N41!^3a5RnGpDJI6OMap9&-o3v~|Vfi3whTOJoxwqBi<>hbY
znDxq720=^W<xifZ?A*OuTR~xg)9(or1XR`4y(dkYJXxD%?WeC#U!S|KrmgM$^XJd>
zwV98Obbk8&z1&7gNoiGbIH<K@qOh!eEod_H^Ru&2yUW(f)%{51mA8wrE`MjTby?x#
zW17asmp@t*J?U8a737Q+)joUEyeHkcd-v+9P;Jkk?Rj^<+|J*hd1{L0uD{=IhlYeK
z>FMd=S{$vZsmaC5I~7#WX5HOYD!MJ)F8bm7+jH!i6TQ5;K$ZK;mzCFM<(SRRF^k^%
zMjn)(+D?9%xc2hRw`HPYVymLJ=M@zfUw(A7TlO`mUTJAzIeP4v*QBK6<gK~4&6X}(
zW_3#^W=B9>T^(q+W%1ef+XL?{tC0q|@&V7XzMNj1rS8-B@7D_|yJft&u@N)_I)DCr
zx!Ny*M~@wQbxM2v6ct_x1BbV_wq6Fcbv-AmX<AxFp11uz$E{cDsl-ev%c3Qq0SVi`
zUoP+Z|L^zKl#@cWACHQI3dFN_N<p@NowG7g+tf7l`<>$cNs}f$dH;UB-(0KAe}8`d
zIxPQB!E=^P<)$@ZtK0ZwR~<U!boA)amvhVS74Err^r$On5cDv={hAv$A}Xt^vwwVe
z2yT$%E?T@8Jc@i~hT$xu)UHE^4}ZN^{oe4cHORi@My5HS^##vk-#>h~aAolFtXEf7
zKF<*r6<u2S`PtlZYtW$0GT+&&LX<(uLtNMHP6MyIc*P8Boa0`H0g9IaY9$ZLLV8)-
z+D>8hS6$lcCahl%8oMw}IU(@&-rn6#v+Zhsok-dkQqd!0xyfmEOA8CHoJ~YrTpSl4
z-!;&1GiZD+cbZ=8s&%ouPo-@JtxK3?S-fm>IX|e>V@}Ju0V+h@dZm_{W?##Ac&JrN
zPw!d-BlDEmv!fT@ZRWRIv1EzL@#ITOJo`$QE?o*L%DcL{wq#w^Iy=kM+c^E)mCxtx
z-)9tmc;E=K88jklmVa-}#l`Ng8`<S9{Q3DgJ0~7oXy~j<EBp8PynT3uUGXy?R(AI6
z!)?5vMoaR}>C>k>IXj=<)k{fnYMIXtwkKlit66K$obmAtN=Qg(eY!dQd{{uh1gnx4
z3qU24zW(`*d0$^$1&vENIXTIke)Q<kl&Mpf%37CM-1_qV{{BN|j~_kSQuX!K=4*iw
z5i8cLS;GYiDux{r%ldNuf|m2VxVX6V>(%hp&h31CPeF@p7A;yNA||$MZS?k6Gt=i?
ze0O*E*RR*(q2;NrXW#RaCr>`loji5w(m#J{Dyyo(BFqaPx%kd7Sa|EZAOiyfue*~|
z)1^z7vexWhut34p&Fxx5{f-S$!rMU6^7i)j?5C%uicYf!HEZ8nm%Uj5%9io_>p-&(
zQQLA}PKi3!E4_SU@^Pzq>8YujN=k<`YZ)0B7X0&sb_oB!>(NR7{N>Z7bw4VY!gYhR
z4_#C4w^_8a_<7dPPfxk{`R(&>&$F%en)L1M?d8*SqqR&-LO^4&7t~Z$T_?$0uWW5=
zvzqpIAE>=6xj1T4%I2FXn{Te#V-M=A+_-e<(v<nrmnWXzvuuLLa~^>|amYQ(EWzNz
z(-I{>vv^<6n%~cOd1+}^U*En5*{CgJP)BF#tXZobJV@}o1Zf>FFME5-^46Kz=IalY
zffj1qxN#%v4ydGFuxP@GX<Yet@4Ycf5DHd5Az_*|#qQsaWKf&<)7P(|MMaw?O`be;
z{(OB;P!Ppcy;KF&r|o>Qm%iVxUtj%hr~BUO?_taR=Bjuyv+)G%E_++@{cd^o>1n#N
z?CbY|+OfS-rl$<8OpBg)$XXOQ_}l;8Qug-N((-$i?(sDrTaWcfCg0izs=HU*_u-Ac
zyv#Q^Eo~X7nYzq(ww2uc`hPoBPTsv6+byPhsezIC%C_8S+mA<tL5<|P9}n4&o5esH
z$vb!K&@eL#E5BPh9n{j^`{Pk}pBc2BytUw=Q|Y@qk?Z&W+Xb2yTUN`?z`*dpWZ8VT
z3OhkT!KiIHH(9p}i;9*W%WPWy`ttIAv)o%HfnPycz#;VNs^8$gvqP;TVs+f$FO?mq
z9=g`Z%)V+jAE?e*5xz=fTh!L9rLWiR_LHywvyqF7Yt?Qwu+-;OBHPUJ?yLaSk)Rrx
zm-i}Ycz12|_I10mK{3-{wc0CjwfA&AP}L_SEd2E#yS#>`rsv+OuR-m6vR{r#=fC*z
z@$uDIb&z>iG^d+5wyj>hI&bgSu(LCb-9ZDDpxmH7za~gfP;l4tdDT;<ObLlC1@%82
z<`#J-W`pJkUdR7m1zMT{8pH-I6Z!l5d-lUatzJGpSI(N>kAW$F6g5?R@5f`(vka5l
zK+O`zX114y`R%VPaBNQ5IxThkix(MZ=U4`xoo&AUTofn<7o1xWbYqrT?yPtF|JU8E
ze!n;C)|Qu%w^`WPU;q7nfB%w4AV)7)w<_qyt=;ACS#R&yy&F{Thu#D?`>s@m?n=u(
z)+0H~IQ^XD>E~x=E{@!s7F!eu(iLz$R5J&(Y{=2kF<pnBkMA028H%?aXw50Zt6f^H
zYg<}aT;1L0Z?w_U^5W#=oE{?r(s!jalq>q+!GpJUmA;ldy*=mVqGP?%@knO={dvCr
zT5`YbGSDKbrAwD;>FQpcr0V_U$K(Fjeb(<*ypw|XY~`h#7X7_nCV>X(>;C>ad39@!
zaM|wI?{|v%p~HQvB(~kTd-v<l=ks5KhBc<?MuS$6fd(S9v{vnU4T;{BUWu#kq)v}r
zc3N-unq65Svm2@wdnJO#H9*zUqodtZXU)>ueK#)g?<7_4RZA^EzF4t(mB==^`agxB
z@NQ=34{PU>P1zW+YPTL(_VOx`ZFaxk7=s#TQYIMzrPo20F?@BJx~#6eygYn$*xFUQ
z!DEvv%vXtQn^*CO6V#b)OAILocU}VYLtdI3nyMZCYI=O#MSuIhOTN9mefsR#wTFIz
zGICTG$hd}GtGp7m6%-t{-zoAgy$(uI3}4-*9=g^eX^cqvC1<CpOr0_Xv|#Yp{{O%2
zQ`6JECkY7)Pn|qD_+_ro9E-s4n8MbY+FDT=nKg>eZ5iL+-4(qhA|jG;Wkn!pxn)gF
zjY-LifTc^8gk(&fFk!*LX7<ykPkSFcc(Cf#%H<(JK|u@8URvsXb!&F`%^b6>Sy#P`
z)6cEB)dzB-gKCIoj;vixgsgQLC?&56T<rGp$H&K$mW0RGhWgw6Oj){pbIwg8(3k?K
zD|D!pJ2WO{4I?v~hPnCmi)m+O82)<LE^m^4PDVF+n@?wF=dQ2UqGexudwZK!d`J)#
z70tZ5Dik!BmUeE=%IEXz?_GQbT9{!|v0>frcUHOg_Czjr@4v>(Z?oX%=jY+6-$Bv)
zplMZ2@Z)!PcY{i5kPnl8>TbWYh+V#B!=>9le?FhDZ8P7pcv(|(^VY<}Y+v8qjh;Dk
zW)*Vp?UY|)PiN=FS*F<~Pp5`w9c*F+Egu!rjao8cf<WoZORk`F37V$umA8+3_wL;+
zyV_l#R`jpe>%Au>B_(Ysdg|pn&nB|4urRa|+!}tcXO+pOtw~3@Y`@<rE-EiyzhO`1
z=Vw-BZz864pFDGBiV7<mo7W^zKlah1q_6Mq-@mvl_x3i>p!ln+t5rQ$hp!Ji-X|+6
zB=jglSX_Mhnl(CaZ)`k#@!9v=8u`KddM}HLiD_wTuRa8d6b3!FsfVWB%?r=Wd?|Ul
zU(Qx5KK{OzXwvrErd3}uVr#!%eRW}BvkIu|@$TI_E)I?r7tB;tTuz=m*=M$&KkDi0
z)7R&&_YDi1_UZHI^D9!3`*mCVLCIfgomT5wMrO7bXU*@I*ldr`Id$^nMQ;5)3mlu-
zLRU@*T<n(l``g=Jphd7>e!ViuyJL}>mS!dA-X~+YTLol5sn67PH>>`By$%{0EPH!v
z<$?tcpa#;ncXwAWSfEh*>*aFsy?a6H=0JUxPft&a%E`Tpkdu;HwP=x2YD!9o#9c2>
z&%lg~6^qaADt)b$v%Y5Aq5In{YuOG@nIiJ@=g*U%(ZDKj|L?Zzdr*zYFlF_n6JZq<
zJGSNAT$Db)HZ1vA&qdG-324lAwpngaK|#UN?a2~ta+Oa6Yd@bgkJ^;dxoGiX?KSVO
zt(|@6&Ydk4ACr!6y1TnvTT#(*<Hn7XmVo--x3~GOT)DE(j9Xl9%KZ8BZ*9$fp7Hs2
z?v(AC_d!eX8A7&e_2zg^TD^MpyIrr>dB3W;vLf);lga*H?v~#_dHwqJ!rrO-_wTo{
zwZ-3U3@P(UhBZGfE%Eg7^Sf4j-gbH5VmC{-<)A_0?f2`VLCp_PJpfv#1ZsZN{rPy@
zdljhj%W!U~SK{l#{Ps5Qe^tNRxjg9hOtaisDl7fx+lfv)Kf}-&v=CYaw4h^C)LKyU
zgNvIR6gB1dDvw{hMt0Y6<)_+hb?bNRh^VZrEGjRbK7D%lQcxpLJm)dqzNA(tXsCrD
zW|da#=F(43PIC3nnIrS|-rnfFRbN+KVvz(Tp@91#nmKcQUte4M^_2GdIfk#mi~M;5
zx3=o8%(>Ka<j9d%cfe`wif8DqwAY}O79Z{y@TjV)zI?m=K4|%UtZpl)v~Y+GTe`tC
z<-`Q8^SWZ)ptath8Dh}N?!H|hix&8;4!W`F_S>tm;AC_~`)bu$aLK;FXR6ya&^oo3
z+w%8(bPENmZm?SGm6&~bneVMFnUlM^yRR<umG-<e&$jx>qeq~%n^w0Xb*8;qDFib4
z)eNoHwbJ=}0{89P2P)#EOtVy0zHvML{cidEbvvI)*?v4Cd^HN<2~&_KK<ny{bPCHl
zdQXxv%~~=&zHa7C4zM3Wd7>jDBdzNG{E$4|FK@r@&6_vKHFb2}PFIkr`~LmPmbI-4
zaqpMA8XjM}R8ZON#kJ`CweR3nu4(k;<^I<v``fLwe!nO9=+UF8(nY0LI|P-#+{#`b
zn%xL;cYt`PW)5gE`rPt+7qi#zUH13)ckfA2+j2DX^WSIbg4<-TR(bDQSr`;FY0{)g
zS9X<VS5{Y_Ht2b^3S1bz+M?CER#@F{Mg0D{U2is>Hp#f4psK3sImxX@;^3C|AUhUl
z&2zIzJ0r1k=T1#UMMpzJ!@j56@7L`<)+c-V3rIx+=cC7uv)8O&0P6^q22MQ$T3G>F
zkKNkd9v*RTS82AaUCoXtE>NKuU>W%`b$jZr*Xwp?t?~EQ*MHm9uU;_Med?jGyu5XL
z_Ut(qF>l^Hz1e5WPP&4Ebj6-Ob96i}J=p&zHrJ}OxT;>0^S9~mtIMZMo91@Is$Z*h
zEoeuBeBF<Qpnikrq@zg_Av-uq?v`GM29(zF!iXt{qPLsx=9v?;bc1Q;C6%wQulv8g
zzCJuKaN@kWUzwmKZZBWH{Pp#E{Oa9qAdjyoUS%Sk*v==rCH=hI*H>4)&F|N2E-Eet
zja_D4Ugn#1b5m;Rbq<iy(sQo;Iilj?*$)mhf@+|D|Gw|HUJPyb>Q$wjK6}<TdV5}}
z8+a5vARpA^*!^yo_xt_->q@UTRjoUcH$71zZ92%iS30zOCj<rsE#kNP;m|Fn3mSWS
z^7d_P;$Kh#)jhf}&->Jw>kGHoEPX1XrMo;Jl2vun&M46rZ`V2Gm$&|?T9F$ZzjJ4Z
z=4Vh?Z@uN(x|W%pZ$;(jXP`AxyUN~bdEVNb?%!%A*1h!CD(AUVX2mWD{q6taL+2jj
zYogO`Oq~+BV96P#w*k|_<SiDi3uJtCMaSXYx)xAt>x#U%=(ecsd25#}Q30(+nY83~
z{{Gnfy<ev}IXTS<l6f`l&LJV)+r=@}!Nn?`Vcl1>Zn*pYwH1Bxc%56^yHna)S5NLy
zntMX?(z_`+sn5h;U$0f)^0A<8UDnkI*+YMP?}3u!f~uI18&-d-X3wwt<+*d`&Z|)Z
zua*g0w*JcVUbKnZOT{zSskSt=WC7EjJK9@5Z`--5bG<Lu#3~o|tn#95*JQoI)9N;g
z9bc|xx;kL31b8mhHehM?wo`^T8C5hDZT;=@e1ig4#xlm`NnKf(8M$B=gZOIKw}<{*
zF}o7}nt%S4SIp{L-bO5&l(TMAmEj>)28M=RZx<b!b~MTI@hqKn7qf1ZsikHX)^xpT
z6M6Q2p|n-|$;)S-F4~s3HR_78Re<BZceD1}x@NWpU9MKs*4%x>GZYjJ=gKcG7ra;f
ze($E6r`&Y8xVTJ;o}4gFQ~vYo_4?K8ovuW&_dU;ecuvIgQmUfeFK3^Q82!YwgJO<$
zyZ&;O*KYndq3BQZ*GHd9zP^ZxSQ%)<z`(Fz+s+jmOly98;5z?)*Xwmzx@@J#KfZDL
zyGJ>4(iOWi{(o<=g`d_)U$A}mI$q6d+pRB6T@-NFym+o%wMLlTHgBuPq6`cSD+<NG
za+V$IkvzAGxzr;sv9s>RtQC)foFDeul*Z0}#ToU~CT7W%^ZyslIDYT?x8z8vpBLF`
z3*L+R@bWV-G+4Fzuiv4ey0q-?4qeZitg2ieN-jU>^L?7M_TTGoUPhC?+%fHa^7P%J
zslP9M*}i_eks>I1Ux^$N(>rylHq+~r&V;j9SIxF+KlxZm{qPQnwM=)v)|Z!0?!LNc
zy}8`w>C$~xYxO}s-36NEKF+OktH>mHlF0_=6;hSE;~$7le>dxzugN$5>7J9~e$=&p
zlRsZrH6JuWR;rM*Fi0oQEZ0MS_mTC^Gv?1S|F-Xd_NwzIvZG(En$|ltJY>~zySqyc
zO}ZrY8Z<hwLhF#2mg<7<1y83%JV`DNU4PBd^w#$7tBX!<FAr4KH-GDK=F*b+<<~R*
zgNzRq*jC_Z-6wu({cqn%Oa2)i+_cl`z17-c&X1ojWY@pZ@vN$U>bUks^`2wdprS#K
zEs^_qXh6)W@;dF^eyewuuUwS%;mg6xU-QKmRVOW0@vQ%!wwtTVa;^Xa1H)GFMDFLN
z#a9(opH5k&^1H>#)X4shjqQfDPJeBtOqjQP<^DIuyJbM53UfH3EtY?|qvRVKB$i<`
z?fj%@U5luioOM$5!PcIazNG%%s&9JxNf&4UVe@KM`T2p-zL8tpZ?>v-@fC!=`xbvj
z@3`W++7-XH@rD(yT)4k}^W538%nS?*!jy6zuK6Z^{^FahoRgMRTmSZ4W!nhaJ9WtS
z?bC;8S8p}H{FU|CaI-h44|LAq#-T{xIorKe%bfq-Vq2ZuarRBoIRU{JOE3OComci}
zedWhfS{i0Ml|a#`bV%&nhN}OZx?TPgyRR-PY)(3(_k51qm#(mGwR>LYbuWEc`unUN
zsAgYr;L3)rH9w2)Ry^+I;^v-wH0dI!QI+_2@ArG!-A98S8Wub_z?FOH@@3PU8wNjr
z{?t@Za8P#Z3GnmtYc-4Bo_E#sdW<qZKfkMsOU9)op6BjuwK{FU^S9dZrf>8AJIYRL
zn`(X5y|{BHX3ekL2ewT*^=|Lf858r1Tp1V`4*Z`XwXLYQ`0CE$bl<sFU+3hq@yUP(
zR3C#D>20XHu^|yOp$;0}+6ftr1Fg7`dA)hlCeX??S6A1}!)?4(Z?|3tO(%ht1p3`x
zzbohKKjB*iKbG8yU0by#KYR1(oeS)@a0m83Yt+)&`1&hr^%=0w3kpm(e+Dg{yB=Tv
zxAOLl9JAK8wt1zoH8p$c{{2k<`|WoAt9yHQtGu-T|FfTsS854p7a<on_vJS?H-qM6
zKvl-Ocki<9@7oI+(lx(VvDiuD_ufN?oJ7UMz+;V}h5WDQ{hu@I)!#mCC6PDJ6N^m6
z(>6wYdGkPmcjm9v`|g#5C|9|zj-4_8W-6#Qde*k~RK%{5l}*jfS62ioe|>v99JIkr
z$~;fU6SOjriHS+Z(R&hTQR?cetF~ree>E*S@8YYgtFP`Z&)>OwxAm<fM~}X|8XkZ3
z<Ye`$D*_iA|C(b_xJb=s#)Cg|SEpW+_qzUyS^degq>CrAqi4nTJ$n3D`|h__9Q=Q)
zmN-1Ni(f6iF1O}lEoh0kk<q6`@u2iE$9pYbG-#>h+U@sNy?BuUS}bth?)RE?`~Ov~
zjoTZgr>E!T=NDE`P|$jP$F5yk1_l8qPoA8#<jIp1S9kaD3}GRmM-k=QHkjt!vFMex
zzV^{ZTiaVuQ1I&B>aFLZm%DBKcSAQOk#XL#s}rZz#Y`%>9$Oyz%XHm8MXu_CUE7v;
zg!9)ru(q4UhRjD^va@yN)kM&!NkPs1jmhqyZKJx;+pd7R>+9p~mw(L$jlf>r_wwA_
z%+C{fbnh3(=!JF5?b|kW<<=+9r_9}E`9r@xe74_Rt-rf;)z{vduDf+_b<;X-&51{Y
zc3xkq^5*)R@cBVeQBvS3oU6;i+SgtNEzopybiB1afBvtpuR$BvmM&WsmJu8jwCKy1
zlH;Xu3l}c*^7LGJVcDObJJ+#hcifBH6h6shiMO$<**Bw|vy6HVFA}-8t9I#ab1j{V
z3q#vWHl0{C>A<rtzE5RIpee2cKd-L*odas7s{73exV+3))pO&<ji4p2ZM@Plxzlta
zm3H4<H_x`(>XuIYzL=v&|L=bJ_E0PL)n&f3H_vmrA@J7g+@(c7LLzl8t$2NAf7t3(
zdve#k5_zZZ8CCqCh3BvVsAOn3by`>F;zQw`Rx_rpW<FlL<$pzA&}Ocb=f=KsQ(v73
z^YiQb_V)Jkin<RE96_TDjg5_<op&vq!l1E|*0#2+|Ns7iRz`qkDvusL>Iv%hn-n~7
z0Il-@HO4?&5l<-hzv#1m7Z4FKL*?Z;>-Sec+LMlO*nU1^3~CoG^O?Em<Ye{Po6c{&
z$ga)rHEG>@fmLF@S?_DNYAucqQO>oVw(`mwCt07<Yd`;HW?*=wf7qbphs!*^xhJkp
zocz=4yslNY_3YK5XPIn7@0|$Fo&D?N<+DrMv|U4IN^QHgK7Re{b-T}f+*1?O_3&_e
z_N^_Mw|14T2JH;&>EUT@ZOuH;z*zNi>2$3afAB8CPbZXLU0**RI(xYNUe)Q1_wL`1
z=N8ksup)3Vc*!#>>&u_d=i5Ku@}Ac>%5UMmyK^)=r7mj!Vp^MRuU{Ts%Ef=7?XddR
zZwb2=HSbAX`Q|8SYqseD1D?0m^A>Mqzg()cJm~<}m$K=zyIsYm*4BBR*9}VSjAg%6
zRH~pGp3S#pwRcLxE;qIl&%9o&dh5d*UHj{c<@=R!pP!%K|G<oinHe;}K4-h{a=*D-
zl8$zDuUoG;W3QT{t7=&(-}mtACw>)1rEWjrcB{(7dF9Pks|nLqPwUBJWN3(b^r16m
z?TzWrI3nNag>B{h8tSrO`621bxrSM(+oi4M1+Q4F{&}mmrFW*KYgD;GY;<4B3ir<r
zv2v0J<fmnCv@&&MTNR$@xzaAGIAT&s{rVSGpZTv|zUw;oF!PpwA3WFEPFN=fvWQ{w
z)EjT3w*GH1Q%&*E;*N|}Vk)UjX|Oq09JSzTR$#~ccBel!S4@o@eg_qAdFHU|(&w%%
zN%6D#=9~$RsaC69y_O@I_XdCTq$$&aR|MGe^S-)q<xSD5(CaJQZWWn0A1~%Aec>W!
zEX>5faCy!d-An$~lS*xN2TZ!MapwMYSvP;|QGA`FBi0?&{$o|@hW;{{)0Z~wJzo04
zWu9H^^aWy{3fx}qaA{e~cFKTfZ+%u$PxZR4NwdA@&YJP5$>wg%m6eeVW-4>8<hNhC
zx@V*K;%Ekj1;<pMMt`}T&#9$n`s88SRrw?*y-Fti)khcgJ^aV@_4|eX+moiuj9;VM
zH7R`d>eVZ=LZ<)v$|*f{+cSq<k0x&dX_;&L>UnRCem~EI?yHNIoMBQ;6PXdq$H0)0
zuqSEV)mM+#Y3Z4Y+&d9`xXLB;wa-c4n%rNXMFqR~K21|x-IP}qm8sfOa8<2kEnC*H
z^{I=aoOicrA2@yYN!Fahx1X(=v25R@CHMK3&yL|`V94;OyES|D0_ph^6uWP={K)c{
zp7!bEihq+&<>cw@+87*c8rY^2CjM3@YYB6v<<)!qtJ*ePWl&9hmi=*Ei07pbt7pxQ
z?wMTL&o#yM(nH}&ud`_-+zbpB_pii%d%1u1rj(5lS1&CODSYevB&qb?Qy#Hy*Xf#`
zJFTamoZ$L-o7(FSoiWS5wx3eYF?E>#zszN6nX~O8=F-TH^*5hdOx?eHcC!3+d8^DK
zQwD|w`+irPP26i%zg<N$`DspRUPzSk_1<WerGJ04HN|`i&61e4+w`QNBKsNV8(9fn
zUT=Tp+!ge^v|--Y&rxeHm*&Tn{ok;6rKQ!(@^99gnHd;jR?Xk8{!;#a?sS#EE9dqb
z)&C7KwX&bSH^lIrx~S-jr9!(G?u-@=4Ty<qW_?i7vX(9F<GK*lbWx29w_};DO?s-0
zSbpA+3ErP?bLNE@1H+2CY`!@clIQ16OZ2FJC%E$V?eP0965@xmCbE@rfPAuv%j?VM
zZz(r<4^N45xRF(mw%&Jw%H3<WF=p4hcW-x&y{5Y=r$pP%GP=@LRV^G;Y)#&)d9&)n
z;jda+8?zmD3+%O7(!6r}oR0;?7eOuetgSB!s^(pjOIT#ESzw#ggcjk-sD00OsANX;
zYfN6fGBWX>9M{LqE3f2byuRqO`7|Q~!&jHIx{Y$bGMYDWdzH9;cB^`Qe!6w3QO~KY
zN7=#qXC!!D+U5Mxs$h;J*I9=fSq^rQ;byC@{@$e4mGdUG$kg<7(#93pDK}qSyS8|y
zmgd&kF@g*XD_*}Tb56Fuzot2JXO`H5l`qRnC$~qxwJctdyJG&X7Iu$GVn>%3mGyIS
zMDw~Ndaiu7CO<+rdCs~}Vfmj`JGA!i2-!VpGq@pnr7&Oj=IW!ngPy+2y831Ju9X}6
z&%T*-uAubwv8*?5*Zp}Eq<gpa&YL1BnL}aB8w=9A{GNzu9y!0PF1Put-f@wz)vmEh
zOe&tUg^W@PHfk_1tXOpPqh?j{#W>GP_U$DB#|!EwYg<`|uMTCt)p{aHbN0+if3Et1
zb)GG2*&cO&byxM=UfMljwfEt_8@Ka+p1iv|^kt>1Rf*F1H$@B#4zg2bOk8g`KYyCa
z-P+VCd9URX^Blzm-aKEZy@*NG)4N>$dC4KED+TtY<_evXKchBo&$;nq+q;Kq;mLZl
zS9e>Pe4eb5>y;o?!N5>Z==HYEt$tr*B&+HxnRn~!?_4<dW|G!Y_mTxoHK+X4|D;|o
zJojOxV#`{#2djDAQzb4<)nyXBdgJz+BA@G)N)BS(B~Mc9%EQ<h7{pU=U8)6@y7%7c
z%_=(nw5WWowEXheHDbIO;##X+Z<X7)vtKSctGCi|g|s{Ssxx`!UyinI>NNZpa=Lv-
zcGvv&*-`A%?`9MzgNv+5W~y_pJPE#@xwoR2-IRY-bp4UMN7=<^&h4qmm)dN6o#9ZJ
z?e=F6IAuN0PhWpF^m=(lR+;5ix1aj6Y&CD5dcGx<fuVr$ChO6vKby~LZI#}&v3N$_
z+goSeOj`A%>sjNcjXSlB_eV$z8=cWxeor~)YH_ijZ%<+Jbc4!W*XRAVo1uH;ymKO>
z+$QNu|77loGcXj?{r_Va$N91nl&Yq;mrOXC^sl#j^`X00SH-PuQt{j`>lI$+xbdXu
z)%=#VRXWD|BR+3a^?W39XtSpLU8@PXQ;(iK{3MHk!6A2R&iTUHZ_zhXCG-ER-2BJ(
zuFtv`mtw>oEly*cr?pW!YNPqtH$|^Z4~5x&J3P%rblQ#5$c}!i>zAtSXRLIcu>Fti
z-H@D!Czm(wzxkAbp&?3R^@51{-&w0wUfx?hYjt|}F}3iLmpWqI>-Mhc)Y01g{o2Hm
zy!OXBEo-ZC&i(rD+Y=bxzH9Euq>V2=onY{sl>dEpXjVE`2m?dF#r<_X;X!GQi=?Vw
zzHH1rqqqE)$;YiLlQ(a&Kc;{GbjXKuPB&I9|F$$O`}9Shol&|{MU{8=G;CJelKo1(
ze6`|sH{Y+(NsSOkJ^8+z-%sk6XWYAWYT+S!*X7)dc&8V(^r=XuzgOSQr&qjN)>ge*
z-FsZcv-Xxr;Dr9OPqMP~&Ba$o{g~og{p+vXJ99<`hEq>Ore(y~TGxIknU|;cN-VUD
z_xCGib&J!-IXR-g2CTe$Vf*Y;hpw%SJ?y(~*|+S6(OQeQMC`uQwe_h-8^jq8?td=V
zHr(tmvGMEcF9$Ej%1J8dmy4%96VI+rT6Xj473-F@RT*FZ34?|c=C`l@b(Cdxtl!$_
zFO{AiTR%Z%@BU8<PF`hTVA!1NWwA1HHNWSif0f?tRpq}Pyx+Mq;;OP$z@#nj5_WZY
z?YLN2s+4opIX>5>G=J^6#7#Sk_*b4f@#}50=cPTlo?fTUm~WS0U`UwtC}{Vw+P%JQ
zig&9jjbktG>b$9H8QX49|Fe3R=K2*Ovn@|Aj}qMWYUZ3nLVx$zMou!>BE4K7EUfSq
z<JSB~>x6bM<PVoO1NGq(CjDP$u^{&3&8#O+mp#wRNH4QAJ#;iH@XgBXOJ*{5EB`zS
znykIbo+J9}8UNdpro_jrdZCaXD<_yxW?6cwcY3AwB)iDj3-&A$n!K8kfx+}`K-9Wr
zI=8eve;wz2EArxPUXiQm^GyQsrXM%1TybTcFQ@uhz2)~5a;_T3&!5#=ka0cjPV{S~
z((J6@kYxSTXX4gr#ViaAyv>OczmAvR4vk2<Zo0O)#G83{Y2VSL!1H3M*Yk2MC#__1
z+rEl5akZRfm688y{y7s=-mMK~)eGx>w|mu2mCR$Onl~B$)ns7cJ?4LV^46sMS)dN@
z%V&JNpZc%qHti98@;J_H*U_!fSDQA3_SbB;44hPw+U?M4{>f<PtX(hr?<zmZF235h
zB}Vt|<g7AF28IP}PsFCZI4WP}HOVdRcF@`8J-+Ks$cS|xH8g(sOj%MZrR4P_!ELWN
z4;y^({keCmUV2i`s!tntzUq?`oHT<?j-jFL(b}WcQ|E*(=y34=yVc)&^J&A-)oOO2
z@_&(#wXtv*^Pw=?jmn1Jzk`aOyvw?Jpl@N?^x);Z`&aE;Blhxot-8qkDXAcr9O(SE
zB*psQ0jr10zI`glzOnu6&%ZCOEmM}%(n&0N9VD>rRcF3`Z`NN$HJ3WMJhkxP?XBjY
zE`61q<u%DJp@f^Ep$aqv@%Z*zt&P&ZoOcU+&6Q3n^W5sRIzgVbYUk<=N7m`O8=ci#
z?x&n{m3e8I^Zi`S-ErNWhO3VM-MdJ2YAk!X&F%}J;-|qF6mHr4%T6CYyGlGSN8<aH
zRXnSYF4A5k?Wwi9Z1s*Sc}1?J;)$!}BDUK59^cF@`rzrZZ2i^$%PrS)-d!ZM(%Yq>
z%j@m03SM(dHiiZJPHJgfJ8gf=dy?GS+p|s{^(&6tu>Oxt%+&apRdYLI!U98E)>bX3
zN$QcdGM&0x+y2rkqeoX>Tsxl4SG=B+f#KCmbFnvpQGN@fSSnvPW-mIcxBS}1DBV|L
zp=P_bDn4A|wNuq^>W7ni`c7+WUHtR*<fJPP^7cK?xn9l@I%9vk-xINyzk@HoVrFRA
zmG7Rk%r2(ZW73yLXJu20b8k#en&Z8DS>30S;=nS;&Tq@oX2<%?b-A(XvDiDGz`Vef
zN=&v_O*c)v`SgnRI=wJn`_jpe`Ri;o4nNShVqmyZT2_5?iA0&R)SZ<ptG4nP?Oqaf
z`s&eDdV-9TmhiUwe~Mhe#SvW^^HZl~dr9Ush4&@za>~DSOqssByG%7b`|3a8wCT(Y
z40;!*OZR0ZJGJe(8~dgIpift!;@m@jpFT?pjPjevH~)n3?m1S+ufAalD9yBNjoN4K
zJE_EYxqwyc{^hgtUW=`ZT+RRb?^O2EQtf}gSQ#8*r%afzp!s;v*H7n<t9sV=d<=T@
zZ*I}GR;G_1Kl<G&I{T@hIIunK->oSV7JhB_UsX9_`%TrWnk{Rsa^6jInR<&C)U!IR
zW|uZSIR9>W=@z?~;t21urCI+!%G}FlV0bm7rG;f{Z|B74SHGXw{+d_IsxCtR-q#s%
zTdeDu*36kBv;6zRoayc?8K)=m$eunC9+b9k*01VWu|abkZ>&1J@8+4kTeF-#E98I8
zmR{ugQFGSE*N%H_mMp%h%E-{rJz?6kWkL6seR^vZG3m<w+8ML{r1u5??up;-V}Ewm
zqNXOM<==vZYi#daQM(fU(eozA3(I6Vqo=ywShbi>=KRHJ%92GJqe`5Y8*Dzk^1IuY
zu4{{ah}3R<IAfm71vkdHcWKjE7#Orp=1FkLeAuAUeXHfyt54q+`n@++P27L^_X^MH
z?j}JsLEFB`o(~Lj+<5cp6-l27f$p`{Ss|}yU31KOlx@6o*01-c#2ULYUoHRhD5!Rm
z-a$}1>ws%SkwN^n4cm&gO6+QTy?*tQ&h@?zdu>uBE=^OGOq(8@K0|8TH2wH>pvjfQ
z#KcVzI={Z%&evXJ&f|RE{{Nm?X1QAa{{COz-;b~U{%-9BHCx-*!)?5i=g*(d#KdHh
zbfm-hT<=}bDN;M1Nr4VsP*QT5tma$vZJp)RM2Y{iTPFl_WVakmD!lXL$KlZS(3mW9
z(4a?vq-3S*uZ-+zDl6yKuiTS6=SFDgbayt7N!!%ZR<`szO-;(Waq8^ZP|(ie(pOhD
zubXd@Iq6>2YhBPr=<Mt3K)W;^J$j@y=eJeP4Fk~J73kQVJ3EU(<EG%<G+!elBSG6r
z7A;z|CGjxZ-fy?ErR?kWfVOEbe?Nb7j?akzr>c2-?!<m+FH=mLemUXJjh!oJ{kSz{
zPUwQ2(K}BXGBA`L%>G=iz57JK#gEQeFTI_1h+OR53o1<(3GL>4TGSMiI^&mKZ2jM_
zRX?9jFFmchea^;n20VLzKAT<jZs+ro&u7h72QT;g_2Dr8)EP5gNHBKy_g_D6|9=f=
z_q=WOw~+O5d%w*8|HmD)r%6cov>ng+dA8B6uCBixH1l8CS6dA_6szjZ#^a!sUss;2
z3tRmuaBbsT=ciB4#iwU=oxSS%ecrB<AOGuGAL#wdz_8-!Ho3C}bN<cWmoRJ1ok?FN
zMd*kf_wD<hy4&Ls@7@Vf(w_WsHY=VyNdc|t*m&mt{dn8zZ&%=JIvgAtc9p+>mvMQ2
zeSPHGu(h$fuU%YL{{CK3`TzSZY=wn|xAs<V_nT)^d2JszH}}-3Q$rsHMvF|pCA(Pb
zj8nwtcdsO$?l}3eEBLzwGXulc{=0cE<nO<okmzyUt#Z|e7krz&SBc*;{W|&V)m3+d
zx^1Fk6U!{O#;xUz29Hcmn9#NSWNS-{#WhuRb!`ia9fzvI!^2tG*upZ3x8?rX*MAwb
z{OjMpe|_#QE=QKW4=|0~_k4%nGtt$Z>wUww=H!%F^7ieYK09y!qBj*k_CNiaJx!5;
z;nigQYx1C+2dWX@`RxOh8#{JJTwOSGzskw=zXgiBS2Abi-Y~knqww*RnKNHj$XFH~
zc{54o+ma_Ij%Ho-oqPDnt3&<gd6cVMPan;?xc;|a#_x@ge&2G-nbAwa>+h+0N_}oW
zE%M@JQjzOd@8<>ektrvXS54-dmm>A!^UAIBuQ@xPepf#Mw5_Dl%d0CnHX~z2P;jvJ
z8huU8z^baMR<rcm$KL<8n0q#D^8ESnt?s!W3+7LY`kiC{cWF8IX79`mhombr3yv?F
zw4{8xya8wrXu+=QVsEaU+>^AG_v_UUH#9b%URe$*c+RZO*)&o9+ml%_zHh^_4~LbM
zY;kgS-U?nT0y<1Ac6S(Ttw?H0O2*+f-aa$$X*v_{=7pc1XDgcvDg+)q`oHvDE4TP6
z-`QqaS5^e_zV-de^=YH#jq``!7)fnu_iMc?zg_jEN7Xz~tFoaex-aF$<>1Lldn$_A
z&#@Fuy0$#6ET&Q=eq|)9c*fm=nO0L{u?$~=))KwAxcKX*)B2!u0zi9B?Eih_2aN-s
zn4mam$&48iyfPL6pc818`OjbX=uwjGrxVJ%9`{*`h>59rf;QxVw(Isv7&?J=<88~o
zzfLoFS;nU)C)3^(Z3QhMj*2?#b3s5}K3@6n6;;_;KUasZR#<yy`m*oga#w!LzBM~m
zh=GAOZspwz_WN$@9iEW4chAf!7xr1PL3>3rj6(`amfIY<{c^Es``054W@*zyw2=of
zYu?=0IB5xJ81vbgnV@mksk3LVZkMa_kd%~sb#?W0&_qRL#h?6;^lxu&f{rA(vOeBE
za%~u|tW^kTsyKP?{{8zwrze269z}1@<Kp7F^!dDf{KL4IQeP*hrd!93XxOh$a}V*`
zA6er3eR_6u#?yT!wf}Al+TPkeRqFSRGkTm14Qy{e-|qtrL;SoI^L4vpE~s&PI`02m
zn?tuVzujW#-L-D2&7B=)?@E@nt+lKDHRpSrt5~<I{=OfJ;%Yt~E#Ah-!*fM_eofK6
zI;+xGOGLH9LUx|JrKYRv`?IoA>f4!YuFjm7U;aJ1u6x;k^Rkc~GfkGnt!=upaOV7N
z@~1DI32pz;&Bwr?2AZ~7^7H>}5#<}xz4hkk=AX|p{aAGI;~k~i-7jandm)%v=DC%x
z{K(qFPD;^Qd$xY|kN5UW==!{QV}y>>)#X#==IsqM4wt>;yf^y9^}}c1Y+_)@m=HI6
zzqjOawWB-QJq@$k60a|~7B_3FYP9^Hs(|hBf{NX((z5^M!g-jcE3B(s5oPu<tjw`9
zZN0Ans8b=eq?c3u>&^Vs?XMDpdS+d<zvX@Jo!+g<lNO6sXQ$aU?rKpM+`$sI+Lix%
zrmAOE{!vF!k?FHQ!!Equg)3tp@4KaTctTqlZ+cLV)U&sFS99+wt9TmM*=7`(Zskwp
z-r-_i&KbO!!GGyfk*ssSZWS}<Ffd3pl~0$y@NP;DYt`=8@0*j)=q-2L^?lW|O%Y4t
z%jB;&KK5Dht-3|`fzZyK5nrcgpMJOdYyD~d72tL%1A_?<`{g3j)Q_M+mAsC?1>1L@
z6gBlZ+q~!McHa#uFAraB_g%NFOfiS?>I46~$|6r5uUoAC`Rm<hE}-$J1^0}3oa_Im
z&F=Dgvuj!Dgtn5*v@%cLTYJOJr>mTetapiIJ^D;6xLaUbL)L?b&la(-*Ob0nRedsU
zs=+Q+hKAtUtsiHEy|q{5H(&kFa*6Wh2Q$}%uU6Q~_bo6laOJZ#_Mq_ywnXj~YURh>
zG%wtaZTEX(2+}CL^r^_Jr}E`qlia@V_nFwc*Jm9Es8h1bH2bRJ)LZ9k_3yT|Y+wx$
z)-Mk~{^DA_#9bza1DSF2b_YvV9tE{f1otjFtH-|lPEn=t&&nNIinjjy-*}nso)gu$
zfi+}tb<*N1Cr<me`#pL2TNgB#9dLKrTg!F%=IW=CCdTdDy7<nH<zZ_dK7F^!{(Hw1
zm9r5?O+E-Ea<2%xXBKXIV|PtSwmfJ6CS>uRMM8i7&d!~5YMJzV8Nq}+M~lOEHwJEs
zS`z<#?uB<xayFkfluhJbk@o$FS-7&kxvbCWtNhWDcbOO#?DC1+67KH*Y;|PA@_8~B
zj=d==5PR6W$7Dh53YE-ftDK*S1#^Q!^;vT9Rp#aE?p9@gw0pOkmBGREMx9RZ`?WgO
zrf-)jzI~coY`Rlv&gt6aYNvjrT@FlrB04j==OjmTgD}tjRXdsX-YqrI4Uf-F_!Z2+
zpy!(CxpLl|&8|z!oSUspL+@`>Oq<^F`GuhDiZb87Aptqpm%r|t5!<&Cr2WT@n6KCE
zbX7fr#omWH7Op%g%E%B<{x|)j-CM77VafUBdn<ygH=jPp`ln9nM}L@n)`jaEgtsxM
z?|gkqqxEOChUR7m`Sq4Lpsw8&&*=WNj9Z)jPFga(y(A!6e)dVxg+_U=WR@Mf_s;8#
z&V{DAnrYLMr4ETbP?5{itJ+ha?Rn`+{5Q?r3vPg>*jGf?)&F|HJ9pNrUwyu3^*E<K
zdH8IRb@jYiZ2zveS@YT?au+OG7<>5YqR#Dp&qQDE73KXd&db0M`tjMKy`ZeAAYTp|
zA=`ZVpzE&Jr!;m(>Hd0q!86x>T4tH$GKCyQzbCJft_s&{%%1gauPFPJdAB#DKVf88
zu&K^^%DVr>bL?&eHr{)u7T(e=`sn#W$K`Iy>3^zD+)46ry1_K(%`d)%uP&VN-|4!v
zD*Iy`IMZA^t*3Eq#(DG8c~j=98f|c1aZ`0+*Qw=={}a6z^`(o?itgd$h;Eo1xmL`!
zy0%B<<zv(Kt^X_fz#+W5_kZ2;zIkWDE0q0v_ph9L^XUVj7`dAsbCsDwLb9%_XA7Uv
zTYgM%TZ2?V=xT+p+0tu-b}#JwTs9Ll)3EhgfAr)pSC1{;6t(2!_VS7A+h^ZYeJFId
zKC9&Q<E`zXA(u8RYgEr+G)=j)Kw@WvZj{LUMWMehgXYE?qSP%nJDjiE>^tepb-T4C
zuAdzyYde+h*ykL~`ukRi&F+BD+f--9`t>U1Fq$q2-O&He%9Qoh>Eg$sS>`_LI2amk
zEnaeE-Eq6yOV0dBD$RNJen&0WE4%XW)$ev0c?I1x`OtQ;z>XQ@?k^SpPd|D6aMfJT
z$X`{D10f++k$uu`t@RAO{BrTVU!R|T`s~p0E5Dwcn>Vqjd}G$>i$1wNCk%Gakvbg6
zb7g@;emSV7QhB-c=kBS&5lNtR1vB!m{xkWT?s>Ck@Bdv}7cT;hV{ly6J#l>5>|HIM
zlhW2%rQ{i!c5Gn1vf*L4Y53=3ab9Qju1s--tP2PR6}Ml~XQxVBdV5#7q<DH-+H@B6
zo!?hIo3v#9HdReS<@<M%vN#gCS0tK+i}&tdxmV?7b3A`$dC@jdq$TtP?OwPsJ|{4%
zY+)4pZ;OBRE`P5qoVmZsjeXUTyo@kr$-7E9jA}0~t3?#Pbq>ig|I+_{oB0ZES4IX6
z^VE-Vpvh{vys*8s>EV^TcF%|vn)Bvhc9h2?yU6Jm6!exW<S?rJJkI+TG{>~7`Q@*?
z;zgjbyMV=F$CtlYdo=ZWrthAui*L33niV6M<#d1B!7RZiYu_{p)qcD!xcPLU)giHj
zNgv$es<!0c+_Fvozr^}AO-YlrnHUzN$#|W<`r^E~_oTMtZZD^uK73Y}!}M6z)))Wc
zE>2p)UuPTfKEKuZ29wX11Ev>2hHjbTwD;TRJW!M!c=@Tz%jDBz-cx!Sf!kNO{rdf&
zENyy=l-ZW-9a5D$U%oh5bN2qkoH9#4*BeYeDaEB1Pdi(AOajd+X7kShPfX7_o@f5$
z%AB>grp{Tbw$E&@@tW0lVt-oPx=^uew?$sjpZlWhKI@L{wAjTsIrgfSM|q5(qUW#M
z*Kdae#AJcu+~WA`?(eUT=Xw?uZ+tN~F;?`^^TaYwgOhhR27*#euv43vj9q4#rJwT+
zrmV(v_Tw5y&M#}u+&OE{gz9`ohFA07o5>gZbbMSNZS|__S)*Dwi!tl(su$0K%`NN7
zf7VT2T_|@*EP(q*<&Ky0ovpmIr2Xy}sT{u3#K5q^ZMKl#tCjlOy(ay;w7V5FxlrV~
zf>-WUtQqg0rn#E8>TQlc$(qx=f%S^e-`lM(mYqx7Bz@^}d|qfG=W<~thFANPUshJV
zSj?-XwQ+U5&xUz&H?F;z6yUvu?_=oy83~eYU+zEs`uUdbA+dn&Jq5|urr*l0znhZt
zx7uzqNcXlcca(VlC(P|j7hjdTV*R~6kBfFj=%!6?je4SgecKe3+PxoV1a0Q>S-0$$
z;I@XSB^&#F*Ymwq@%;6^t2t_?`B`w8I_uA(pxzl@XY(z2x+=0^dD`9k&UR+un@>CG
z7Q23SDDBQ#vM6Y`-H)#mZaxjMJ|q@!`b)m}qC{I|RZssjH`h$w>8cja!f@cIrsmey
z6aCGyf}Ps_*xogH{ZD&FrNDEOPgh=Cdt=%@H8vop$n<Kry*|U%3&qX1Gru+pTNT)Z
zKi+q5S!Q|Z)T4(o#TgoIozF7|tzgUixGv;o%-X8@it?>o-)tAhg7*MsJ>%*7@#BZo
zOZL#q>vK0mvHs48&+4;_oc+LJ>jpc89LB8^mhbMqx9f4y-B0J%|EhG~WcT}R$G<zu
zmq5)u3;n|eUk-h@{_?bKanZ)8FW2VlhkxJf^KssU2@AFv8lF0TdiBL$MMbZk_mr2;
zy_$8=d2jTKm-^dZfku_yUp<>zTxz&`O_t*grmU5GXa9iO>s3#e$5uW3E&J-mnRwY*
zKWE2^F)*a3O0>oO%$yEN-eTQfe&x;;y>9nqP3~osjez}0N7hF#o1f+z=;-)&cEiGb
z5|@_Fyce;-{bVHTudKs{cW-X4`!jLo2G%P{{IQpv_RIQQe-yh?>gPwcv$b2MGwr!^
zR*##Z!PqBqPx$}xtY7cy?_LUY*2^zDc)i7CTS&$0Z|C%UH95b2U$*mW>+aQ|{9p4H
zia&pM#oGJ(%Wdx-78S4jec4-JTSIWxr<!-*#l&$x^v%LnyXOB{*_~HYy;SJZXOm~2
z&sNp{5Zz>ytH-clngNgVWbwCGqr1O*O`5lVq3rT~i@pBcQ4V^qb9XtknfP~O^p2aV
zu||i)r1q@&@_5pc-S2j-KKAR&7tr3yA6~3__4?+%yH~Hyt4*I;ce6I;f8-|r{_pv*
z%%MyS1$AwSFRson&;GS()5OL5WABH3|K4S`Q|n6Tymxw44`zvh!}|I3+FegSrIr5M
zm(!waQt{I=a?+B6^*?vtDtYzn%fBF@Z`t2g`)lgzt_@1`o^-4I=j*46vR|%DkN*1X
zk!_antJRIN=j!Ba7#K_s8u0A3C|{m7XP5aU`@D?hf-Jf*i*~Q;0WIePEy}RZ^S<Oe
z_wX6Lmy<xjB-QSE^+e_4(9-Dd9J#i$R`y?$x%T3``OEHxh*B<ogWWm|4$L7zS=Wp2
z=Uq?VFFR3XugQ|;cl(S^Jy{hX|KmnX>Hn)2tCAne`NnSYH!sPFTCP8T#nte+pp7)3
zgZ>uh-rm;tm6erM$~0>VXuX%bygaY0Rfwjhrs%ebSa&B~-pv%!EuNRNJX=3|QB%@x
zw=+@ekMz`l77LmfupV71_4A`!?YG;4kvf-_ES$>`wIb~B`YgTp*{jQzr(_>IH-&ru
z0<qOsL7}uge?52;^V3sP`$|FkLqG@DTNXddxVb46v{i5I_Is})a33F$_J*tAWK8Uu
zs^8~MUsXF2eta``>HjnLrv#sn=VxFrRaRc_arj>JYS)jNMde$wZf#ii>$0d|+Vs|{
zWA`ung50z+XPWo!y9V1Acn7>bJZ<&r)lSaNvi%DdD0l{?r7Z&;qXpU=2s#seSLy3z
zlE!HnS678bZBFY|$vg<zq6FIB3fi9pIuHi5E**55udAzT+B>m;)O~V!RsZk3<NCBQ
zGrVY<Tiq5%)}u?)rn54vc;2_<`O9rDS8sjz!SiS3j#rNbZA~{g2X8*@WNW%8d`nHv
zx-S1ym(E*HI;*$*R95YcTf58GA3AjC$|6^8UTHHQPEO8AphLk{?AQ_U_xJbmExEV1
ztyNN1-dgoF%kvUwRo=#AchEQ!XjPu3wzju**&B=W`K_(3r%s((^?@O4GN>Z1uPCqF
zxf|5$w*B=|O?3J#P`(cE|68UJYwrIyv^uz0<kj<qmdfjc`d>JJoObQR?Yo8#Pf2rs
zU$LdHFYoHB4Ocg(`-ArD+5i8u8FczcGdusQS=s9X%gVM*nmqaGyLamv8XCCPb8>P9
z78OPQ^7ZpuC$Qzz_37)ar*{ggpSpkl{>P4vgbJCh{?9uY_LlpX@7x`=wIID~-oK*k
zxpHaj3|IV$ugPDW`#*N^mpe+O8PAsIyT`6ITevT6dMjJP5z~vGzL#9ycSYv!2Gxsi
zidHQNYhMdmRtY-y4AkG>vBTo*Y;%7}NlDN#I&*HlM;-xN`Ij-YG<3DX-s1G|ol&~K
z(k>hReZ2dv5f76%!-Gqr({FwKbZ2hWtJ7<>^h`}wB(He(=c!ifuj(1GQc@iD{N}b-
zcDJg$JnLHh>Pe){R;!%3dI|~-(__nKf;OjKxDX&JDypfhyx3{>lqn*uZPV`7YnYgP
z>AA^ydj9n7meRA&s@dD`=i*<m?bUrfm;5{TT*bOgs&kv>{Y|r0j$vr<o-`|TLE`_|
z)!)P9rl{Cn+dlQ)zhZE+EJjjlR`vR<b;s_#vno;YkI%QsDzg+{>({y#v}Nc1{&?Tn
zW}(~j?ml_;Y}wInaqDaE@9mA|<m3dM`J;05*s-kJ+j6~peM`4Q?kHFYI`48_>~5*`
z@&(goTeW9iy5P4dYKi}K)fb(X(IG+X|9>$v7~G%5tZwpR?bN7pjaWOgaNqr_S0Cfc
z2wwiav}M=n+s{_D|K2i1W$)IC`CQ(wt}RK}YLx>z9v^gg0cay>=<2YS)1vbxc6WD!
zPAort|9-r(ThE0X8<Rn&)n*)S<K6Xs-)|9V>DAyft3iuvw`O1WE5Bd69kg-m=jZ3I
zcRrtYc}3vjl+8DN?pZIWx_iymDfr!vJB3~kSNNM<+Zpe{!0>s>lv`h)EwYvRb}wq_
zQ;}7^9qaeiKgmjyX?Y21`773$$(}xO{rl|K*S1ElOA{}!18vBe|Nl?=T#G^{-&rPs
z>*MxrNjobAI>2+1N#&;$=tx#;Yin0`_hsw%dmdNp?e6Xdoq^vjUl*})<Hk?lzFqt9
z@bK41-TJe(dN%~$y<zDim!~IXTD|z$dyk8Mjq5L4AKrEH{^hf8E-^4{y)p5N&EKzw
zx89mIN8NLm*{R_Am(P~=C|7T}$T@x8@#DwC|GNd|SMJ#P;-;gamZoV*@pOaDr*~>>
zwaTgeb~7FOVIZO9nGS2ewwEdXdT>ws%LVt>UtjMN{`GiED2Oj2_#(9|lc6E%m;q1i
zcFVx}|7oj>y5DRPf2LV`(E3-w^Pt)Y=D*LMJh|eazk)yS-K8^cgg`k+mm&1>>e31O
zet55OJM+u8I=HyxwDta1`@ff5e>$=Ej2<sTfcKI#(HA%Kw`B*`+<cPAdi>GV)iY-=
za<f%?X}J8G?Ebu&b+b%eSy@^A-m)7=CvvY?Ze{ZMdimn2m;Yw&&rA=R_O7D5H%{)7
z<Mz_$`wAH@Opt6_2-*wKB44JldVx!xp4eZ*W6|q<s@wwe>sNlb_I7TZv)7@z<=+{v
zux+hs;$fJscICcvvD>j#^*$T8yx)K_Y1OmSYqd1e9`P__bb!{i$G%^GRk(N?$h^6S
z{+fQjm|YTW9e*-GEPBB%!EFsy=Wah+RsR0nI(7CKwbib_YW@n|{d7)C*5|b8ZW9Iv
zUQG?XtJ2(MuYZ|`zqnqjo>IK^)yu}*FJBLbuk>B9{^nE0uVTvunRpwnW?fXSjeh;<
zgj>~{%f6sO`@!}wP!vjCGY%5t{_e-v@au#D&)M74)^yq*ef{EOjpwD(+*uiid}T#$
z&gh)XkglA=$a~`I+NLj$ldordc|IGoNO9ipvfX0ud@inbw${9I|L~hn3=CH@USH(d
zYf`?v&blOM(v>Uso%QeB@GE@l{8L#vz?mc3fm!&~`-T2;JA#bEWG}6@e}8F{?QzlX
z&x-!O{k3h^-s+Y$VgH!f8g{)&h+20qVu!nZj^^&4tC!F2{#TUC4Jym_-1+%}{ff%J
zql~;0u4Y~Ah`YG!+a`tHze(NO<j!8%v3~o@?yv4&K26}ul7E(8*2&P&J!MYhg6-4Z
zTz$S@HgM(L2`YDsDvfPzH}ryL8)IZI7zl1_U|SQqVg0_kA6jQ)N<Aivzq`1sh3D>%
z`BQiOKBZxMZT(j8Fs~p(0b{4+&sqC&_Jf+tU0$csME0!n6}FYU-ey0KQ4JJAb5?hU
z^2c0uGB4q}>|I<A>Tb>2`fJ0!TNOUa>vI<h?u|Ne`R>s-MvM&0EvHOdT^=rTVa`|g
zkeDd5Nu{9mYFg{of=0e$WEna)us)a)P|xoxdo8s5o%iJ<^B-;f8!_$Q-h_Tovzb5s
zb`WTSxLtZ7H^Z3}iMDHUKG%P1^JfLtboFfNS*jh)@@iw<TG88!3@67kY~@Jgc3=(P
z&UNYg;;NVJYdfoQ|K-Wr&RqY|{>_!!``=u5-n-azP5P8Qxqn_UG|UPKNxI&DTj=Y(
zuI5`4XFQFli=C}jwZmWAZBs*3m%mSgCuoP=7U)qUVXM|&&ANCtc2;IWdqC~Zhb!*=
zOx@p?`s8)|=dzb?RezVb_j}wGmR|b7?apFWhB=zL%LC^BFLT)(CL5Ghwov8d;j^n2
z#vU%cfAwOP=$quCR)%x!pm7Iy<Jj%@S7_syUC(pV&RrQ1=QaMWtZvzNx5VeY&fWFR
znLDe>e=_df{-}X%3-{Hzw#rvmhYAEAV|Fmr+$tTl@B0qB_;Q!-N5LUQS!o9o;%B$T
zUyUjM))AtdUp{#?OMqmH?t-?b&!^1&X9!*Mp0(usl$O7<{=N#1+L+Xul$5k;OYgL>
zms?-gY&AR?Tm1c5R<_r~x_cAX%r95bK5^Q$c6Rlu{4L9y_MWa=8*|1(iowBZ(!AxM
z$*$?reOj8E4{Y2Mx?ncj)=!tN3eGDkK6&Zj-P@%bX8m6Ga<gtjThj*C8A}Sm+X2^4
z+&9N?)-y2?&G~xGPwwvPzw~6We%Z4Z-E%FqEOrG~emosoRnh#&e4Sze<AKT)QIYI}
zeIm7+U#_UTTYhNco%7EYJ=uC+JNdAUte^FoqoyJLetv$uUs+6eT67mM7Cg&{S{Z9K
zEq;-+Wtgn~mJ`Z*K+_W^H%x!EP`~WuvUjepuA8|`Z~bB5EXLq*N?YsVq8}lDH>d`l
zE|U)r%)GgGqmJ0h@YM=;>s(uAiKx9iCB8iKhVgn$l}$@8XLrTJX5O2)&DjDnK^7KX
z%ZQq?WVOmuk!czEUfZ_G`-N6b>@Hg>ntlEJZqt{~?`DZTSh+8^`Kq~E#712y<6fHv
zwxtVpgm{<BU+0e&-l}33`t#`0zS6Z#wI#{R4S3&PJ7f6q!m-|yla@?4G0n6{%mq@|
znz*#+GF&}&{MoA0%F-)66BjM}^H#s=<KFdK%&#vC{q6rE!fhWY%gC>_)bTeLFU`N_
zVLOZcRo4rL(oPPA8pajned*#^C)bJScKKiJ+Iu`SAg6pych;Mw($=jn+s^r3RXZ|$
zV*P@7N;!-LU6<ZGmb!5&`h3~jReu%*t-UpWnd<JKttsKFCK+*WNy?uU_QrRz%Ff*p
zS1k|4hnw(+^uKV3mAmNiFD_5*JtISm%wdBq>Z<PDkAk;o*tyQ`PqE0e((ydYWMjG`
zIQZ^`l`E~xKC34%@-ifHH(ajVwR=UpPsgvLEhh|k-uj)qwyXIiXf<Ru|FYK=WeY(i
z?0#9RmF3f>%{?U~`C=*G**~ChG^=@4EER@V4I6H$+HUvQ|IYhz*WTk>i}Gg)8EeOV
zzM^?2{%^9=6@9gcx3hi;ZfIa@+rYZOEmB8pEAQ9f+X41>g>T2SC4x3!Zu(HVLZ?A>
z$#YA&&)Zb3<D~DM2sZTnd&TO8`}Ecyt4cfiqs%@&6melNUAACHh&2EFE1&jeM(upR
zqf8|&RAO&Y`PNn8s};U>bB68TrpWd6yTSShhGoh*j0RJWCIx<0$T#KxbZ!2+jtMHM
z&qTAUla_6h)vnI5pSJR_`lpgFDf{~7ow<H!u4do$Xx-Gs32U8eu5Rk=pJo0nC?pxA
zHK=1fyLmKQfoBny_m+nrJl9%RIBA!uW~O`1^LitC+vVr(Rlyy;bDi&8-Ph@B7T&!?
z*y~QcQ)lR#>A&L`zcPaYIObG4tG}mh%~H8s)vaH{^Cqt6OA*ml-0b3R<XvL2+J!Un
z=qXL3k{95O6_=fshTLd7dv(={;D_2q7rYZ0=VggKSeV8b$Ho02V8M3l<zE;I40xP9
zXR_X^QE`6FKNqxMeyg%!aM|Ld-ILx3YgufGWNkOo{Qn_M_T1SEMe0|N)UI#X)w_Xp
z!7a<jYNwtjedU`_{n(?jb?c?Q{WeRtIIZTJ58ltArL!^H->dK2k~x15cb&buDvfa-
z7x#ydh=$`U*U#hn_&GpWes<H}9Ih`#=_NcXmV*N1Yet)y{K*T?S~jg;d9yWrOE=G#
zAa8r;;(L{@h0Sc*t74bvyj?%Br1x^x<9*={e;sZx1-zY8Dg1P^r{|6JH`m)OO$`3O
zZe8qduSs3rZ@tc((3k$|b^7YX$(3GbG%jrHsZmXPqHVf6pjEX@*5mZm#w~Y>^KM_w
z3Y^gI>syn{^-Y&M!M7$St4M2t>9@jgW&Lu~Z)MZ>FPA>Zvtp^=GqFtfq-kYpsncqG
z&s^H~*iv-e_DL$@t6g)QYfCFr8me5(!}^~!g0>MH>y<YB{IE64?o;BsYSsmpIHDQm
z9E&s$T*qTBzIu^Vwf3rw+t=+~b5im(x3|~SNs%j(C4crYOsjbH`|-_It9h|2gm=1X
zZIt#prxj3it@Zz|oUI<cd+vz7i2Zo+#_iZ%zi6=sPuDT{n^*4KU7)2L(97lRRr;V}
z-M3}WKt<N0$(yz)8+v=rO#g3wN9RCrtP;~HxrvOg1fJ>pm#f`n46p@VqSCu6MmcTr
zl|xEfGgMYiRM|PV>c@&Bc^Zoktm|nCnya(nb;`g0`_6CPt+o8hs>wTDttLh<dDA3x
zllSG3mCvU>&DyGQ;I!|*d3k*d&)&aOtJgPYt=MIKZK|z)_T%?2)$IAhckYVNuc~kS
zrDVK6qTT<=tAwa^-<E>h*Y|Bn+UpOUHdE)-O}wfZ*t-|B)AsGGUn^^8?7wCHIe3Hq
zW>%&GxkF+NR_oQ)3u-@q`E+UQ$B$h-JyTRfr{0)4F<flRrTXs{6Qh?*?t9N&YP3B<
zy{LQ2)c7@vf_8hoX}eU^HDy|`%F8>;jpy}FpY6KuU0CJr=qHc!ruOgN`ex_sqaXM7
zpVg8#@809T_Iugp6Nj%B9lW?@!2*Tj`xw(sp3p9u!&URbWgXxA6PFhX@3fjSZS~~J
zqt9#RPM_^6Shue0OL^#${j;N3c4%rH2#w2oTEF1Lv`?E#OV*ccnY7iwTA^W;LJs4K
z&u4bI<s9u2?dt5bOy0YEN!p}Yl^&laT-j06`}WG>oNJp81vy)~wiR`~*<bzVeP!9i
zg?E&8`#llK_&tw#(~Ui;Uq4K|`b^jJl(yNF@R+KNlD=-4oo`xqZW4cTB5s0qb>g{|
z@BMA{PfXmpB_LT|a^;5!4nKEHWwpvTU%ls!PEp~d(oB{;ZA+J2SvTd4lWOV{(Bj`t
z$)BS8?5m98Xa0Q77cwbiR&~(Pmz`RE_NyLkIjrU99Z+~naO$%;6E-gr+|10hL!w2O
z;j5c(ta92hk69{rKi%l=%Dd}Ww%Frn*~$}oqBnK5HhCXizE5oGH2eSecPZ^Ydhy-_
zS26MMofSV%A3gnl&)>cKy)Ui%Vm$4?{)(p|963u_EseN}LZkNm`To|A)oSXrIh*%i
zcIOV<uA-u%p{whAbZMIr_uEsTgy*=@i2KbcjX(D_cc_2znmR4~+h5Cb-&QMJxV&na
z-8!zXg@M8H;ig|p16TB~HtK(Ox#MAZHmFX2^6K@Ref4MfI2LGeL^Bjj%&JmZ`^R}+
z{^JYYT$9@pR~*S(v0z6?t7@63*zM4Wpl^GVBRgX|-T7W#xObPUt8e1!<^9Shrb?wM
zM}^HUzxiTT{R!9W50VU@q)olErtQw!NwZyxwo7T9J00?8z5VOvc>a~Xo1WwrPwhYJ
zdhgx3Pur&2$2>_cp1NFma@Un9hb9H3J`>kAULPU(^QhI#=p{VIKP#oqiJCWK+S2>m
z-cLJv*<Wv7-PC*g0;3jPdSfy*MK;{CY?jyNOCgh{Ms3qE4pp6b(kdoqh41s5ZRH6Z
zo0*wbY~_e%2yituofH-;|4B!z`%a8bQSru8-)-KS$waQbzpu{ox_?D@Y|?*mHSf1>
zkrvw9Rxfx`-}tuv{`~aF&b>L(ZLUj~206ZbnW!1S7=C}{%;-%^b#I^BEg#k`qj=_Z
z2!nS0yX4}D-&Z<3d-zO=-+Z;rotTv3;)(66zh2q&U-x^#-&*O_IeL0UwqNCT?u_|y
zYul{_ORlVI3Vy%!@#~ceu?1BN^tNelU*WQ|RrQpf&hJ^#5v$%b1>YB+s<C{7izRDn
z{O2w&?b!D0gdLBoyLoQLsPMmDxnA#o^}Cl@Cr-P5DlvTWP$^QUaT1g2)}1T<rY+%g
zh;_KZ#1PWeeN{=nJiKye{GaT%Z3`C#FMR!d;R2fuS%2S)zn0o(Uzo6PQ{`{X=OG*?
zbagDh)^-;8*M8V89rSJGh6g!e-A}Tn#^{Lcj5wXvuT%dnOSjrTMkh61cao0SN}G98
z>+=I|nwy!MS5{O^(cL~LYTYJ*=q!oU`1<b~=1X;MxqW({)wQ`<(f{n`Wk1{ds)qkh
zy}5AOflT9Mwu+sa#-@Rf-TsG`_s(4K;#%&LhiRo%0jV%|Tg<(hRM?|+^77lBukPJK
zTN56d^j1D)Jl?y~KYhFODgA%74BDkVm*&Ww<LdJEw>{-{Q|A7BE{&TzS#NFr-|*y-
zTKDSRI_u0L@7zh<7&6E2ex66F<a(P6F<u*X{*YAHpSF8-s9E^xoOOCdTW>s7+I=Th
zr>}js_syIsaqGk?cSSyZnKg0wY}a|~t_8>c|GuYYo43Dt_nLGTb?2amE89ipmwT{s
zMn8R?SJ1D;@I&^H7{h{VJ8rz(de`69Z@25M$OwPi82_)u9_6;518zRyny9Pl*%qke
zoXU7w@1%j>@3={KH~e{5ZFx(2`7Mw1V}{N_X;EEaHQzU?`PH}vo}E4a)%%dtu<n?(
zsg1{${`q}hx46{u>(!`j`~D<amqw-h3@;a7y=Hk@myZYR@c!5<zbjYHSjo?z1-cN|
zC;b{vzp3fYLl^h9J$oOu^4QLHk;Lz7c5M1`<uQ|Ae%ZbVVR`xWfA;L*O1w04M;#Z#
zxxNjo3<h%}jcu-lSgd%TIO+9rh6isrq8S>Z7Oy+|AtLgttq)Vi4!v(*-g^s*h=e?U
zchuts6T^bGE7uJ;7d$jfK63B!Y46>S9={HG0CE5W!wwBo+obuEHpFj^ul35z%xnRl
zJMuN&xA(^N&}-bFtr-jqF*=99r|00io)>g}fUwDm4W^~9LQM1T#mLFYy}G%1`L(st
z>1Cdv;|*S|WE0+I_y13EudH<#=oUiI5r60AT5Id+`K?^JGHp8O?4<>ASq6#VYhysC
zlm33U+aGl9?w6OBpFVxMl;7^h0nk7g1H%>Pb!p-O!d+cmTM`em^-7zc+ju5x>#F+y
z|DyI*eU*I6&CMMe5%Hp8-prYro~KToDyrK!b;9Jy%AQuc%G<d<f1U%rA;B}~(?Z)@
z@87!Cm#(ol{<XyZ*Xp;mm*VffJKtmXvj1OJ_581U_dj;$_tN?;lk+Y8)2DyDhj%1I
zcL&Z4D~(A?S~SZvds*n}FikVFYa9Q(Tt5HWrqt7*vn09R9`Bc5&nc{SrDP`9=N<5i
zDx{8_xONnD1pl!<+1C|$+iy>uH*ejsUg^_G8)rmB&Rnxb$JNE<#fgc^pFV#!-Ys(_
zNJf1HPoHoI+i^~<=Ep2k1LgaK4;xIGJ9q7d4I8+(<q9NfYiM}r>FI%XZ*Q<sRdrps
zaAEqE?Kg8a-OLf4#>&ECvH6JB$IqWvZ)Vrb;)9xUu(0XW0}IF0D_<WUxqp9u&|9e^
zERyfuy?b?S?QAjqxHl1L+i!2J`1puxxhUxH28Ys20p;jPCS`9TKqo=p-CZ8uFJ}uo
zAs%!_(aoix6987UOZnUY9r|4Q=SQLK|39BWd+Vp`#eVsG-d<Zp<;a^$db7@^UFO!`
zQ*dl$-+}jqa~2p`_ytHp{pjXw?I(34rv(&b0hgtYn1c2pGXz}5c@X^SzL{2~t7e(!
zgD<9ib2Iq$wYA2(Rc2&BZVwif%e}p=bdA1-26!v<j>6=hKYoC&I7+{BNBZmePft&m
zKJGQw($Vn|>vp|g_dB=sYg^)rpU>xqUtZ=5x*PZ3-{0Bq@9h=6wPgA7>>C>rKYjij
z?BLMg)+4cS&YU??cepKXxAsj2T^-wVU!R$sZ_S0a$4marwkTY*ZpS08pTB--Sy)6k
zxAA}ujn&?=^2~ozPHg9;o9@&uSaeE89kgxwarvne6P2~Mtn5F|nYfzo=bz8#P0QXy
z?EP?v8+0oR=;DGMJ1mwiTQ)0J$_KRaSyfflQcgR3UCA10<Fp>o38bJCE<yJaCnYTc
z9e63c+ST_2;q~Dm0Ray(jIpl}H{Hs;f>GScPbKrgfkx4~{WZT{E*HI4Jm*S1=$70S
zfr~-I-nub60*)R%3R*~BR9q~ZtM{eeH#2i38^7F|MT?ZyMs4-loOTv;|HjuppU=<U
z=v~lsN=ALsmj})KVL#>?WnNM_zN@Nwj>HP%sxL1Rd!$THecZEU%M}i8ZeumSIT=Zz
z2B374Q1b51&o!@&jEs29&CQd~&9UrD{rK@?n@aN6S659#6wj!g{PApdzRdZzWxEBX
zq_XyWyOrISDk&-1b~eozbi?Uk1D@pP=jOJlJl=l4u6WDOm&@n#bRSKUu`XM4EX)0@
z<zEX!p2HG$H9HDFpEaNV*;GcIH#jS6mEy^WZ8<X&C8qw~pLTCgW!u#((@B#jgKvsW
z`|<OqWNT}y>2Br~g3IOA+Y%)}w<LZ1@wk8fXVb4=EfP~!_i1QpU25Z%zOui*{<zWV
ztDvh1v%kK&susq!`R(1^;faZfp!@FHc%_%Mw6J)Bl!nB_#5|ml37M3$Oq1Hs%+9Z6
zX}R-I;luau*MkmH=<B|^IvjM;<lWun<y&6f-@kuN*y?NRVxu3M9=7qGt`}NRu;JF0
z%*CL&26ewV1#2E#WX>=$Hdgg)Y;2sQ^}YTq_F29a2VVsS``P=QIy=uc+R@Pwbnf7>
zUg_m~_ShWX^{Z;mj#;q`TI#yGzDt)b73DkdKmYl?<W=kb+c((rU)NAj(t9qz$i8QZ
z66>TMj!glLQ!h?cKJzm0jLXEF7c)$KH%6LlP1_k(e`H~srb=7(%Sq8Odwkg&gB@=;
zx?5)?3aR)$*i%<;V*mP&!_hAV`wo5HIJfuw^V)}B?e={8`R3?zCWd|c_E}VaThqHp
zDZ0C>tLb3EfhQ*?CmPM%ka=0{$gyLOuB;4x@#am-<jKM|Ha0rPe*F5iX!GXFW{i{1
z#{R#}U#_$B-nE-IIpyW$yUW<w*(<85jLMHqJaWWk&!<z`7qYfyWM?0?e!r)A$r2SA
z%OaL<-@cuhTzDeK43xk+Iy)URGBg-^Uc_9!dDHTZ;qxl#Ufsh_IT@BLU8-ncAW&CV
zmywg>;^)UVYxeBGpdhA%H_te`br)4f1O-j{R2&f@v1rjE0SSqYMT?Yn?AUR`z({G=
z^|SNs<9}BE`tp*4o7>sLgJadIRRZ$z`G-%O2n$;m(;2+nFVaTZ=ga@Q8vg(O+C2aA
z^76uq83OY1{oA&gwY0SKl+9S&wq5X^@}50=67uuypS-mb*N<z7TDvVU<jekJhYvGP
zR`Yer&epz?Wx6hQcbj(jx`;1{=X&z5|NmxgJ#EF+SBm=gBqbycJUu;qruE~9f&zm*
zd-hzob&IQ^(&%1FTH2#_`8tQxRMkI!|4#j@Y<Ydf)mMrAme+4*yx9>rk4Ifgi;F?0
zPczxjKO*O@@|-zy43dw5?hx1heJ0KL)alcLva-2{PrRu2%+J@qb?erGiy0sV7FJeK
zPkf4tjrC%79GD|{d`pz>m8`9<aesb3pKnq2X2vA(ix)5MD0<4}H_v9}mz674G~CPy
z^XoJDS5i{4VD)Nlsa`gQ&nbHZ1XI$|lJ4)TU9n<CL)hxA8S*E0s##e{`TF{b9sRk`
zx&6VrcYP~^m-n4>I<YEms`}x~j0^^b?&MQ5&Im{EU)b!H_x;`7M{nNfur)jS&9~D%
zJxy1bpP#>b`?d=|Ce59z8yXs#WFob6-8#Rt^Ye7$;^K;4UQ!hljNDhVlZA!F!_~EQ
zjzyu<qQ#3<t*mYx3!J?5>z6McwY7V%T))oEaC2Yn?km@?pZ@vzxvR^Q!~FIl{QUfy
zy1G-39dq;a^AlSerd?ZGdrGFWvr|Y;PVac1?BrXwqGnnYE?Tl|*{v+k6jt-oljqHo
zi`<;nD`Q#Y(&M&x%G9ZzE-o#g17iRE`<<W4_w3}2=@Ta^f;IqzgobvWObN0JUmq9x
z>&~kfV*>+)g$oxNmA{M0%*dF~%+BAnef#z`(c907c`Iq}2%WcO+cvMfymcTSfQ+6t
z&8whb!;zy$HH&+$+9Yl)?f?1ZvcIZ=g2S9Sb5fq2nOXGZMPPKhi`kOPFI^U2?3g@x
zvdyOx%8M?)T(Wg*Xy*IZuP2LYhn;Zdw^jLmzkdIoKc7w~8O_X*FzjtRb;^s;;K}BU
zi%Nn&pMQP-`uckD`1tt3va)GEepF=U<!zg>c=c-Upy1%6SFeWNxqCPD<D;XOE?-V=
zzB*y+9UcF5aeK9jpPv)W&(AL`DVcKMfJ5cuUh}p;#r>5=-*~4hGpN|x$G<e5RP0+_
zy<0_9wX?gsyP~qvv#e~}m+#;EKV_YW%A2Y#t`{?5#}12+U%rT>r>D;}NNidYyE|;x
z?%lf2B)cmY2?<K>eVyR~29KHN-&6vFO-y3ZU?G>V14-Q-AaH^!B1aGmA{o1N!K#$B
z6E?bnm8G!iYy&Ck=vdQmR1B<YqUeSjN=l0gl{GXt=GT1cTzhzjc8HefzW@KKquU)_
zT+9!G3|^CWZ%?I%kB`i@wab>VX-(zo?d@GGb2UKPJnx9GzfECua!%-hnLcVNs;Z0(
zw{G8F7_{=jg$o9+3Izl&_HMkPq@=Xk+u#5ALg)4i7cUwv(Y3dipEz+M2RHX-$CU4S
zTcdc>)6<cyd)F!+*RXxNIS*U&(SP^u#fgZEE8E)2GHfV+ALldMjQ8BRa~xb;hqmS3
zp0aP}&Yd4Ve|8QJpS}rnY5eic=k2&R-{fIfv39L%PL57YOw5NDi~E(dwYls6e!X7b
z7rp-a<E7K%4qaOtz3^hjhYyGOlb@cN`r`e2c7`*vOu3(*pMU&z{(j!6UaV8SmiFuo
z)p2xmys;^jdzwxplexJ$3k%DG)B5{EZmo~q-FD`TPlk!qo$~v&96UTn*yU>$Z2AA&
z%xP^HHv<Phf4kSxLu(>82gJtmy1ToVl$AxT$^822YDaJH-}Co51qFL$Kryt*ik+QZ
zCuWBLTQj55qBr__ddD6-PzVYRF8uVwbIFn=3IG25%*e_*bgWl;W8L4Xr4H5K@0JUS
zh_o#Ap3cNj_U=yS;dcJT3l=bxm6c^=XFDe)DaF-(4K*<{OFBQ#78D9;Y0qSj#zjVU
zZrf%S5*D^-!2$-hX2;HzOO~+w`}gm}*|V)DQ<_euFf|As-;{gX%*D-Z(Y}3h+F@%P
z+}zk^&7RH3U|sg+z`wu014BYuo;^zw5ff9=(8#zU(Jyb$$DpCD-Fz~|$<veb(W6HK
zGBQ2+`+mB;yng?F|Di)pI+2^6^z9Q?Qj$_sR8o>+O+PnBkRd2Ca^;)u-rlLK++rOa
z9#K)V&dfAEo^<Bc*6h?*S5}@Xi;kYXW9Lp!Kfk^mJ9c;^CN8`*ZQeY+)6;Y}OT-5U
zE0>j(UAlf<T}i32vGLQ#<MQ_nj)At~fzH-Wt-iR(RY*cYgPEE6)V}NS^|2*Zb2r)E
znWNnM^w%v{mosUbfBg7y;`#h~Jtd{pVQVLW?&dv{_IblbrU|vbzjbzWT+9$*2#Sx-
zzo@RS?+-doDd+v&-Qh8@u}ima|K4_=QBd%%?Ve4pE-s57Z9Fb_IN0B|b^X3yTnra(
z-Rhb(OX{iEA>;IO3TkS{l6-u8c+SnWZa;X?k-?#$z+hY6-L5@*Z1((k)a~Kz9sKLx
zr_=fd5<CT^rJ;75oSX);&l*Ve{<nOWd3o8vd-vjQUdu4qQS$PV@9`d!Y4!HYmj$g{
z5Vm^i&aYLrQc_X|m7h{lQd1u;pI^7@?TxQhwo%d1g<oC-GBg}aaPactlB;;ocza%V
zM@QcL=C#ZUN{c>%GSKR<wTI5lwVpVCe*c6C0ydw|7;iUqFD*5F^Y-n<d-wVp8yPJu
z{uFDye*5<5?EHP5Yu2n$OlD$Y`d56Wudh$+w$@ayO1C#|Zc?YuKI`k~Xt<bhq>-6D
zAS|qH$`p|^^K7N>*M7g-k^KGR$Afz+KTnuHpMPywH#0lmf>o=sjy&${cySI~*aS|V
zG^uI(y(;eAWp58%kFW3T>EU_0R490vk7I1?T-X1*c3Jt%GV$EGX-oQfxhYeoELgRQ
zOH)(x#-2)Jv)o%O59U95^5x~_83u`mR;)XD@}%d^Pi1%Sb{)NYSJrASpVeHx^?Scb
z2?+}q{`{0$QB}p)$#`Ib1w+EiOG`a`eOveMw|8=KYKyT|QBr#SFt^3U#Uv{xHg@6V
zmmBi#TFvlLd-1husjjuP^wXzLK{iH3MFj)|G@Q5l&69m?4I@KINr{58GIM2RWyP<T
z%RwQj8@)|q`-!Jdo;>*Q@bHN<XIz|}nL+V>>Cz?ZI>%#cSy)*Y?%E}_|KBg|y8nN_
z?-o1#?d|Q4Z@1rn^ycQ~jLb~O!a~C<S*A8NHf>+Ne*D<j-ObG>XVcLwuD@va?&wT!
z508f3yRAWM^>pI){OG&x?c$<*98@a1g;rHr{rmBlUqwab!1?q3H{}Hd8y787dUJ2D
z^umP;Z)`|pE-Efwc>T4a(uLPwXIK_53)-Nfq5^V0x0sGYe!l*pLx(<mK5xHx=~C8>
z8#i+B^B-^HmDZ_iH+}N#*`mFBWfc__KYaVf*05Wsd-iN;&^^2^Zf=iGs?T?+uC}iG
z^U?jrO<vnlYYU5n<9)I}9(C(Kc>cWo$&-|&XV0DEtJ*8q+}s?oqu}9O{TUq{Za%7?
z)|Y<}5)`~RWAeOtefR5r^Zx$+etW5gi_2p!aFr&tc-QXT7q47tiQQec@q&`lCPr}m
zmK;)4WYi~b-}m(NbWpEq8((`z#vO3nfvUBz1L7$H;L41YDi2gOVy!>_@wZJ_Y~=Lw
RNG_<W@9FC2vd$@?2>|nsgV+E7

literal 0
HcmV?d00001

diff --git a/docs/viz.md b/docs/viz.md
index 3efe4276..8b6788b6 100644
--- a/docs/viz.md
+++ b/docs/viz.md
@@ -4,6 +4,7 @@ The `qim3d` library aims to provide easy ways to explore and get insights from v
 ::: qim3d.viz
     options:
         members:
+            - histogram
             - slices
             - slicer
             - orthogonal
diff --git a/qim3d/viz/__init__.py b/qim3d/viz/__init__.py
index 84b2e835..33d94416 100644
--- a/qim3d/viz/__init__.py
+++ b/qim3d/viz/__init__.py
@@ -7,6 +7,7 @@ from .explore import (
     slicer,
     slices,
     chunks,
+    histogram,
 )
 from .itk_vtk_viewer import itk_vtk, Installer, NotInstalledError
 from .k3d import vol, mesh
diff --git a/qim3d/viz/explore.py b/qim3d/viz/explore.py
index d7392cbd..23425112 100644
--- a/qim3d/viz/explore.py
+++ b/qim3d/viz/explore.py
@@ -15,7 +15,7 @@ import matplotlib
 import numpy as np
 import zarr
 from qim3d.utils.logger import log
-
+import seaborn as sns
 
 import qim3d
 
@@ -775,3 +775,133 @@ def chunks(zarr_path: str, **kwargs):
 
     # Display the VBox
     display(final_layout)
+
+
+def histogram(
+    vol: np.ndarray,
+    bins: Union[int, str] = "auto",
+    slice_idx: Union[int, str] = None,
+    axis: int = 0,
+    kde: bool = True,
+    log_scale: bool = False,
+    despine: bool = True,
+    show_title: bool = True,
+    color="qim3d",
+    edgecolor=None,
+    figsize=(8, 4.5),
+    element="step",
+    return_fig=False,
+    show=True,
+    **sns_kwargs,
+):
+    """
+    Plots a histogram of voxel intensities from a 3D volume, with options to show a specific slice or the entire volume.
+    
+    Utilizes [seaborn.histplot](https://seaborn.pydata.org/generated/seaborn.histplot.html) for visualization.
+
+    Args:
+        vol (np.ndarray): A 3D NumPy array representing the volume to be visualized.
+        bins (Union[int, str], optional): Number of histogram bins or a binning strategy (e.g., "auto"). Default is "auto".
+        axis (int, optional): Axis along which to take a slice. Default is 0.
+        slice_idx (Union[int, str], optional): Specifies the slice to visualize. If an integer, it represents the slice index along the selected axis.
+                                               If "middle", the function uses the middle slice. If None, the entire volume is visualized. Default is None.
+        kde (bool, optional): Whether to overlay a kernel density estimate. Default is True.
+        log_scale (bool, optional): Whether to use a logarithmic scale on the y-axis. Default is False.
+        despine (bool, optional): If True, removes the top and right spines from the plot for cleaner appearance. Default is True.
+        show_title (bool, optional): If True, displays a title with slice information. Default is True.
+        color (str, optional): Color for the histogram bars. If "qim3d", defaults to the qim3d color. Default is "qim3d".
+        edgecolor (str, optional): Color for the edges of the histogram bars. Default is None.
+        figsize (tuple, optional): Size of the figure (width, height). Default is (8, 4.5).
+        element (str, optional): Type of histogram to draw ('bars', 'step', or 'poly'). Default is "step".
+        return_fig (bool, optional): If True, returns the figure object instead of showing it directly. Default is False.
+        show (bool, optional): If True, displays the plot. If False, suppresses display. Default is True.
+        **sns_kwargs: Additional keyword arguments for `seaborn.histplot`.
+
+    Returns:
+        Optional[matplotlib.figure.Figure]: If `return_fig` is True, returns the generated figure object. Otherwise, returns None.
+
+    Raises:
+        ValueError: If `axis` is not a valid axis index (0, 1, or 2).
+        ValueError: If `slice_idx` is an integer and is out of range for the specified axis.
+
+    Example:
+        ```python
+        import qim3d
+
+        vol = qim3d.examples.bone_128x128x128
+        qim3d.viz.histogram(vol)
+        ```
+        ![viz histogram](assets/screenshots/viz-histogram-vol.png)
+
+        ```python
+        import qim3d
+
+        vol = qim3d.examples.bone_128x128x128
+        qim3d.viz.histogram(vol, bins=32, slice_idx="middle", axis=1, kde=False, log_scale=True)
+        ```
+        ![viz histogram](assets/screenshots/viz-histogram-slice.png)
+    """
+
+    if not (0 <= axis < vol.ndim):
+        raise ValueError(f"Axis must be an integer between 0 and {vol.ndim - 1}.")
+
+    if slice_idx == "middle":
+        slice_idx = vol.shape[axis] // 2
+
+    if slice_idx:
+        if 0 <= slice_idx < vol.shape[axis]:
+            img_slice = np.take(vol, indices=slice_idx, axis=axis)
+            data = img_slice.ravel()
+            title = f"Intensity histogram of slice #{slice_idx} {img_slice.shape} along axis {axis}"
+        else:
+            raise ValueError(
+                f"Slice index out of range. Must be between 0 and {vol.shape[axis] - 1}."
+            )
+    else:
+        data = vol.ravel()
+        title = f"Intensity histogram for whole volume {vol.shape}"
+
+    fig, ax = plt.subplots(figsize=figsize)
+
+    if log_scale:
+        plt.yscale("log")
+
+    if color == "qim3d":
+        color = qim3d.viz.colormaps.qim(1.0)
+
+    sns.histplot(
+        data,
+        bins=bins,
+        kde=kde,
+        color=color,
+        element=element,
+        edgecolor=edgecolor,
+        **sns_kwargs,
+    )
+
+    if despine:
+        sns.despine(
+            fig=None,
+            ax=None,
+            top=True,
+            right=True,
+            left=False,
+            bottom=False,
+            offset={"left": 0, "bottom": 18},
+            trim=True,
+        )
+
+    plt.xlabel("Voxel Intensity")
+    plt.ylabel("Frequency")
+
+    if show_title:
+        plt.title(title, fontsize=10)
+
+    # Handle show and return
+    if show:
+        plt.show()
+    else:
+        plt.close(fig)
+
+    if return_fig:
+        return fig
-- 
GitLab