From 9b52b301fc9823c8cd8b1b6b275c940a24972291 Mon Sep 17 00:00:00 2001
From: JLiu_93
+$$
+\frac{\partial\rho}{\partial t} + \nabla \cdot (\rho \mathbf{u}) = 0
+\tag{64}
+$$
+
+$$
+\nabla \cdot \mathbf{u} = 0
+\tag{65}
+$$
+
+$$
+div(\mathbf{u}) = 0
+\tag{66}
+$$
+
+$$
+\frac{u_i}{x_i} = 0
+\tag{67}
+$$
+
+$$
+\frac{\partial \rho \mathbf{u}}{\partial t} + \nabla (\rho \mathbf{u} \mathbf{u}) + \nabla \cdot \tau = -\nabla p + \mathbf{g}= 0
+\tag{68}
+$$
+
+$$
+\frac{\partial \mathbf{u}}{\partial t} + \nabla (\mathbf{u} \mathbf{u}) + \frac{1}{\rho}\nabla \cdot \tau = -\frac{\nabla p}{\rho} + \frac{\mathbf{g}}{\rho}
+\tag{69}
+$$
+
+$$
+\frac{\partial \mathbf{u}}{\partial t} + \nabla (\mathbf{u} \mathbf{u}) + \frac{1}{\rho}\nabla \cdot \tau = -\frac{\nabla p}{\rho} + \mathbf{Q}
+\tag{70}
+$$
+
+$$
+\frac{\partial \mathbf{u}}{\partial t} + \nabla (\mathbf{u} \mathbf{u}) + \nabla \cdot \mathbf{R}^{eff} = -\frac{\nabla p}{\rho} + \mathbf{Q}
+\tag{71}
+$$
+
+$$
+\mathbf{R}^{eff} = -\nu^{eff}(\nabla \mathbf{u} + (\nabla \mathbf{u})^T)
+\tag{72}
+$$
+
+$$
+R_{ij}^{eff} = -\nu^{eff}(\frac{u_i}{x_j} + \frac{u_j}{x_i})
+\tag{73}
+$$
+
+$$
+tr(\mathbf{R}^{eff}) = -2\nu^{eff}(\frac{u_i}{x_i})=0
+\tag{74}
+$$
+
+$$
+\frac{u_i}{x_i} = \nabla \cdot \mathbf{u} =0
+\tag{75}
+$$
+
+$$
+\mathbf{R}^{eff} = \underbrace{dev(\mathbf{R}^{eff})}_{deviatoric\ part} + \underbrace{\frac{1}{3} tr (\mathbf{R}^{eff})\mathbf{I}}_{hydrostatic\ part}
+\tag{76}
+$$
+
+$$
+dev(\mathbf{R}^{eff}) = \mathbf{R}^{eff} - \frac{1}{3} \underbrace{tr (\mathbf{R}^{eff})}_{=0}\mathbf{I}
+\tag{77}
+$$
+
+$$
+\frac{\partial \mathbf{u}}{\partial t} + \nabla (\mathbf{u} \mathbf{u}) + \underbrace{\nabla \cdot (dev(\mathbf{R}^{eff}))}_{=div(dev(\mathbf{R}^{eff}))} = -\frac{\nabla p}{\rho} + \mathbf{Q}
+\tag{78}
+$$
+
+$$
+\frac{\partial \mathbf{u}}{\partial t} + \nabla (\mathbf{u} \mathbf{u}) + \nabla \cdot (dev(-\nu^{eff}(\nabla \mathbf{u} + (\nabla \mathbf{u})^T)))= -\frac{\nabla p}{\rho} + \mathbf{Q}
+\tag{79}
+$$
+
$$
-\mathbf{R}^{eff} = \underbrace{dev(\mathbf{R}^{eff})}_{deviatoric\ part} + \underbrace{\frac{1}{3} tr (\mathbf{R}^{eff})\mathbf{I}}_{hydrostatic\ part}
+\mathbf{R}^{eff} = \underbrace{dev(\mathbf{R}^{eff})}_{偏应力张量} + \underbrace{\frac{1}{3} tr (\mathbf{R}^{eff})\mathbf{I}}_{静水应力张量}
\tag{76}
$$
+$$ +\frac{\partial \mathbf{u}}{\partial t}\qquad \Leftrightarrow\qquad \text{fvm::ddt(U)} +$$ +
+ +方程79的第二项描述了动量的对流输运。标识符$\text{phi}$不应该导致混淆。为了方便从源代码中读取方程,这里可以用$\text{U}$代替$\text{phi}$,其并不改变方程的含义。源代码中为什么使用$\text{phi}$与求解过程有关。关于$\text{phi}$的详细讨论见第63节。 + ++$$ +\underbrace{\nabla(\mathbf{u}\mathbf{u})}_{div (\mathbf{u}\mathbf{u})} \qquad \Leftrightarrow \qquad \text{fvm::div(phi, U)} +$$ +
+ +第三项代表的是动量扩散传输项。动量扩散传输是由层流黏度和湍流引起的。因此,由湍流模型处理这个项。见代码列表263的第7行。 + ++$$ +\underbrace{\nabla\cdot(dev(\mathbf{R}^{eff}))}_{=div(dev(\mathbf{R}^{eff})} \qquad \Leftrightarrow \qquad \text{turbulence->divDevReff(U)} +$$ +
+ +方程79的右边两项分别代表压力梯度和源项。 + ++$$ +\underbrace{-\nabla p}_{=-grad p} \qquad \Leftrightarrow \qquad \text{-fvc::grad(p))} +$$ +
+ ++$$ +\mathbf{Q} \qquad \Leftrightarrow \qquad \text{sources(U)} +$$ +
+ +``` +tmp$$ -\underbrace{-\nabla p}_{=-grad p} \qquad \Leftrightarrow \qquad \text{-fvc::grad(p))} +\underbrace{-\nabla p}_{=-grad\ p} \qquad \Leftrightarrow \qquad \text{-fvc::grad(p))} $$
-- Gitee From 5ae353faeee5485656a61b666dee807af16fe6e8 Mon Sep 17 00:00:00 2001 From: JLiu_93+}mY(&RyMLP0_8 zHRyT({3O1_iY)?tR`=JpJRLy^OUz}mSpY2o-OH|ZFa59XwW0f}bgm=h?q8C-ciZSb z1pBvTl?c)?xJ#4?qrjW$5}ifawZTKMO)z@8idhuQW_i1v7n%Fq%;!HYLyyl$piX&Kn#3%RmEnms%taxEdORNhDqZ>$1uFCxbw|8qoJg zZ7U--`d3E%XSmdo`mcCJ?%(Z?{=J~Vw`*A>fr@8{`G)$pQC=6XdKI()V2Z-`q5o^- z{*Q0;kL5i jatwI*=(9L89ZYe!|cPse&TQ8 V*@ b;gQ20pE#ZuJbT)JJimTrgL5MW8rDm z%4)R$4YY}I>~Pp%C}k7Y2~RSHCCOWv)PT<(f&RW$M)_&|oAqw+**gZipJ=&WfN1yA zNCd3$wxS+7QnH{Jf@2P63qRK^7Rzl+B@E=8ogx7`rJ%&X32M;iad`bh>=*d(DW(@5 zgk|1Q0Om^ToYclCGz>i@h&@8;I0?1WxLenYej!bi8q-W7TLR8pd!3%rjSmbsV3p6n zBTq;kK*8G397|oZG2vJSUfGvzRz &_igAr?Xh#)fK)tWDd!S0#7eaGj6bE zLl|L6FXIL0y8g9IZGfZIe;*|Ef`PNwpu$6BV}3KxddSg|8qF^kh 6<+H{$>^6`z zdEv+V(fnRRJ0{M$`i*JK8s%&z392zpk`_~}`X-aF@00C~&JBu^YAC%4&tJ;Eg&hkH z@AIQZFU^!o_VY!Cg=Wu{Gp^gjzytz}Yb-O2 C9;0vYq9m>YFaUzBZQWZ2dEh zN7r`<^&)U{^nzIp+7D(dcBaH!edXP|S;V43`T6=l*GXusZzr5BP+#++7=xzzTQ%uG zW%X9Rz9{~_Dwdp+%D+YVc(_;+4TRU5g9O9U6Skq>?R1j1R#x}(^$|mTD>gHO_iV%B z79ILRNx4&=Z<38=AtLk(Utd@M%;5)@PAHd%@F_@^4T-(8_?RFbbt9CD-|AhcuZHr2 zqwJ#UF6F_>B}e%VhKH8&^@XW#iHSNe_#$yPOR#L&yng>uxdPw8wq73f=FScIC _miBZnB=@eLt9kdVEFptra6!Nb;(27NuEjUM^rf%OL0_u2gjbh zMVFKVj`BTZWx0FuO##bvT&Q%KRzjZCNRNA7=+Cjx)(gLPG(2LN9^=xlnd;%HKQDH# z)68T1=R>LR(A0>!nh=3^3stq5Td2^+LoD
f?DTN==QFZ4N@vAbtNi2fvxd6$0QrzX&WO_Ja k4lncf zm4yD35476+t1jl$nlf}mo0Y3`0tsNRAEh(Bfy*A2sZiuSzX_Gz$0xX~9Y%HV8b8Rt z&)cZ(^A&gG40+_3&g9-zlPs&Lu>B$Zd7s1wGm+wmrKIiI2~lj^Y%Fy>mM2dK)zwxA zEoGO;^O?(9hyN1Rz9ze*`ewS{+Wo8o(hQ_kI0_=^aM{Zk38k<=eJrfOgWqP#=YwN9 zBkn|ve_A}l!?}1yd7P8QKPsvw2ooO|_UM#?;OuPZ3-@n-Pw@AZvbaTs`hE>JlpjtU zj=Z}o%I8CX^S9r-{UyKFl!-#UnaZ1m)B2UiH%2@SIw$t22Op9EJzmm?X#=L7VO#A} zQw;;ojzq9b<3oSm4gKj$f4xuRZoq(We65Ce?!f4;W$Aaf)a{O3{E#5_>u3EybmbWZ z*_bE_8@8^_%)_G@ccN(JJ%7&ySbsKsyKMe+sW4{8Q>FEJQgg6_3nnr|@*LC9?o*qb zm3ApvI-guPH}GK9@^@%0|J!AwGAWnc{$BLA`mC{0yA=iXj%Bu9oPXV)^E>S#)=lbk z*{G0DX{P`mk7UsHQI7tEBfmoH74Pnd`qwxju(|Z8M-QX<5@WEtAb@RmTkb^e$q$~o zZ4WvJ+#ZdWx(6wjNb?;&dw*fS!e$AK#0PF6vCz }4p83c@{XJ{bU|7I+=qiR33s~^7q9Y#8K z&_CmhdCjqH=es*Xa$P@WzLV4BVP$FCE_EgT!?0lg$-kL)D)Pj*?p<6R>S}D+P`u5^ zo`}jTMlw?2gnN1g??k 4btGdvi-e2#Ts=n#qv-&}&6|{WaV>0l{bXL5voU0mB2gJSCM9>Db zs7=gnQiRBhUV@v@xtC94&-Gn-JeBu96}M8^ *vm zT99Wxcb3sh(lJZ!
o6qzDX#Rn}nMx=wzOah0Ep|8YC?#bYA>V2GPi=Xl|rK)s-y zEWacl^Yii5)zwY+7g8=;IWWo$(MI~e8Q2wB+n!{2=EEbowEznoW#M2Pgx|47GfX;& z_;*UTwJv;5<*&j}-$m(?d(@m&@2=WT2)BJ2(&Xz)?mu}$uu^?e??cdjuFe2SzDaI0 zT5;sAR$GsDZvMVcC&b-*rVqW`C7=kz2HyyERZ&)$j}CtL=uDY_uutVcz_HDGE$Los zQL_*%xFuFHh`n%B!>nI23^cJ!KMR#U#<%k2=Y(93SkiW%g!8_)zpAxqP6pi{50DY# zTk%&OuvUR+u4}m1of=1>h>P29hBA6;aIG#3DEwOXi<)lz@i}Q!Q?jupLG)ehNV$&p zc;tqwB)k{wIotp#q?V?hG-^3m+26HCrjqS#)W8` gZdryXZ;NBn1!P24n=I*<9!=@3riD70U z4BOv5T3=Za5E^~qqRmK)h+^tJiMiu15+Lr4eus%$?&F0z4if)QfzcMdIJsdP5|IsJ zbAl7;KO8%BgXxvQuYWJ;611K E5Sj|_;PWGWaYzrNB#)jcp5>wuYFwq^369q zcR@t)w_>R^$qlKf1~J3an~}uF0OA{jkYT-z`3*tqnwAPWpho;W5OXWTb#hGxaXeso z`)MibqWN8icH9RaKH8YyNRHK3q!GYp*EIdgIwks`cwtM+rIszjvK!JLQqcegHR)Oi ztrx>@bL9XjK9|oS?=|`Rw(<83Z|&?juyIPz`C@JzB}qA+ZZ``{cKU$YO|yMdmj z&z}dAN{~iQGNVXLJ{OFl(4ZhVfUr#!|;B z7yMU(z>)Q6*>kkoi>zF{uvW4{TEkiF#rm>^yBY7TsgHVBkk#@rM-&0HQ%fRIAfd0l zu>O7Kd*EB-h@%N5G2uw#>zqtE8@=}R|LK{kQ>S<5TNQ>4{wo|I3*C>YSz)33kq9il z*kIgXv?f=aWlcJ;<)F=$(^KK54x8jmsXu`@=!`$gvmrgV0WtRknl4V3CcPDUS4&`b zci#9IkF?>m3<|YTtI-jP(EM57Gok1Ud2gt~{KJcj!I!lBi!x&z`nUNDQ+0M-B)GT3 z3K8wDLHq~Dv_-TSeV>V= ~7Fkx{|Tm(tLX7T5cYfs{OB#NFJh`$Dbz-m(4 zk`_p)>gakzx#AWqfKqzFOB8r9qx^!VXKxr7z8=kmN4#ME)OSeMW)cUk4+)^dUT^IU z1{T4#_hKl9a4j{Rlb|@7VVKv6wdI3*N)RBSkGAzxoG)B@XQTq5mFIEGE=6mv$~QYm ztArJ!X wz9W7`wPH=>dUBK+k`6v<+iAEYKFX7ZvrDZX51xklJMtt zEgEaIA~7J{cgUZ=21#Vho3!n6h8Y)*0fradtR4vOmsfEdBvHNxE0v>6=LvT^4W)5h zhal7qs+KY7{ZsNqnl1Dz%0Sr#S8|@&wyI}BDmKB|{OeY+GVCZei4(-tJm&L0*pBhA zFs|%J_mEaXO9PI4ca2ECdO;XIKK-012*3_FeMC_pA7tYUXm0T_m*y@INYCORRZS2F z;IsSzf;~x=a54~9Km9j$0mdX>5{YkuuWSl)3L}Y<= -EdXgNQ8c zlDZR|iEiJEyXUf60ms3h^bDph(YpxHPx_B<^Q%8$eLy$r>cNp-1K36;W;|EOo<}}? zYYsVwLme)fb~)#9au6iO6a#%K)r!A;zWNznv)2-^Caa<*_-4A4mkOm9{P2y#Wn}R( z{#vipi%iQDv$>I1b`bMUyK@NX_D#5Nup67=i}-M4g(~H_{PZ&3hR4l5)Go7-oj|}B zb4sxhW*>(OlJ6urU?Yp38KS0)fWCK%9hawKCN%aJjqB53K2~pCI96GG(a{wiH2A|R z?LvoTo{PuH14j2xKX0a@#yAd6R@G2rN`;e8k&lb3Km|jz3=VwP%lNmawdyueW9D8Q z^w$Ti>;76^lX$qZJzfUsGe%R`{^N`Bfl~05E<#7A_QD~fU(->+yQlnnmijt9>LLQ> zzSjlK=e0uhl{I7pN1+!UUA!_(BUS=_gpC+yy9U)bnzLmG3}Uhu7Dx8{?xmf6xKJWg z3oti7e-A4v7EQuS**l_wW|OTU$uhjSXL<6_-08`)tD`_VL-f`a>dNZgyPGy44Yvbw z3~Z9FN=;}0J7mquB4~S3EeD}&C<5Mw6f%d(tdq5l%@?3ZCzMS?dhd@`mCJa*!4Nf{ z&%NvH+Z7LRPi{~H@D8#|cS;qv)x??~xQtI3-R%F^(uSBK C9-C}4ZO zZD?DOSY Pf;w#r+FEKYqG zj&KdIJ_ZjvTlfu!S=y|?d%| X*!>h($=1|Efv;$m3am-0jn$cb@|G4RZoM)<~<>i^F0@ zA1(^|Km~rRvAkZ{Ou|&SA0gnIZsN|aRR9|ZL!3LU?j~zw{EhEw^pDS}d9|{R&%eA) zO$6Z#YHlKsY@CW?a84cDYavvx0B6&ZgU*N0MZgamz6gxu?_TO&cnc3%mp`g&DVxvt zMV(u$F1DO}_ldy(5>^YP2V-=t;++fbU#dZWPd3B2`o7*JSz_J>FDO;3$++;rsm(zi zNF11s5^#J#^cyA?ouwBQs4-K)t4sYL_P^~Sk+AoxyZY&N&OVjux>$=|obSJ-#B>9S zt#b5;chntc4jh*%`MOoAWN6^PiCr{DZSF={rVwKK*Y8y}u49&5fT2akg)fs`M2udp ztEA3pyiBiGwtrVzqFRvo@;AeG81w0{m#Kr3cR0(wUrm7;9Y#Aqz3Q2b^8z&>&2Awu zp`G;d^rIQt)|`f4tZP1!5nPq!ZjX lwHW;Wap6OV07Z|^Qidf zGJY{O7L$Dn=n}LmB-;!JP;L@|_nH#f1l8f(M$#?-m|_?(z`uuUYw&%k_U%5w5WXu} zo^XwViilB<)7s-74`*M>c&aMve+iF7=mknE0a1&;1~ Z( z>*K2PeLJ$dQmw=A*|akxMC2&^HwkgfdTHA@e)RS2-)I9z0Z55pLAyhS&XI>qwvh^p zBkv1G&IEsBG^kZv{oM+x 8_ 8X{j@|(MWj%3AEC@17X$?iJ<%&%5B;3cSH)!>J6X1R(V2h`=hob^)J60;E3ef7@Q zYVDKU?1g1>nT3plprceCTzo~JtRNbFX^69hov_{F!`TaBJF`tEe<>1lzpxP)GrDcb zj)@@H&W^Y>+qvxoe{I6 f7Ct1F4#{7@Mr(&xdxE zUK+_uTy{bU`O{6=L0+e&XGcyd$`-(c-WTo} L9|)}rzbe*dSty<5*sUlj{@)R?ws=H9#TSN9ZG`W3rpe|o_a zI3WSYMg_z!oeJos+H+6lA$oYWF>L{j(jUqnxq} z?eO{iaG52CT^Z0^IsaT~5RUN+oxPi-?#ban5y{-L09}>*_Ic_ =bb}5X;iDwKxR{Z> ztsdl-!`*mwpKUGKg9rp8diGJ+khlc=wO*uq=GPVwkX{OPFj mZz!pOy<-Egr= zZh!~!W8@| Jk4M-b6a+ 4ZPg1XP2mDzaT-BU?|55R9 z$x~3uL-1<$Iq|6q$rm3&Q)k(j`aiu(92Xk&@_%*zAiBSmdE_dvgq%*fh_b*;RccTc z7&ToC8__!DL3A?Rb6BN@rw%(HW10Fbawt)r4%mviU@LwqiuWo+wqjP|XK?Lxfq|L~ zjwU2_T1LW3u Pc&`u{TT{~hKPfNbn4Lg}fN;*?`6T#n*IL5SOd0JRGe zCtVk-Ea+MSrwZD3ZNu4s9DS^oL1|`VY~MX<7YSYD3@Zr{)bcW3_2a~lJPT}qC%2wL z7Irp-n2s1^A5xDb$>Vcla=^#geCu13$T0_bKExmopS7H4QVJ(gXYbR~C^S;>3WVwE zhX>%KAz6li)1M(0$P2acJt}2Q`UH;1Y!I -zo=tU=q#t#R0ps03&=VTf9+Z|@&jo;}Ae`{Iln-?``iO)4NC^uneni 1Q>iqxC{S*%NZTTLS zRmZEBq&Mz$ER#U?aU9*xL2m0=(S0 Vgt~-z%QQI9BqO`@{A``$&@A$cK2CJ8hu%U|8t&wDsIq*vaT-|6`gA z=~zl MSd;lNKETKU3+FjV*Yu-^^R0wv D8Q%$^eXEBH zqJhafTu6G&kyALx!f2_c>lTT@P}YH(N=j-=O_o;_apqa3tU6XRLdV2V?DW#B+x^^_ z!m|UEk!#muvipgXJt}fH&ewM_L(d!pPiwOs0x;)h0r8A?Y6?s-tIuRDUyAePUdlwp zP-uO^LwacA-F#Z&U}29^6{B2GIwuign%aolyz<`^)4*qz0BNF3)FpCu-JLMDmG0 zvEN&uGLX#8JZzccXybBfH~C0$V7s>vSYEKJSRC%i;4 mI6Pxf7l>wgOrWs}? zy>AQ+j!ojh<@PL$y)4dPT{nnP^borrrxIL|&IjG5=-KZkUr&l~8qF>R4N_e^PU!`f z(KjtGbu -D{;>(ZL|g@ zQMTQ4jf!nX8#O|>cItqh?1<*8@qd^iy|ki^WHX2HWW~br*G50BBkTmm^iDx=baBn} zKPfW21P<{c#`0>#hfFQye=fTCXKwEA5F65+Kf2BSS*G~FWSawovDa$S>Sckz{H%SO z$pY%Y_C2s%(uC9HkNk&_Jw$R+1n4h{o`vhWW5;Xsh=Q`WRL5SagFcUI^l?RGeW!{gX9!SV 8XA#g>l%p)g5K}Pwn9zFwqetxz$G}Kq0 z%KDQ(Pg_M`*IN3z(OIzaUfe$-iwrpIZN}TMeYlxlK=$i}nqmX@!fH4;FK~Z9q)hIa zlovgV*!D3u4plAfWHDMmH?uqU=f#t+6H Bo@Lel#to{JbYZ6`1n>xO> zBb^3VU>xC!IsEHqY!D552y0C_){gGTtp&WvChhtKbOD5%8iu~@Af?|65hKw}wWq7u z4sgYQ>wi&HhI!SW23ZvQ=%53Cu+vMLL`@`2%%#YANoz@%R`EcXb5>*ynAT7bN+u}Y z@m1P?A*i3yi*#o_-LR9a;*B7=K35`vtpmJfdk?Sh2>5dsdzv-M&FC`Qrb@PVfj3s% ze{#rVuhtymkcqaz6|{vYDE|{d9hCYc4s|$Ij{Fyb9I4Yu9CB21;6>X2YiSS5+~BF< zln2XP({xA@7~*M>6h`7uF!w!jt=zwJ2w#y-x^35&*-E~L7KH)@ L_D8lg-E*O+FKoLazS9{in6xgR?=o0S$?Z@$~;? z$x _>Tn9i;@Xy>UJXU!he$?N1AF96Y~WmP*ENnzH3Pgf6CCJkd`f? zdO4#Q3O12W12tqsTMGZq<`M)UXn`|e_|$=9G2`Qfi~p6=v$~dfh|{xqL$>5d$G T9d~yD-$(U^Uf|T$E{958L_p-SYBiPQq+qfh}@g zB^f$p_%v>YCNNwn5$2nRRL%TLy>Hi2c>d!OZaK!srx6j_QFE^w)R!1v-|OWEMdV7G zwfxnU6%BLZdVOxY@b}B1zDjPE=w_r3?lbQ5IIdLg>X4?eUMp&gMR$?v!*3+vkZ(WB zZ4Ec2kQvmylVwTssb_IV*Fl5_O}gmXv-16Vzt~EjSf78-$E_Gs1yY?4pZG44porVS zR!aKV)ANDBVA0g{2 geJC A7U_hSrXJ(KH0PY8u%w@j3WHUb;Ld6uyrunHx z#8d%Fxb2SL+k(Ce6^q2fBR>{=eq6?{G&g@jTJw3uryvnA-{ULOLy1yl(-BZosPw~& zMDIqtN&p-Ifm^#tX)g>6POX|L {g^>`3?B6XMP;zuHc2 _RRay-erqit zg3gla+#QYS&@H)g7WZ|FUi&|L6N28%PBEsTs$Oz+Ebc3PBUDI>ru;eRTDij$HE4#9 z%R-y^99?7gKYN3qp1lee<6{SC*7P_FD8>ab5TNk(f6yj@D$q-)H~(1~xk|lr6yAW* z?!o8ktYrj8fF9a8=rdCU3 5Ai ?{qM-S2>D2;5_$}x$^@l0d9;S=xMrwC{h!TX%;xF|+dpdD z>bY?S3;%2ezCg3;gz6Y5H-c^lDx-s>rCJ#D^s_$(ZHJRFpRM>f8?1p~V;9QNo7g^b z7G@Cs#|+Z+ArOwqz9|LKUwgIgKs1AcxZ3%DjM)xs_=j;;!!Y~!AG~dZ+s$WJn^fXq z1521uETF7)56aRp;H}Odyv4&jMFu@{3P60@b?Ey+Usw1+aq2%7R0MA9^i)Sr{F&r4 zM>kvck3sd&pnrc>X@?lHy{Sq#a@ObQ8PosKY&{FM9qnUl{cyC8n-~}ipqbhqqWhmT zoCEddo`2A`RuBKA0I4YRz5SqCpuiLmNk&qqsxMnIk&To=Sc1XK-EAnke?80w-XupU zoQilF;?r$SJ{v`CxCm%xa8eBZEfvi;#lkCo5zrk(Og1fMtrucod!-=Qhk0}t7SlYo z=?UD^6GMVT*f}kF@L|WzNZaljm@r)KbN RBJ7Y+|EsjJij~z^2G@2lOjV(uqjzBqk6tO} zMv^~^BJ-&ZaUVIrRI5Vg?c^4yz15lk)k)XwjEtS6F`zZeu>R)-SZ+}iqw&;*Zmx|z zo!Y2VAAyY5l$-iThF(J3m&z!S6`KKYBKF!c(2@2b#;b^+B4oy%z=yj*&U*E$^BSm? zH85L3wftAa90?DDbU(5#0jaFOZ-MZGC@ZX;W>)uEf^Yt=k>cFA#5_cpB{K|mJm!*b z^mYPc_K@wF5V)s+y4b&JX3a+bdc;V|W{rc)G6{jHvV0)kVbBXDY!LPVr_=&!9uTI~ zj!aIHV#x`xqdgy=+58gai)bHuhoa5$KpNrQ%YtISI6&wuh+H37+pf%n+pg&TA6>#g zcEPe XWHz9VZQv$GHN7Et+;5uRDW|jd%zK8~~7+l&dPnHh%$d! avzv> zf#zsJ59}WTHBk0k2^j0$_$XEzhGfXNNpj-XQ}6Bqi7{ArI$)#&2lQs!TX5FA2VbD~ zN*d_cxOy_phF;Ar3_)@s1!7rmh< j@Y_TvG81)?#_dVWTY zhjkl#Hi|{A18;danqt;UAM5`HDOFD^9DfLS4(RqB*)Z#Bu=$|nyXy825N*NX7)DYL zf2R?b4-7OErGqIk?*POS8*CL%gC5OVMrr+X)R$pW$^x8lDOV4PqGs#$`S~Y6Aj1yt zfFu?wW`K;@q+)Ip_6N__oTg7zK>p23GAMQ7CP-{ @ZI12-uL^PhE9LCqJg_z8&JZc_3g8XGQvPstBtXdECNQupvkViMmGu%1 z5X+0e(@K264mNm9Ah{Nx39!o`VvVlHM&tkti7Y78iy&E}rv+;I{eU R5(YCXjmajB)$L_@3vZ8wPF#Bu#bhLO|DiKz_3XswqapxGlH#tziL7LtAB;KoqR8Q2 z_otpGK>9Ue>|3ui`mEO;d!mE+_6e?`^_$L+ito@HmwAnxymg?VteL_UbU5|EwhYYv zjvW><; hbdTKY@lZ+0M5X4rI`CCs# zj1WQ=9xD5R_8bLJ)l+KOA06GPbu0@*TLn;^?do2>f{4&vNhpkpYoLUxQGJ%_D3 ~6P-!DUw>Qo)>jui+b3^HFLJHG2q?g9?`uD7S-ShPN#Q^1F7Z$hCV8#eB z{(#KGfwU-?5ReqqgIE34^`Ih`@`Cakp6KW!S~7j1P{b#{aCY9W7TCH8x0Sk9x<6d{ z$9w)%s#pYOwc5Z=FggL-UL989k$z`@6g$vMxwn2l4$!FDAf2Qi@U)0WQgj6*jNlv+ zyd`JMbnJVDG=T2kR4VVTWv^6gNp~ng6 e zoaFY>Q?#|^009^YSw}_lbbC@4H+zO)4rt(`HDsS9>mG6f9(fvCmM_B-8D~FSEBNKNl(@y9$W)hK2%Gc()_Cy2ZWYUY zNmF50u}OFmwwcHIHeC|7*-uT($Mafnc$@L=VJI4wpE4eQdB>F2;vgLNgEdhVMA*Ds z-pe&Xr$87XrD@gv<=EGh`-v*bD+l5=eW-(^+cFW*nxkGvLJ JoqbNUiW!B~@n6Z~Yu9$=rH?ul7UspbP$^ zSov-gaiWtD{XgWrc|6tY`#!ppMop`dWU3`YgivG%y9_1sEaNush|Dv|E-S(=a|lV4 znKF+dnQ1U&s%6X=%e0K=eip0U{(Qfm^Lw51$NA^{vtO^a_j-o=neOMgulu^PfSZ}x zIb9T(-fsWi^Yk~LdbF3seA?l67N)(;EAMHXi?byC3C#3#Q`&vrM_e`(AF`Z|?+}Fd zu`fL5KEGdZ0lc22* z6R<|bwgq-qC0BDoa%rdH^XD`R@&26n1prW@$tOPF$D*VA&lw0Dwo6^Ws2L`}`d2 zrI4fqo+9F|3jiLZoJdVynSKteJ_ANE5O>S`;Xpmk#Y%G3Q_?CVT?C8Q$JmzRmU?mT zd%Z)3^YZBo#(gl^-jW_gw@X(SrwPpX2avmJdxx+_yVwvXsu+y(ldRr0aL1hgX}4tc zk$1+8E5r00*q^c%vb|VRB+^A;^mOv zh8^z>=Y`1N7|)B1gbi2@Ic`|3Iwkb%;U|iE`L1(8DyBW;UkzjpUZ>mLcNV)4fGa=l z#{+8>@<;n+s-v0lZ5Z1L7lraMIcg22QOA($pk5NbQMjy5VrQY$IJ^|wPb{|u#43v{ z8z4U7VY2VX7hiz6DxAI3nigY2w~NDEraG4yZ(#m#RSYxp)b QVC2 w!>hazcUq1`2ta%tvz`!xXm>F zaY9W1kS$<%EgPzQnSr5X>87M83wB)-u{$W75I-E+u~a%^9pX(lP49YLa&V*hDOX{D ziQUv(@g0J4qUyUp {w7jkF>h)`m1OH-i}8W`KgrR+qjw<52_06p8jk!W@Y zb}xu6@>Rcz=7-m2@WF$HpGXCx)60?9-udd3R^8Ln!7*dOe6%i8>&iA%WGn!C)L+by zkLw&T0f&eueV)m=$ERcklrCA(zZewi2wKUNyBq=x4uzPRfHRL)WU5^;j~Fz~CoKvm zm$Ku;8K))BEZmOL9TS(TF2>?JFprAO_$W_&kjdhEelr^QBx1pHaCo7%Qx@g&ic>fE zNCY7B=-K8mPAk>j&!v&9{>Y4tZddU352h-;T|zj`M5uep+I8MBSCRL8UF}1_fO%OT z$H+W%&+{;Qm-;k!ygy-}j7ugsxU}fD&%WC^u9LQynT?0exiN1lGost6 Oic_pJz+CgYEtm?+>lF3zFQpHJ>PgUumY?mSX+|Mf@bC!*Y;!OMem z?z0;s%vU~&D86XnoN^$#Ns6Aqa>ojf1_NV q;|sX?g$=Zh(T z-_bB7E={S%nNBP`;Ibmexg zcD;D(aI2f{UzgNdHl~*@v<1_O&xRDMi(xQV+^AY#ml~S(-JC;C?0L8@{rOuj !~pk62A z@1N<`oZ0^e{cBMZ(F`7$>ipVb6}u5xfvP4=u9eQsR7^Nu;MFL+CLZ33VCF%>He`&J zaRyS)9DJ84)$AQ%y>KiRKX7?E5I0e)!rI6VTmj>^BnqQhn7-9XurOVze^Efpi?ezr zLR_tLk!fnGmA55ajO&7YOD$TkpaqJ?-IL-yO+lH5%I7^a`UsVOlmLr6e?V}i@g|1| zt=f!jf_N~_UN$Ii>9~?WVUvs(Yw(!Kl`o#mka}^OrT<*0ylrl+> bor&Nuh+$?)ZP16b2@sZY(Wpp&%z3(e&z(K_!q zFZ*}Q7egvduG%gw1&T(OUa)BY8UU8t#YePgx%Do17Shi*ynHn;(OijbdNMw|#-CQF ze=h%c`LgR|{QiC=IM}wq!M2Se7aY9y9or~wA (SzODXs B~^K;#c2c%}R<2_96rcCNu z7Jxf}sn@tihs8Nv_q_3q5Se?xI4a76Eh`tOTj;r(_2KD_ =|M z;AZFyH^XtkdrdO8`z}I$t4}o>m2(`dj!bPY6F6-K-&-HX)CMsTq9_Hy+#ZgzSD3N= zc!JG9>^UB~MVC66dpSN+yC8lwuwq4xk&&tnc(<`JYnvJ7A);J1MhwSft4czaEfZb2 zUP@ 6J(C@tg #<#VVFf z`E=!7=6<#|A^X($M&E0mup#d7>`4(|qIojGUifS<#b3l|mP-uIB;e_pt`$+w>5#pT zg=0l{B(Q%jB%yia#guKg?T^QqzE9_gZ!cOAT_guHq7%FTHkDrD3TF~}dQ5FFzD>E4 zIV%sS#P-nN=WD54J)%O8 E~zLTcq(6Bb B2iNiG)&uiL$*<(Uje%N@=*u&wKZim@1SAbrEy} zn4JTA23Z9kKo$jOUN^U(kkxwO=(7L>W|u}83xNntZHuyZ@)ec 2p)KZb%eLGwQBpk0iMq^r5)P=4Rhz>o$F^$qzw)T zE4qLAhzB8PhY~z>CIF}}8Vy@RD!pw-eF)&*+or;9<#oLXO)KL}ilqPaP=Z%0>Y<_D zwg8ZCdO~7x5`c@l76cO0t{YCmnR6jqpic%d%)Pde3!vnz>E%F)Km(8>5dacw>-KE( z>x<>yuT_VJA+6?evBvCM7?&YOxUuKn1*r8|xVPWz`(CW?MI1^T9z?Kf&8ISP{V5kG z9YDsr)|YWE{$ArO52MqUGyMmclAN5l9c*{yBfhe++2iy+eY;Tv;rJoBvdSSI9UIpM z9lS5os^OquC7{;@7?&z`y<-H)^5q@YxthhzRP?L{JPXlFBi`#HkQLF#Thu=ywpiH4 zgCkN6#cdGdYQZpb sY!m5vQ$Fm7vI(zSDT7N;lxsiwK5?ZF5ayk8 zWnFjX5scoXCD^o9TyIgQf4SZE!!@>=Ka*nxZWu!{86gE@nUSs2JEoC6I^*cZGoZCv zX~W#}orxV3vFqF1S~@tBrNj<9H0TUp*A>{%wXLB}6yru25-443ro(%!BYK@*c>E?> z0}JyPs6Zt069Y_=cHIfF9)&EG4F9_*`Su9}6|(u@iA%>Y$&2HoPgVJ9LwU9RQ$h^n ze|b=i*mzID5)16RJ wqLQ5V^fnwp7FOj>=%^?f&Wf@r>diFXfU3y(zw% zzb)UTDKVT2SV~h|Pp<_jVLn1S=lIhR6AzH8&X?IQ%^%u10SJFl*7b4kwM<*k5iWf^ z58JSZ=^T6AF0mgz@|lZ`=3@LvO0EFtx)*h7hYtAjcz(amOxU+qgVvjuy>32agBV>- zj2_pUWn3(%9i6X4s!#L4bza*sRGK!xS6L78@=S$&1On)+d%d=<_sA$5exjUiuvpX~ z1+G_j`C4}Y?1rktpT-#yr_qCNiefyxh!(nk4&J>-V=UFuCKJ+FG;dVO3bDyFL979J z3!lzp*@=f4ef{w`qQvB=oJopZvPkb4#`zSP!1Wa%n`W3~jrxm=Xl~=Z(k)ZG?}fOj zZ_ KLw& zGSU*zDR}A2w(vOggksxK+~+t~jxj 5wmMx zK100jDK-@n%qHjcXUl+~uz)u$ysT`O*;XN4dZztS%Urz@%l4P6gUx^M+dl={fqo08 zLApDn{8byQeKrVOUu}bQpi#`<+9Fr$&!!j=K8lJlrPpaL92*Y>_2*F_Ztn|kHD7*H zMx6JcH$D8y )+$>H9TH3;S55wL4zlvD0hbNDy~e!;WQKBO^ndFeBVQN zY-2TU;|OFgejW{#3eNme%u$ Z_pE RyE=blBaiIss2P%Y?Kln-HojDs&Z%@tgpF>ru=n;2jK_c(*~fR6XJ>v)>- z ;HwVKl3|`cd)m81tPpg@ls~1pC(CcLlx;33U57sB6E9 zax_PmJWdb5xwYOXlP;j+_Hi-x&5 MH!ynUIdaQ_MhTdn6}IIdw5uf z1($KAjtV(T`KaFwt4ojAuLYRZV>Y;CDvf&e(!Ff3Y{$hIS+u?zt2aG>_#o%JY7|YH z=v=} j@6J!7iE{ dLn zP!3;}Iwy{N5}8YE{&Dz%v8U$Qd;W|%bgEXn$M&2}1|9W?jQDcfXvAz!WytSpV)Y@x zjJM|MBt}q1*|f)q2+D91d^+>c{Grp6!9)Y%Sf7VS(!`QDoEM;W6MNuK) 06 z36 znQxqjHKeA~@Vjn0T0% f1aBs OM)`Tpo_Q)b-HAV_?AXF@zz|yu_u*0tzQHB5ugQ1FEzr~% z7_!;)*9i`r7 SRedt+yi;cR1peF3E8yGBQ{1N(|1iw*7l zECsatN3(}r2U;>Uzn#`P!`$0q3 `_yBMVyWoWw0`_z@tn-WA|^y5_BaIJ;#k>dLf&ciAET2VA;!{RWC=22ZOQ?8-I zz!(b UGV-3}ywXP8S_bQ~TB_nWbWS@^#mZHs_>9@oPca%7$QbX>fB*Yw(WW=Cu2hHC;&- zH?#g|Gu9Bx+~u3Gw2*IQwEjx7^kzd4zHWYalCgP!@3|}N(jsG-0 qK=;y$fHG z>_Ckpn0xVWKhe{(?oA9+xBZgpb?=2ha`Cc$%;` a%odX*tG8oovrvGH^CD7mw=RGd@yTFYJ^iH~i*zm?Yt;#(Q4N8_wcd zQ(3n+=uwER9gQT-5xj$8R@#@eLng~je$l0W-d^VN6$*m+Zf2v`NXV`9T+kwZN*25D zq+N SKa${y1=G?UoH{YDV1Ag^tT@6&(_sEQ z9mV)zt(Bm#m`;bPHtmp7csw`CEM4%Y;wia3ceBqUpb55@X)eF!l^t$<9RZ6mG~s9M ztY*p_TL`O!mSE7Qay(xGD~iQ#m*iCF%M}7#qOBeJ1NHA+8ebR6vvP1A5$SiG+xcQ* zy}VJ!#|yGUt8<^ur?u(qoz1oQDsU-Js{Pv5Qm5o})wRuU;R`fR_Dy$97 f?>e&Wq>* 2Sf8;eFduGvejxlh!G&KLSIa5}CX`OrMRSL2H|O(M2+htHb@t!sayEc2Q0{1O&x z+W;M_(U9_UAR#kFS0?MyC)n?5U~u}Z_FyO86C6zekA_>hal}S*=_`#LSa9hSdmNfP z!9@==7b8SHve{JxcT*8Jg(A7~XuK4 -hze8-SzE~Ac%`M>TqH)}%b06C5 z+ll#l#C&7dSR)q!ODuYAknz3}Zv6h8E25rQZDU$%3%^41a^;zLwK_}=((%y9LAWyI zuz!7VW4%97Pyk(p={V19%uqAH50+X5@5CDH;yF!^jyfnNCqNeNDaOOqPG&DLQ$V z+*&I^;p9#^ufC~oeBNEJM;CttzEi&!!pQk%J+W;pfNGNurPa;nO&PUCpM4%!c2Op? zwaK7@z&{;5&quby!5y&EJ0GM6L7K$!Z*_`0_d^Qs82j_c`NHL~RGCca=JY(Gwo}A) zYn>LR7qgC?#3-7RL(Iy=8>9PJ{TFoyU8hP~=8E3mcN5y6>m8NWc~Lxi&@_PF;El6- zkPtCPM57ESCTfhCRyvi>g;kpFJe^-M#C3gxiX-}%S!6`Q7q|h$DIa%=DDFv`BbpwZ z(})Man9k<*l&RNV;zZh?@QaZ-zt5TVN4$b9)J|t`<=fzi8iw-J^|Rp}x@P-whgD&_ zNut{L>oY%Sn_tSvkOeZbHw$`E)?f3K&6m8FlfC^Bsf7;X{CkG|UEM~@Q9Z8x9wVNf zkFrc28FyT2LH>UBVxN00ON1`p39~82_vPP#&Lg1zcut$Hn16`8CIRzwpQnQGcX%@h z{;p_yfcCa2E@!@7$6z{Z!u?V3+~7e*A}PR`k{INV?zlQZ4PQ_8pZifVa>=G)Y4&Mh zjSFAick|baoyNiMWz=RLCE(57^sJ6zxl|TSy>O|>DK^S_T#Q5fDh1%VZs@#OLte%W z9wM%ZuktEyWZgKubB}F@yH541jki4zAeF*oD@uA;ejXQzs|b~dg+1M;-emXPux)2+ z>lU9&F|vGDffBDe_qmQJv+Us9uGP9d3J6n3KqbpVDR4cR*>!KVhG*lQs5p_zZp!HW zh)em8dpy;(Vhh=AJnJEuw_a~I?&E1Cl$Bl8%6XrSE@)idSzWM6VK?rZ&DJqFfUa+H z8&7GW>LAi58ZBpwYwD9zV%4e}KkEE!aHAhsJY-5$bGq~d5*jkiFR{gG+Z=!YgJmVD z1S;y`E2Ae=!40nf$YW> H}vGxaSF!J&LQ9|do0s0(KFf NF{G&r!GSLty!o z!t#kdPM1wn?yVqrzkf8w$lw?-XdRoAc)_kkdo@8mq~ZxB$8@pE>U~e>Q=r$iW*H&Y z^0SI9oW->x3J-d^_{RCCX-3Jrh+~UAUmjw|Nz5NY+4`Lh4@{OGK{`Okdmw7L(6NA& z#_rtWY!I<6-?lM%haeI2;hpvV<02={bF{JFcxDu~J!tpc%k+mRckFuh?6C16$sN1S z-#vVYQW@iSo_g0IUJUb19SfmDA{-j2hmPu0x1Ol*E{%SZ8Qmmio_Q&a*rl#9_w-HK zyk|@CRN=_#Y`XKU*T$xg#)o+p(L3E}Tf+BP9wCMMoIo{0GXTozC+=BBd!jdl8nm$@ zC8?3-QaR(#Qd1#yR2d&dYPtCPL~Fm_F%#|g&@~6PhHk#KeZ{lWn(Ms{^DUMyE{fUC zwxw(DPtqjzJ&!{YOM1T>##YL9Nl0boT&^r~8XGL<9d}VR46CdkjGmqy`D-=GsE>{A z<49r|5tG*Vadtif9?FYU&Ja!m4ihcV^&J8$=i$!KPdo2&aXc+ox|qw3?X58*A+l}Y zOks#=YI@!mCCfgZYC@Tq&~0^_9ra9nuk=R-g>(F5#SX&_$CDienBV6&53*IgoNE*$ zns^5yqKS{iSrb8Fbp{3Y9gXOrY46o{BIbzFpzT1ohY9=0IpV?3X?q5FrUq<5!SwAC z;@A;}Rih_gJXK^l0oNhUUYd^`dV^w7V$OPf<93aAIGXxahXrfV+g8EqY=g`d#qu@t z*(TZIiJa>(cJ*g$SGxPXrkr0O#+gUKH-|3ep$#RwmXWU8Dz~YJFw6iG6o_y#m5}%K z%%|Q(2zW5HI`j5jBHGAB4W|?Oa9XBWe8k~mzF@a-*XupcHr{c&tx7xU`@z RZv zAqrTX=whtTsoiPm)AdE`*;XRUO6^?>!jb*M6l_3